OtherLevels
OtherLevels Experience Platformは、GenAIを活用して、従来のコンテンツをオンブランドのパーソナライズされた動画やリッチメディア体験に大規模に変換することで、スポーツブランド、パブリッシャー、オペレーターが顧客とつながる方法を変革します。
この統合はOtherLevelsによって維持されています。
概要
BrazeとOtherLevelsの統合により、OtherLevels Experience PlatformへのAPIコールを通じてカスタムGenAI動画を作成し、Brazeコネクテッドコンテンツを通じてこれらの動画をiOSプッシュ動画としてユーザーに送信できます。
OtherLevelsのAIを活用した体験で、ユーザーにより良いエクスペリエンスを提供しましょう。既存のコンテンツやサードパーティコンテンツを拡張性の高い動画やリッチメディアに変換し、すでに異なる方法でコンテンツを消費し、文脈に応じたパーソナライズされた体験に強く反応するオーディエンスに届けましょう。
前提条件
開始する前に、以下が必要です。
| 前提条件 | 説明 |
|---|---|
| OtherLevelsアカウント | このパートナーシップを利用するには、OtherLevelsアカウントが必要です。 |
| Braze REST APIキー | users.track権限を持つBraze REST APIキー。これは、Brazeダッシュボードの設定 > APIキーから作成できます。 |
| Braze RESTエンドポイント | RESTエンドポイントURL。エンドポイントは、お使いのインスタンスのBraze URLに依存します。 |
この統合では、Brazeからユーザーにメッセージを送信する前に、動画生成プロセスの一部としてOtherLevels Experience Platform APIを呼び出す必要があります。このドキュメントではcURLの例を提供していますが、APIコールを自動化するためにPostmanのようなAPIクライアントの使用を推奨します。
ユースケース
OtherLevels Experience Platformで作成したGenAI動画を使用して、以下を実現できます。
- スポーツオーナーやリーグ、ファンエンゲージメント、スポーツブック、iGaming、宝くじ向けに、より良い体験を創出する。
- テキストベースのコンテンツをリッチメディアや動画に変換し、人間的で魅力的な体験を創出することで、カスタマーマーケティングを強化する。
- 既存のBraze統合を再構築するのではなく拡張することで、獲得からリテンションまでの成果を向上させる。
OtherLevels Experience Platformの統合
ステップ1:OtherLevels Experience Platform APIを呼び出して動画を生成する
統合の最初のステップでは、OtherLevels Experience Platform APIを呼び出して新しい動画を生成します。動画の生成は即時ではないことに注意してください。動画の長さや複雑さによっては、コンテンツの生成に最大30分かかる場合があります。メッセージングのスケジュールとAPIコールを適切に計画し、動画を生成するためのAPIコールがBrazeメッセージの送信予定時刻より十分前に行われるようにしてください。
以下のリクエストはcURLを使用しています。APIリクエストをより効率的に管理するには、PostmanのようなAPIクライアントの使用を推奨します。
APIコールの構成方法については、以下の例を参照してください。動画仕様のカスタマイズやAPIコールの構造についての詳細は、GenAI動画のカスタマイズを参照してください。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
curl --request POST \
--url 'https://exp-platform-api.prod.awsotherlevels.com/v1/app/OTHERLEVELS_PROJECT_KEY/media?=' \
--header 'Content-Type: application/json' \
--header 'User-Agent: insomnia/10.3.0' \
--data '{
"task": {
"type": "tasks",
"tasks": {
"image_video_overlay": {
"width": "= .orientation == '\''portrait'\'' ? '\''1080'\'' : .orientation == '\''landscape'\'' ? '\''1920'\''",
"height": "= .orientation == '\''portrait'\'' ? '\''1920'\'' : .orientation == '\''landscape'\'' ? '\''1080'\''",
"color": "255,255,255,0",
"y_pos": "0",
"x_pos": "0",
"image_input": "= tasks.resize_image.jpg ?? tasks.resize_image.png",
"video_input": "= tasks.talking_talent_replace_bg.mp4",
"type": "compose.ImageVideoOverlay"
},
"resize_image": {
"media_input": "= tasks.bg_image.jpg ?? tasks.bg_image.png",
"type": "compose.MediaResize",
"width": "= .orientation == '\''portrait'\'' ? '\''1080'\'' : .orientation == '\''landscape'\'' ? '\''1920'\''",
"height": "= .orientation == '\''portrait'\'' ? '\''1920'\'' : .orientation == '\''landscape'\'' ? '\''1080'\''"
},
"bg_image": {
"type": "load",
"url": "BACKGROUND_IMAGE_URL",
"refresh_interval": "12h"
},
"talking_head": {
"test": false,
"title": "INSERT_TITLE",
"caption": false,
"templateId": "TALENT_TEMPLATE",
"type": "TALENT_MODEL",
"variables": {
"script": {
"name": "script",
"properties": {
"content": "= tasks.translate_text.text"
},
"type": "text"
}
}
},
"translate_text": {
"type": "translate_text",
"source": "en",
"target": "en",
"text": "INSERT_SCRIPT"
},
"talking_talent_speed": {
"type": "compose.VideoSetSpeed",
"speed": "1.0",
"video_input": "= tasks.talking_head.mp4"
},
"talking_talent_replace_bg": {
"type": "compose.VideoReplaceBg",
"video_background": "= tasks.resize_image.jpg ?? tasks.resize_image.png",
"video_input": "= tasks.talking_talent_speed.mp4"
}
},
"output": "image_video_overlay"
}
}'
以下を置き換えてください。
| プレースホルダー | 説明 |
|---|---|
OTHERLEVELS_PROJECT_KEY |
OtherLevelsプロジェクトキーは、OtherLevelsアカウントのプロビジョニング時に提供されます。 |
BACKGROUND_IMAGE_URL |
動画の背景用のHTTPS URL。 |
INSERT_TITLE |
動画のタイトル。これは内部参照用であり、動画には表示されません。 |
TALENT_TEMPLATE |
タレントテンプレートID。OtherLevelsは、アカウントのプロビジョニング中にお客様と協力してタレント(アバター)を作成します。使用可能な1つまたは複数のタレントIDが提供されます。 |
TALENT_MODEL |
タレントモデルID。OtherLevelsは、アカウントのプロビジョニング中にお客様と協力してタレント(アバター)を作成します。使用可能な1つまたは複数のタレントモデルが提供されます。 |
INSERT_SCRIPT |
動画の中でタレントに話させたい正確なスクリプト。 |
APIレスポンスの一部として、OtherLevelsはAPIコールが成功したことを示すJSONペイロードを返します。JSONには、生成された動画を識別するための一意のrecipe_idが含まれます。recipe_idは次のステップで必要になります。
以下はAPIからのレスポンスの例です。
1
{"$schema":"https://exp-platform-api.prod.awsotherlevels.com/schemas/GenerateMediaResBody.json","message":"success","recipe_id":"LMINHWXV2BBD6JGV5VF3ZNZV7BDDRR7FH5FJH6MMX4BVLTPRKTWQ","media_short_id":"LMINHWX","status":"triggered"}
ステップ2:recipe_idをカスタム属性として設定する
ステップ1で受け取ったrecipe_idを、動画を送信したいユーザーのBrazeカスタム属性として設定します。
ユースケースによっては、大規模なオーディエンス向けに1本の動画を生成した場合、同じrecipe_idを複数のユーザーに設定できます。あるいは、それぞれ異なるユーザーをターゲットにした複数のユニークな動画を生成した場合は、各ユーザーにカスタムrecipe_idをBrazeカスタム属性として設定する必要があります。
以下のリクエストはcURLを使用しています。APIリクエストをより効率的に管理するには、PostmanのようなAPIクライアントの使用を推奨します。
1
2
3
4
5
6
7
8
9
10
11
curl --location --request POST 'BRAZE_API_ENDPOINT/users/track' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer BRAZE_API_KEY' \
--data-raw '{
"attributes": [
{
"external_id": "USER_ID",
"olxpmedia": "RECIPE_ID"
}
]
}'
以下を置き換えてください。
| プレースホルダー | 説明 |
|---|---|
BRAZE_API_ENDPOINT |
現在のBrazeインスタンスのBraze RESTエンドポイントURL。詳細については、REST APIキーを参照してください。 |
BRAZE_API_KEY |
users.track権限を持つBraze REST APIキー。 |
USER_ID |
この動画を受信するユーザーID。使用できる識別子の例については、/users/trackを参照してください。 |
RECIPE_ID |
ステップ1でOtherLevels APIレスポンスから受け取ったrecipe_id。 |
ステップ3:Brazeコネクテッドコンテンツで送信する
GenAI動画をiOSプッシュメッセージとしてユーザーに送信するには、以下の手順に従います。
- Braze iOSプッシュ通知Campaignを作成します。
- Campaignの作成中に、アセットセクションに移動し、以下のコネクテッドコンテンツ構文をURLから追加フィールドに貼り付けます。
1
{% connected_content https://exp-platform-api-external.prod.awsotherlevels.com/v1/app/OTHERLEVELS_PROJECT_KEY/media/{{custom_attribute.${olxpmedia}}} %}
次に、OTHERLEVELS_PROJECT_KEYをOtherLevelsが提供するプロジェクトキーに置き換えます。
- URLファイル形式のドロップダウンで、MP4を選択します。
- Campaignの残りの部分(メッセージ内容、送信スケジュール、ターゲットオーディエンスなど)を、希望する設定に基づいて構成します。

GenAI動画のカスタマイズ
動画サイズと属性
動画の背景は、bg_imageキー内で指定できます。
| パラメーター | 説明 |
|---|---|
url |
背景画像のHTTPS URL。 |
動画背景のサイズは、resize_imageキー内で指定できます。背景画像は、ここで設定したものと同じサイズにすることを推奨します。
| パラメーター | 説明 |
|---|---|
width |
背景画像の幅。縦向きと横向きの両方のオプションがあります。 |
height |
背景画像の高さ。縦向きと横向きの両方のオプションがあります。 |
動画オーバーレイオプションは、image_video_overlayキー内で指定できます。
| パラメーター | 説明 |
|---|---|
width |
オーバーレイの幅。縦向きと横向きの両方のオプションがあります。 |
height |
オーバーレイの高さ。縦向きと横向きの両方のオプションがあります。 |
color |
RGBで指定されたオーバーレイの色と透明度。 |
y_pos |
中心からのY軸オフセット。 |
x_pos |
中心からのX軸オフセット。 |
タレントとスクリプト
プロビジョニングの一環として、OtherLevelsはお客様と協力して、動画で使用する1つまたは複数のタレント(アバターと呼ばれることもあります)を生成します。ユースケースやブランドに応じて、既存のブランドアンバサダーの形で作成することも、ユニークなクリエーションとして作成することもできます。
これらが作成されると、APIで使用可能なTALENT_TEMPLATEとTALENT_MODELのIDが提供されます。
入力スクリプトを処理するために使用される音声モデルは、人間が読むような自然なスクリプトを提供した場合に最も効果的に機能します。ほとんどの場合、手動でスクリプトを誘導するための追加の句読点は必要ありません。ただし、実際のオーディエンスに送信する前に、すべてのスクリプトをテストすることを推奨します。タレントがスクリプトを読む速度は、talking_talent_speedキー内で指定できます。
| パラメーター | 説明 |
|---|---|
speed |
タレントがスクリプトを読む速度を指定します。例:1.5。 |
その他の考慮事項
- iOSプッシュ通知プラットフォームのみが動画メディアをネイティブでサポートしています。Androidプッシュ通知は動画をネイティブでサポートしていないため、この統合はiOSオーディエンスにのみ使用できます。
- iOSデバイスで動画プッシュ通知を受信する場合、ユーザーは動画を読み込んで再生するためにプッシュ通知を長押しする必要があります。これはiOSプラットフォームの標準的な動作であり、カスタマイズすることはできません。