翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
例 1: データエンリッチメント
シナリオ
ストリーミングサービスは、セッションの開始時に外部サービス (この場合は LiveRamp) からオーディエンスアイデンティティデータを取得し、セッションの後半で広告ターゲティングのためにプレイヤーパラメータに保存したいと考えています。ID エンベロープは、アイデンティティ解決サービスによって提供される暗号化された識別子であり、広告システムが個人情報が公開されることなく、デバイスやプラットフォーム間でビューワーを認識できるようにします。
設定
LiveRamp エンベロープ (HTTP_REQUEST):
{ "FunctionId": "fetchLiveRamp", "FunctionType": "HTTP_REQUEST", "HttpRequestConfiguration": { "Runtime": "JSONATA", "MethodType": "GET", "Url": "{%'https://api.example-identity.com/v2/envelope?pid=12345&iv=' & player_params.hashedId%}", "Headers": { "Authorization": "{%'Bearer ramp-token-789'%}" }, "RequestTimeoutMilliseconds": 2000, "Output": { "player_params.envelope_id": "{%response.body.envelopes[0].value%}" } } }
注記
を独自の API 認証情報Bearer ramp-token-789に置き換えます。機密性の高いトークンを本番環境の関数設定に直接保存しないでください。トークンローテーション戦略の使用を検討してください。
外部サービスの予想される応答時間RequestTimeoutMillisecondsに基づいて を設定します。値を小さくするとレイテンシーは短縮されますが、タイムアウトエラーが発生する可能性が高くなります。
関数マッピング
{ "FunctionMapping": { "PRE_SESSION_INITIALIZATION": "fetchLiveRamp" } }
関数が実行されるとどうなるか
ビューワーが再生セッションを開始します。
MediaTailor は
PRE_SESSION_INITIALIZATIONライフサイクルフックを実行し、 を実行しますfetchLiveRamp。この関数は、 を使用してリクエスト URL を構築し
player_params.hashedId、LiveRamp API を呼び出します。URL では、pidはパートナー ID で、ivはハッシュされたビューワー識別子です。出力式は、レスポンス配列 (
response.body.envelopes[0].value) の最初のエンベロープから値を抽出し、 に書き込みますplayer_params.envelope_id。
ヒント
エラーを明示的に処理するには、レスポンスデータにアクセスするresponse.statusCode前に を確認してください。 {%response.statusCode = 200 ? response.body.envelopes[0].value : ''%}
詳細については、「HTTP_REQUEST」、「PRE_SESSION_INITIALIZATION」、「トラブルシューティングとモニタリング」、および「制限」を参照してください。