Nahtlose Web-to-Game-Integration
So funktioniert's
Die nahtlose Web-to-Game-Integration ermöglicht es Ihnen, zu konfigurieren, welche Daten von Ihrer Website an das Spiel in den URL-Parametern gesendet werden. Sie können den Autorisierungstoken eines Nutzers, Marketingkampagnendaten oder andere Informationen übertragen.
Bei der Implementierung einer nahtlosen Web-to-Game-Integration gibt es folgende Nutzerszenarien:
- Klick auf einen Link zum Download des Startprogramm-Installers von der Website.
- Klick auf einen Link auf der Website, um zum Startprogramm zu gelangen.
- Starten des Spiels aus dem Startprogramm heraus.
- Der Nutzer öffnet die Website.
- Der Nutzer klickt auf den Download-Link.
- Der Download des Startprogramm-Installers beginnt, der Download-Link enthält zudem ein Einmalpasswort.
- Der Nutzer installiert das Startprogramm.
- Das Startprogramm empfängt den Wert des Parameters
common_payloadaus dem Einmalpasswort. - Der Nutzer klickt im Startprogramm auf Spielen.
- Das Startprogramm prüft, ob der Parameter
common_payloadvorhanden und gültig ist:- Ist das Ergebnis der Prüfung positiv, startet das Startprogramm das Spiel mit den Argumenten aus dem Parameter
common_payload. - Bei einem negativen Prüfergebnis:
- Wenn im Kundenportal unter “Name der ausführbaren Datei” eine Website-URL angegeben ist, leitet das Startprogramm den Nutzer zu dieser Adresse weiter.
- Ist keine URL angegeben, startet das Startprogramm das Spiel ohne das Argument
common_payload.
- Ist das Ergebnis der Prüfung positiv, startet das Startprogramm das Spiel mit den Argumenten aus dem Parameter
- Der Nutzer öffnet die Website.
- Der Nutzer folgt dem Link zum Launcher-Installer.
- Der Nutzer lädt den Launcher-Installer mit dem Link herunter, der ein Einmalpasswort enthält.
- Der Nutzer installiert den Launcher.
- Der Launcher empfängt den Wert des Parameters
common_payloadüber das Einmalpasswort. - Der Nutzer klickt im Launcher auf Spielen.
- Der Launcher prüft das Vorhandensein und die Gültigkeit des Parameters
common_payload:- Wenn die Prüfung erfolgreich ist, startet der Launcher das Spiel mit den Argumenten, die aus dem Parameter
common_payloaderhalten wurden. - Wenn die Prüfung nicht erfolgreich ist:
- Wenn die Website-URL im Konto innerhalb des Namens der ausführbaren Datei konfiguriert ist, leitet der Launcher den Nutzer zu dieser Adresse weiter.
- Wenn die Website-URL im Konto innerhalb des Namens der ausführbaren Datei nicht konfiguriert ist — startet der Launcher das Spiel ohne das Argument
common_payload.
- Wenn die Prüfung erfolgreich ist, startet der Launcher das Spiel mit den Argumenten, die aus dem Parameter
- Der Nutzer öffnet die Website.
- Der Nutzer klickt auf den Link.
- Das Startprogramm speichert die in der URL enthaltenen Werte der Parameter
payload,common_payloadundexpires_jn. - Der Nutzer klickt im Startprogramm auf Spielen.
- Das Startprogramm prüft, ob die Parameter
payloadundcommon_payloadvorhanden und gültig sind:- Ist das Ergebnis der Prüfung positiv, startet das Startprogramm das Spiel mit den Argumenten aus den Parametern
payloadundcommon_payload. - Bei einem negativen Prüfergebnis:
- Wenn im Kundenportal unter “Name der ausführbaren Datei” eine Website-URL angegeben ist, leitet das Startprogramm den Nutzer zu dieser Adresse weiter.
- Ist keine URL angegeben, startet das Startprogramm das Spiel ohne die Argumente
payloadundcommon_payload.
- Ist das Ergebnis der Prüfung positiv, startet das Startprogramm das Spiel mit den Argumenten aus den Parametern
- Der Nutzer öffnet die Website.
- Der Nutzer klickt auf einen Link zum Launcher.
- Der Launcher speichert die Werte der Parameter
payload,common_payloadundexpires_jnaus der URL. - Der Nutzer klickt im Launcher auf Spielen.
- Der Launcher prüft das Vorhandensein und die Gültigkeit der Parameter
payloadundcommon_payload:- Wenn die Prüfung erfolgreich ist, startet der Launcher das Spiel mit den Argumenten, die aus den Parametern
payloadundcommon_payloaderhalten wurden. - Wenn die Prüfung nicht erfolgreich ist:
- Wenn die Website-URL im Konto innerhalb des Namens der ausführbaren Datei konfiguriert ist, leitet der Launcher den Nutzer zu dieser Adresse weiter.
- Wenn die Website-URL im Konto innerhalb des Namens der ausführbaren Datei nicht konfiguriert ist — startet der Launcher das Spiel ohne die Argumente
payloadundcommon_payload.
- Wenn die Prüfung erfolgreich ist, startet der Launcher das Spiel mit den Argumenten, die aus den Parametern
- Der Nutzer öffnet das Startprogramm.
- Der Nutzer klickt im Startprogramm auf Spielen.
- Das Startprogramm prüft, ob die Parameter
payloadundcommon_payloadvorhanden und gültig sind:- Ist das Ergebnis der Prüfung positiv, startet das Startprogramm das Spiel mit den Argumenten aus den Parametern
payloadundcommon_payload. - Bei einem negativen Prüfergebnis:
- Wenn im Kundenportal unter “Name der ausführbaren Datei” eine Website-URL angegeben ist, leitet das Startprogramm den Nutzer zu dieser Adresse weiter.
- Ist keine URL angegeben, startet das Startprogramm das Spiel ohne die Argumente
payloadundcommon_payload.
- Ist das Ergebnis der Prüfung positiv, startet das Startprogramm das Spiel mit den Argumenten aus den Parametern
- Der Nutzer öffnet den Launcher.
- Der Nutzer klickt im Launcher auf Spielen.
- Der Launcher prüft das Vorhandensein und die Gültigkeit der Parameter
payloadundcommon_payload:- Wenn die Prüfung erfolgreich ist, startet der Launcher das Spiel mit den Argumenten, die aus den Parametern
payloadundcommon_payloaderhalten wurden. - Wenn die Prüfung nicht erfolgreich ist:
- Wenn die Website-URL im Konto innerhalb des Namens der ausführbaren Datei konfiguriert ist, leitet der Launcher den Nutzer zu dieser Adresse weiter.
- Wenn die Website-URL im Konto innerhalb des Namens der ausführbaren Datei nicht konfiguriert ist, leitet der Launcher den Nutzer zu dieser Adresse weiter — der Launcher startet das Spiel ohne die Argumente
payloadundcommon_payload.
- Wenn die Prüfung erfolgreich ist, startet der Launcher das Spiel mit den Argumenten, die aus den Parametern
Wie komme ich dazu
- Konfigurieren Sie die Einstellungen im Kundenportal.
- Fügen Sie der Website einen Link hinzu.
- Implementieren Sie die Verarbeitung der im Payload-Parameter empfangenen Daten aufseiten des Spiels.
Einstellungen im Kundenportal konfigurieren
- Öffnen Sie Ihr Projekt im Kundenportal, und navigieren Sie zum Menüpunkt Distribution > Launcher.
- Wählen Sie im Dashboard den gewünschten Launcher aus, und klicken Sie auf Launcher bearbeiten.
- Scrollen Sie zum Abschnitt Spiele, und klicken Sie rechts neben dem gewünschten Spiel auf Einrichten.
- Wählen Sie die Option Builds.
- Wechseln Sie zur Registerkarte Ausführbare Dateien.
- Geben Sie für jedes Betriebssystem im Feld Name der ausführbaren Datei das Argument
--x_payload_urlan. Übermitteln Sie als Argumentwert die URL der Website, auf der sich der Link bzw. die Schaltfläche befindet. Der Wert sollte mit Base64 kodiert sein.
- Konfigurieren Sie die Einstellungen in Ihrem Konto.
- Fügen Sie Ihrer Website einen Link hinzu.
- Implementieren Sie die Verarbeitung der im Payload-Parameter empfangenen Daten auf der Spielseite.
Konfiguration der Einstellungen im Konto
- Öffnen Sie Ihr Projekt im Konto und gehen Sie zum Abschnitt Distribution > Launcher.
- Finden Sie den Launcher im Dashboard und klicken Sie auf Launcher bearbeiten.
- Im Abschnitt Spiele klicken Sie rechts neben Ihrem Spiel auf Einrichten.
- Gehen Sie zum Abschnitt Builds.
- Gehen Sie zur Registerkarte Ausführbare Dateien.
- Fügen Sie das Argument
--x_payload_urlzum Feld Name der ausführbaren Datei für jedes Betriebssystem hinzu. Im Argumentwert übergeben Sie die URL der Website, auf der sich der Link oder die Schaltfläche befindet. Der Wert sollte mit Base64 kodiert sein.
game.exe und die URL der Spiel-Website http://example.com/start_play, dann geben Sie game.exe –x_payload_url aHR0cDovL2V4YW1wbGUuY29tL3N0YXJ0X3BsYXk= im Feld Name der ausführbaren Datei ein.Das Argument –x_payload_url wird dazu verwendet, den Benutzer zur Seite des Spiels weiterzuleiten, aber wird beim Spielstart nicht zur ausführbaren Spieldatei übermittelt.
Nachdem Sie die Einstellung vorgenommen haben, können die Nutzer das Spiel nicht mehr starten, ohne zuvor Daten von der Spiel-Website erhalten zu haben. Fehlen die Daten, wird der Nutzer zur Spiel-Website weitergeleitet, um die Daten abzurufen.
Website einen Link hinzufügen
Platzieren Sie einen Link oder eine Schaltfläche auf Ihrer Website, über den/die die URL im Format xl-<launcher-id>://game/<game-id>?payload=<payload>&common_payload=<common_payload>&expires_in=<expires_in> geöffnet wird, wobei:
<launcher-id>und<game-id>die Kennungen des Startprogramms und des Spiels sind. Beide finden Sie in der URL im Kundenportal:https://publisher.xsolla.com/<merchant-id>/projects/<project-id>/new-launcher/<launcher-id>/game/<game-id>.<payload>die an das Spiel zu übermittelnden Daten sind.<common_payload>die an das Startprogramm zu übermittelnden Nutzerdaten sind, die für alle Spiele gleich sind.<expires_in>die Verfallszeit (angegeben in Millisekunden in Unixzeit) der in den Parameternpayloadundcommon_payloadübermittelten Daten ist.
xl-<launcher-id>://game/<game-id>?payload=<payload>&common_payload=<common_payload>&expires_in=<expires_in> öffnet, wobei:<launcher-id>und<game-id>— Kennungen des Launchers und des Spiels sind, die Sie in der URL Ihres Kontos finden:https://xsolla.com/for/web-games/account/<merchant-id>/projects/<project-id>/new-launcher/<launcher-id>/game/<game-id>.<payload>— die Daten sind, die an das Spiel übermittelt werden müssen.<common_payload>— die Nutzerdaten sind, die an den Launcher übermittelt werden müssen und die für alle Spiele gleich sind.<expires_in>— die Verfallszeit der in den Parameternpayloadundcommon_payloadübermittelten Daten im Unixzeit-Format in Millisekunden ist. \n
- javascript
1function getAuthToken() {
2 return 'YOUR DATA HERE';
3}
4
5function getDeeplink(launcherID, gameID) {
6 const encodedPayload = btoa(getAuthToken());
7 const expiresIn = new Date();
8 expiresIn.setHours(expiresIn.getHours() + 1); // Payload data will be fresh for 1 hour
9 return `xl-${launcherID}://game/${gameID}?payload=${encodedPayload}&expires_in=${expiresIn.getTime()}`;
10}
11
12// Put that `href` to button or link address
13const href = getDeeplink(123, 4567);
Integration aufseiten des Spiels
Das Startprogramm übermittelt die im Parameter payload empfangenen Daten als Wert des Befehlszeilenarguments –xsolla-payload, wie im folgenden Beispiel gezeigt. Zudem prüft es, ob die im Parameter common_payload übermittelten Daten vorhanden und gültig sind und übermittelt sie als Wert des Befehlszeilenarguments –xsolla-common-payload, wie im folgenden Beispiel gezeigt.
Beispiel für den Start eines Spiels, wenn die Daten mit Base64 verschlüsselt sind:
- bash
1game.exe ---xsolla-payload <payload> --xsolla-common-payload <common_payload> WU9VUiBEQVRBIEhFUkU=
Haben Sie einen Tippfehler oder einen anderen Textfehler gefunden? Wählen Sie den Text aus und drücken Sie Strg+Eingabe.