Mobil: Was sind Android Kampagnenrückrufe und wie werden sie verwendet?
Kurzübersicht
Ab WalkMe Mobile SDK Version 1.6.0 unterstützt WalkMe Mobile SDK Kampagnenrückrufe.
Rückrufe sind eine programmatische Möglichkeit für eine App, sich für WalkMe-Kampagnenereignisse zu registrieren. Durch die Implementierung der Kampagnenrückruf-Schnittstelle können Apps die über die Rückruf-Objekte übertragenen Daten (einschließlich Kampagnen- und Benutzerinformationen) verwenden und sie für die Zwecke der App nutzen, z. B. App- oder Benutzereinstellungen gemäß Benutzerinteraktion mit der Kampagne.
Anwendungsfälle
Kampagnenrückrufe können für Folgendes und vieles mehr verwendet werden:
- Das Onboarding von Benutzern von jedem Analytics-System verfolgen
- Generieren von Chancen in einem CRM basierend auf dem Benutzerengagement mit WalkMe Shoutout - z. B. „Sind Sie an einer kostenlosen Demo interessiert? Ja / Nein“
- Integrieren in bestehende Support-Systeme, um die/den WalkThru-Nutzung/-Abschluss mit den wichtigsten Support-Ticket-Themen zu verfolgen und zu vergleichen
Nachfolgend finden Sie eine Beschreibung aller erforderlichen Schritte, um Kampagnenrückrufe zu implementieren.
Schritte Zur Implementierung Von Kampagnenrückrufen
Um Kampagnen-Callbacks registrieren zu können, implementieren Sie zuerst dieser Schnittstelle:
/** * Interface definition for a callback to be invoked in Campaign actions. */ public interface WMCampaignInfoListener { /** * Called after campaign was dismissed. * * @param campaignInfo The dismissed campaign info. */ void onCampaignDismissed(WMCampaignInfo campaignInfo); }
Nach der Implementierung der Schnittstelle verwenden Sie die setCampaignInfoListener
Methode, um sich für die Campaign Callback Events zu registrieren:
/** * Register a listener to campaign events * *@param campaignInfoListener The listener * */ public static void setCampaignInfoListener(WMCampaignInfoListener campaignInfoListener)
Das Callback-Rückgabeobjekt ist von der WMCampaignInfo
Klasse, die die folgenden Informationen enthält:
Artikel | Abgerufen von | Beschreibung |
Kampagne CTA | getCampaignCta() |
Die Kampagne CTA, mit der der App-Benutzer interagiert hat. Für alle CTAs außer der benutzerdefinierten lautet die zurückgegebene CTA: |
Kampagnen-ID | getCampaignId() | Die eindeutige ID, die der Kampagne zugewiesen ist |
Kampagnen-CTA-ID | getCampaignCtaId() | Die eindeutige ID für die Kampagne CTA |
User Data (Benutzerdaten) | getUserData() | Ein Objekt, das Informationen über den Benutzer hält, der mit der Kampagne interagiert. Sehen Sie die vollständige Beschreibung des Objekts unten. |
Kampagnendaten | getCampaignData() | Ein Platzhalterobjekt, das für die mögliche zukünftige Verwendung zusätzlicher Daten hinzugefügt wird, die an die Kampagne angehängt werden. Hier werden Daten zum Einreichen von Umfragen eingetragen. |
Dies ist die Struktur für das WMCampaignInfo
Objekt:
public class WMCampaignInfo { public String getCampaignCta() public String getCampaignId() public String getCampaignCtaId() public WMUserData getUserData() public Map<String, Object> getCampaignData() }
Wie oben erwähnt, WMCampaignInfo
enthält es das Objekt 1WMUserData
, das unten beschrieben wird:
Artikel | Abgerufen von | Beschreibung |
Öffentliche Benutzerattribute | getUserAttributesMap() | Alle öffentlichen Benutzerattribute die für den App-Benutzer in dem Moment festgelegt wurden, in dem der Benutzer mit der Kampagne interagiert. Die Liste enthält immer den Attributschlüssel und seinen Wert, z. B. ${ "lead_id" : "12345" , "account_type" : "family"} |
Private Benutzerattribute | getPrivateUserAttributes() | Alle privaten Benutzerattribute die für den App-Benutzer in dem Moment festgelegt wurden, in dem der Benutzer mit der Kampagne interagiert. Die Liste enthält immer den Attributschlüssel und seinen Wert, z. B. ${ "lead_id" : "12345" , "account_type" : "family"} |
Zeitstempel der Nutzererstellung | getUserCreationTimestamp() | Der Zeitstempel, in dem der Benutzer zuerst von WalkMe identifiziert wurde |
Sitzungsdauer | getSessionDuration() | Wie lange war die Benutzersitzung im Moment der Durchführung der Kampagneninteraktion |
Android-Version | getDeviceVersion() | Die Betriebssystemversion des Benutzers |
Eindeutige Geräte-ID | getDeviceId() | Die einzigartige Geräte-ID |
Gerätemodell | getDeviceModel() | Das Gerätemodell des Benutzers |
Geräteausrichtung | getDeviceOrientation() | Die Ausrichtung der Geräte im Moment der Interaktion des Benutzers mit der Kampagne |
App-Version | getAppVersion() | Die App-Version, die der Benutzer verwendet |
App-Name | getAppName() | Der App-Name |
Standort | getLocale() | Die Lokalisierung des Geräts des Benutzers |
SDK-Version | getSdkVer() | Die in die App des Benutzers integrierte SDK-Version. |
Sitzungs-ID | getSessionId() | Die einzigartige Sitzungs-ID von WalkMe |
Neue Benutzeranzeige | getIsNewUser() | Ist dies das erste Mal, dass der Benutzer von WalkMe identifiziert wird (wahr / falsch) |
Status von Push-Nachrichten | getIsPushEnabled() | Hat der Benutzer Push-Benachrichtigung für die App aktiviert (wahr / falsch). Wenn die App keine Push-Benachrichtigungen enthält - ist der Wert „falsch“. |
Zeitzone des Geräts | getTimezone() | Die Zeitzone des Benutzers wie auf dem Gerät eingestellt. |
Netzwerk | getNetwork() | Der Netzwerktyp, den der Benutzer verwendet: WLAN / Cellular / Offline |
Nutzerbreitengrad | getLocationLat() | Platzhalter für mögliche Umsetzung des Breitengrads |
Nutzerbreitengrad | getLocationLong() | Platzhalter für mögliche Umsetzung des Breitengrads |
Systemname | getSystemName() | Der OS des Benutzers - in diesem Fall immer „Android“ |
Aktueller Zeitstempel des Benutzers | getTimestamp() | Der aktuelle Zeitstempel des Benutzers |
Dies ist die Struktur für das WMUserData
Objekt:
public class WMUserData { /** * User Attributes in current session. */ public Map<String, Object> getUserAttributesMap() /** * Private User Attributes in current session. */ public Map<String, Object> getPrivateUserAttributes() /** * Returns the User Creation Timestamp for this User. * * @return long Timestamp. */ public long getUserCreationTimestamp() /** * Returns the User Session Duration in second. * * @return double second. */ public double getSessionDuration() /** * Returns the Device Android version. * * @return String version number. */ public String getDeviceVersion() /** * Returns the Device unique id. * * @return String id. */ public String getDeviceId() /** * Returns the Device brand Model. * * @return String Model. */ public String getDeviceModel() /** * Returns the Device Orientation PRT_REG / LSL. * * @return String Orientation. */ public String getDeviceOrientation() /** * Returns the application version. * * @return String version. */ public String getAppVersion() /** * Returns the application Name. * * @return String Name. */ public String getAppName() /** * Returns the locale language for this instance of the Java Virtual Machine. * * @return String Name. */ public String getLocale() /** * Returns the walkme sdk version. * * @return String version. */ public String getSdkVer() /** * Returns the Session unique id. * * @return String id. */ public String getSessionId() /** * Returns if the user use the app for the first time. * * @return String boolean. */ public String getIsNewUser() /** * Returns if Push notification approved for user. * * @return String boolean. */ public String getIsPushEnabled() /** * Returns user device timezone. * * @return String timezone. */ public String getTimezone() /** * Returns user current network ( WIFI / 3G ) * * @return String network. */ public String getNetwork() /** * Returns user current location latitude if available * * @return String latitude. */ public String getLocationLat() /** * Returns user current location longitude if available * * @return String longitude. */ public String getLocationLong() /** * Returns user System Name (Android). * * @return String Android. */ public String getSystemName() /** * Returns the Current Timestamp for this User. * * @return String Timestamp. */ public String getTimestamp() }