Support
Welcome to WalkMe support

Please login in order to continue:

Work flows better with WalkMe
Work flows better with WalkMe.

モバイル:iOS Campaign Callbacksとは?どのように使用されているのでしょうか?

Last Updated 12月 21, 2022

概要

WalkMe Mobile SDKバージョン1.6.0の時点で、WalkMe Mobile SDKはCampaign Callbacksをサポートしています。

コールバックはWalkMeキャンペーンイベントに登録するアプリをプログラム的な方法です。 Campaign Callbacksインターフェイスを実装することで、アプリケーションはコールバックオブジェクトを介して転送されたデータ(Campaignおよびユーザー情報を含む)を使用し、その情報をWalkMeとは関係のない任意の分析またはCRMシステムに渡すなど、アプリケーションの目的に使用できます。または、キャンペーンとのユーザーのやり取りに応じて、アプリまたはユーザー設定を更新します。

ユースケース

Campaign Callbacksは、以下のとおりです:

  • オンボーディングを任意の分析システムから追跡する
  • WalkMe Shoutoutを使用したユーザーエンゲージメントに基づいてCRMで機会を創出する(「無料デモに興味がありますか? はい/いいえ」
  • サポートシステムと統合して、WalkThruの使用/完了をサポートトップのトピックと比較する

以下は、Campaign Callbacksを実装するために必要なすべての手順の説明です。

Campaign Callbacksの使用

Campaign Callbacksに登録するには、まずこのプロトコルを実装します:

/**
 * Interface definition for a callback to be invoked in Campaign actions.
 */
@protocol WMCampaignInfoDelegate <NSObject>

/**
 * Called after campaign was dismissed.
 *
 * @param campaignInfo The dismissed campaign info.
 */
- (void)campaignDidDismiss:(WMCampaignInfo *)campaignInfo;

@end

プロトコルを実装したら、メソsetCampaignInfoDelegateッドを使用してCampaign Callbacksイベントに登録する:

/**
 * Register a delegate to campaign events
 *
 *@param delegate The delegate
 *
 */
+ (void)setCampaignInfoDelegate:(id<WMCampaignInfoDelegate>)delegate;

コールバック戻りオブジェクトはWMCampaignInfo、次の情報を含むクラスです:

アイテム 取得先 説明
キャンペーンCTA campaginCta

アプリユーザーが操作したキャンペーンCTA。

カスタム以外のすべてのCTAの場合、返されるCTAは:
abbi://cta、例:abbi://okまたはabbi://never

キャンペーンID campaignId キャンペーンに割り当てられたユニークなID
キャンペーンCTA ID campaignCtaId キャンペーンCTAのユニークなID
User Data(ユーザーデータ) userData キャンペーンとインタラクションしたユーザーの情報を保持するオブジェクト。 以下のオブジェクトの説明を参照。
キャンペーンデータ campaignData キャンペーンに追加されたデータを将来的に使用するために追加されたプレースホルダーオブジェクト。 アンケート送信データはここに入力されます。
@interface WMCampaignInfo : NSObject

@property (nonatomic,strong) NSString* campaginCta;
@property (nonatomic,strong) NSString* campaignCtaId;
@property (nonatomic,strong) NSString* campaignId;
@property (nonatomic,strong) WMUserData* userData;
@property (nonatomic,strong) NSDictionary* campaignData;

@end

前述のように、には、次に説明するWMUserDataオブジェクトが含まれますWMCampaignInfo

アイテム 取得先 説明
パブリックユーザー属性 *userAttributes ユーザーがキャンペーンとインタラクションした瞬間に、アプリユーザーに設定されたすべてのパブリックユーザー属性。 リストには、属性キーとその値が常に含まれます。例: { "lead_id" : "12345" , "account_type" : "family"}
プライベートユーザー属性 *privateUserAttributes ユーザーがキャンペーンとインタラクションした瞬間に、アプリユーザーに設定されたすべてのプライベートユーザー属性。 リストには、属性キーとその値が常に含まれます。例: { "lead_id" : "12345" , "account_type" : "family"}
Session Duration(セッション期間) sessionDuration ユーザーがキャンペーンのインタラクションを行った時点のユーザーセッションの長さ
iOSバージョン systemVersion ユーザーのOSバージョン
デバイスユニークID deviceId デバイスユニークID
デバイスモデル deviceModel ユーザーのデバイスモデル
Device Orientation(デバイスの向き) deviceOrientation ユーザーがキャンペーンを操作した時点でのデバイスの向き
アプリバージョン appVersion ユーザーが使用しているアプリバージョン
アプリ名 appName アプリ名
Locale(ロケール) locale ユーザーのデバイスロケール
SDKバージョン sdkVer ユーザーが使用しているアプリと統合されたSDKバージョン
セッションID sessionId WalkMeによって生成されたユニークなセッションID
プッシュ通知ステータス isPushEnabled ユーザーがアプリのプッシュ通知を有効にしたかどうか(true / false)。 アプリにプッシュ通知機能が無い場合-値は「false」になります。
デバイスタイムゾーン timezone デバイスで設定されたユーザータイムゾーン。
ネットワーク network ユーザーが使用しているネットワークの種類:WiFi / セルラー / オフライン
システム名 systemName ユーザーのOS名 - この場合は常に「iOS」になります
現在のユーザータイムスタンプ timestamp ユーザーの現在のタイムスタンプ

これはオブWMUserDataジェクトの構造です:

@interface WMUserData : NSObject

/** 
* User Attributes in current session.
*/
@property (nonatomic,strong) NSDictionary *userAttributes;

/**
* Private User Attributes in current session.
*/
@property (nonatomic,strong) NSDictionary *privateUserAttributes;

/**
 * User Session Duration in second.
 */
@property (nonatomic,strong)  NSNumber* sessionDuration;

/**
 * User's iOS version
 */
@property (nonatomic,strong)  NSString* systemVersion;

/**
 * Device Unique ID
 */
@property (nonatomic,strong)  NSString* deviceId;

/**
 * Device Model.
 */
@property (nonatomic,strong)  NSString* deviceModel;

/**
 * Device Orientation PRT_REG / LSL.
 */
@property (nonatomic,strong)  NSString* deviceOrientation;

/**
 * The application version.
 */
@property (nonatomic,strong)  NSString* appVersion;

/**
 * The application name.
 */
@property (nonatomic,strong)  NSString* appName;

/**
 * Locale language for user's device.
 */
@property (nonatomic,strong)  NSString* locale;

/**
 * WalkMe SDK version.
 */
@property (nonatomic,strong)  NSString* sdkVer;

/**
 * Session unique id.
 */
@property (nonatomic,strong)  NSString* sessionId;

/**
 * If Push notification approved for user.
 */
@property (nonatomic,strong)  NSString* isPushEnabled;

/**
 * User device timezone.
 */
@property (nonatomic,strong)  NSString* timezone;

/**
 * User current network ( WIFI / 3G ).
 */
@property (nonatomic,strong)  NSString* network;

/**
 * User OS System Name.
 */
@property (nonatomic,strong)  NSString* systemName;

/**
 * Current Timestamp for this User.
 */
@property (nonatomic,strong)  NSString* timestamp;

@end

この記事は役に立ちましたか?

ご意見ありがとうございます!

Be part of something bigger.

Engage with peers, ask questions, share ideas

Ask the Community
×