更新停止のお知らせ
このバージョンの会話記録インターフェースは旧式のため、本ドキュメントの更新を停止いたしました。新しいバージョンの会話記録インターフェースへの移行をお願いいたします。
IM 会話記録リストの取得
このインターフェースは、複数の IM 会話記録情報を一度に取得するために使用されます。 頻度制限: 1回/2秒
リクエストメソッド
GET /api/v2/im/session
リクエストパラメータ(クエリストリング)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| start_time | 否 | 記録開始時間:値を渡す際に時分秒がない場合、デフォルトで0時0分0秒となります。値が渡されない場合、デフォルトで当日の0時が設定されます。 |
| end_time | 否 | 記録終了時間:値を渡す際に時分秒がない場合、デフォルトで0時0分0秒となります。値が渡されない場合、デフォルトで当日の24時が設定されます。 |
| status | 否 | セッション状態(close) |
| page | 否 | ページ番号、1から開始、デフォルトは1 |
| page_size | 否 | 1ページあたりの件数、デフォルト 30、最大 1000 |
注意:
開始時間から終了時間までの最大期間は30日です。
start_time と end_time はデフォルトで会話の開始時間を検索します。status=close の場合は会話の終了時間に基づいて検索します。
start_time と end_time の形式は "YYYY-MM-DD hh:mm:ss" です。時間部分を省略して "YYYY-MM-DD" で検索することも可能です。この場合、YYYY-MM-DD 00:00:00 を使用して検索したものと同等になります。
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0 は成功を表します |
| message | 文字列 | 実行結果の説明 |
| size | 整数 | 今回返されたデータの件数 |
| total | 整数 | データ総数 |
| total_pages | 整数 | 総ページ数 |
| item | 配列 | 会話記録リスト、各要素の内容はIM データを参照してください |
例
curl https://demo.udesk.cn/api/v2/im/session?page=1&page_size=10&sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"status": 0,
"message": "成功",
"item": [
{
"session_id": 1,
"sub_session_id": 1,
"note_id": null,
"customer_id": 1,
"customer_name": "テストユーザー",
"customer_custom_fields": {},
"agent_id": 1,
"agent_nick_name": "テストオペレーター",
"created_at": "2015-01-01 12:00:00",
"closed_at": "2015-01-01 12:30:00",
"resp_seconds": 7,
"queue_seconds": "未待機",
"sustain_seconds": 128,
"survey_vote_id": 1357334,
"belong_queue": "queue_company_6_group_331",
"agent_msg_num": 0,
"customer_msg_num": 0,
"source": "reocar.udesk.com",
"source_url": "https://demo.udeskt.cn/im_client/",
"queue_start_time": "2015-01-01 11:14:49",
"conversations_num_today": 4,
"platform": "web",
"organization_id": null,
"last_response": "customer",
"alert_num": 1,
"alert_desc": "センシティブワード1回,応答タイムアウト,セッションタイムアウト",
"ticket_num": 2,
"ticket_nos": "#140,#141",
"im_web_plugin_id": 1,
"sender": "customer",
"active_guest": "agent",
"menu_names": "ナビゲーションメニュー",
"web_info": {
"login_url": null,
"session_url": "https://demo.udesk.cn/im_client/",
"keyword": null,
"src": "demo.udesk.cn",
"src_url": "https://demo.udesk.cn/im_client/",
"sys": "Win7",
"bowser": "Chrome56",
"generated_channel": null,
"ip": "123.123.123.123"
},
"ticket_ids": []
}
],
"size": 1,
"total": 1,
"total_pages": 1
}
IM 会話記録の詳細を取得
このインターフェースは、特定の IM 会話の詳細情報を取得するために使用されます。
リクエストメソッド
GET /api/v2/im/im_sub_session
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| im_sub_session_id | はい | 1回のセッションの ID |
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0 は成功を表します |
| message | 文字列 | 実行結果の説明 |
| im_sub_session_log | 配列 | 会話記録の詳細。各要素の内容はIM データを参照してください |
| im_log_infos | 配列 | チャット記録。詳細はim_log_infosパラメータ説明を参照してください |
例
リクエスト
curl https://demo.udesk.cn/api/v2/im/im_sub_session?im_sub_session_id=14980761&sign=96689da0e96f12ebf67622413d7d86d5
レスポンス
{
"status": 0,
"message": "成功",
"im_sub_session_log": [
{
"session_id": 8761,
"sub_session_id": 14980761,
"note_id": null,
"customer_id": 117092,
"customer_name": "xx",
"customer_custom_fields": {},
"agent_id": 862,
"agent_nick_name": "xx_サポート",
"created_at": "2017-10-27 21:23:45",
"closed_at": null,
"resp_seconds": null,
"queue_seconds": "未待機",
"sustain_seconds": 9,
"survey_vote_id": null,
"platform": "WeChat",
"belong_queue": "queue_company_6_group_271",
"agent_msg_num": 0,
"customer_msg_num": 1,
"source": "WeChat-xx",
"source_url": null,
"queue_start_time": "2017-10-27 21:23:45",
"conversations_num_today": 3,
"agent_invite_vote_count": null,
"search_keyword": null,
"custom_channel": null,
"last_response": "customer",
"alert_num": 1,
"alert_desc": "センシティブワード1回,応答タイムアウト,セッションタイムアウト",
"ticket_num": 2,
"ticket_nos": "#140,#141",
"im_web_plugin_id": 1,
"sender": "customer",
"active_guest": "agent",
"weixin_info": {
"name": "xx"
}
}
],
"im_log_infos": [
{
"id": 70161,
"created_at": "2017-10-27 21:23:54",
"sender": "customer",
"user_id": 117092,
"content": "{"type":"image","platform":"wechat","data":{"content":"https://dn-udeskim.qbox.me/022c4a12-4f83-492d-8e4d-5f04191e0058.jpg","duration":null,"origin_url":"https://api.weixin.qq.com/cgi-bin/media/get?access_token=Z7kg69qvIqh_5-jZmzmKVgbt3mXP4pvmiNpqt_risTXuF1tOGw2bax9YaSVVQM4PR0HH_q7Fpou3PlYJhujH09xJxQyNmIhGYank_vmMxnEPTJfAHAWAQ&media_id=ObkKKAP5qS8wtFgXi1C2VMHKCZxQxxSvg1YVH2uHuDB_1HfORtcRf_3L2FmCUvO6"}}",
"session_id": 8761,
"sub_session_id": 14980761,
"survey_option_id": null
},
{
"id": 70158,
"created_at": "2017-10-27 21:23:45",
"sender": "agent",
"user_id": 862,
"content": "{"type":"rich","platform":"wechat","data":{"content":"<p>サポートxx_サポート_ニックネームがご案内します</p><p>ラララララ-英語</p>","duration":null}}",
"session_id": 8761,
"sub_session_id": 14980761,
"survey_option_id": null
},
{
"id": 70157,
"created_at": "2017-10-27 21:23:45",
"sender": "customer",
"user_id": 117092,
"content": "{"type":"message","platform":"wechat","data":{"content":"新しいお問い合わせが入りました。","duration":null}}",
"session_id": 8761,
"sub_session_id": 14980761,
"survey_option_id": null
},
{
"id": 70159,
"created_at": "2017-10-27 21:23:48",
"sender": "agent",
"user_id": 862,
"content": "{"type":"message","platform":"wechat","data":{"content":"こんにちは WeChat","duration":null}}",
"session_id": 8761,
"sub_session_id": 14980761,
"survey_option_id": null
},
{
"id": 70160,
"created_at": "2017-10-27 21:23:52",
"sender": "agent",
"user_id": 862,
"content": "{"type":"message","platform":"wechat","data":{"content":"普通","duration":null}}",
"session_id": 8761,
"sub_session_id": 14980761,
"survey_option_id": null
}
]
}
特定顧客のチャット履歴リストを取得する
このAPIは、あるユーザーのチャット履歴を一度に取得するために使用されます。レート制限:50回/60秒
リクエストメソッド
GET /api/v2/im/customer_im_logs
リクエストパラメータ(Query String)
| パラメータ名 | タイプ | 必須 | 説明 | 制限 |
|---|---|---|---|---|
| type | 文字列 | はい | 顧客を検索する条件のタイプ | 255文字以内 |
| content | 文字列 | はい | 顧客を検索する条件の内容 | 255文字以内 |
| start_time | 日時 | いいえ | 記録開始時間:値を渡す際に時分秒がない場合、デフォルトで0時0分0秒になります。値が渡されない場合、デフォルトで当日の0時になります。 | |
| end_time | 日時 | いいえ | 記録終了時間:値を渡す際に時分秒がない場合、デフォルトで0時0分0秒になります。値が渡されない場合、デフォルトで当日の24時になります。 | |
| page | 整数 | いいえ | ページ番号、1から開始、デフォルトは1 |
条件タイプと内容の説明
| 値 | 対応する content の意味 |
|---|---|
| id | 顧客ID |
| 顧客メールアドレス | |
| cellphone | 顧客電話番号 |
| token | 顧客外部一意識別子、対応する値は open_api_token |
| weixin_open_id | 顧客WeChat OpenID |
| weibo_id | 顧客Weibo OpenID |
注意;
記録開始時間から終了時間までの最大期間は90日です;
start_time と end_time は im_sub_session の作成時間を検索します;
start_time と end_time の形式は "YYYY-MM-DD hh:mm:ss" です。時間部分を省略して "YYYY-MM-DD" とすることもできます。
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0は成功を表します |
| message | 文字列 | 実行結果の説明 |
| size | 整数 | 今回返されるデータの数量 |
| total | 整数 | データ総数 |
| total_pages | 整数 | 総ページ数 |
| item | 配列 | チャット履歴リスト、各要素の内容は以下 |
item の内容
| 属性名 | タイプ | 説明 |
|---|---|---|
| im_sub_session_id | 整数 | im_sub_session の ID |
| im_log_infos | 配列 | im_sub_session 内のチャット履歴、詳細は以下 |
im_log_infos の内容
| 属性名 | タイプ | 説明 |
|---|---|---|
| id | 整数 | im_log の ID |
| created_at | 日時 | im_log の作成時間 |
| sender | 文字列 | メッセージ送信者 |
| user_id | 整数 | メッセージ送信者のID |
| nick_name | 文字列 | メッセージ送信者のニックネーム |
| content | 配列 | チャット内容 |
| ### サンプル |
リクエスト
curl https://demo.udesk.cn/api/v2/im/customer_im_logs?type=id&content=4173&start_time=2019-12-10&end_time=2020-01-01&sign=37eec33b035474b62785fd9caefbf0f8
レスポンスデータ
{
"status": 0,
"message": "成功",
"item": [
{
"im_sub_session_id": 3852,
"im_log_infos": [
{
"id": 16834,
"created_at": "2017-10-18 16:08:34",
"sender": "customer",
"user_id": 4173,
"nick_name": "udeskテスト",
"content": "{\"type\":\"message\",\"font\":\"\",\"data\":{\"content\":\"新しいお問い合わせが入りました。\"},\"platform\":\"android\",\"version\":2,\"auto\":true}"
},
{
"id": 16836,
"created_at": "2017-10-18 16:08:35",
"sender": "agent",
"user_id": 2,
"nick_name": "Tom",
"content": "{\"type\":\"close\",\"font\":\"\",\"data\":{\"content\":\"サポート担当Tomが会話を終了しました\"},\"platform\":\"android\",\"version\":2,\"auto\":true}"
},
{
"id": 16837,
"created_at": "2017-10-18 16:08:36",
"sender": "agent",
"user_id": 2,
"nick_name": "Tom",
"content": "{\"type\":\"survey\",\"font\":\"\",\"data\":{\"content\":\"システムが満足度調査を送信しました\"},\"platform\":\"android\",\"version\":2,\"auto\":true}"
}
]
},
{
"im_sub_session_id": 3853,
"im_log_infos": [
{
"id": 16838,
"created_at": "2017-10-18 16:08:53",
"sender": "customer",
"user_id": 4173,
"nick_name": "udeskテスト",
"content": "{\"type\":\"message\",\"font\":\"\",\"data\":{\"content\":\"新しいお問い合わせが入りました。\"},\"platform\":\"android\",\"version\":2,\"auto\":true}"
}
]
}
],
"size": 2,
"total": 2,
"total_pages": 1
}
チャット履歴リストの取得
このインターフェースは、指定された IM セッションのチャット履歴情報を取得するために使用されます。 頻度制限:1回/2秒
リクエストメソッド
GET /api/v2/im/log
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| session_id | はい | IM セッション ID |
| start_time | いいえ | レコード開始時間:値を渡す際に時分秒がない場合、デフォルトで0時0分0秒となります。値が渡されない場合、デフォルトで当日の0時が設定されます。 |
| end_time | いいえ | レコード終了時間:値を渡す際に時分秒がない場合、デフォルトで0時0分0秒となります。値が渡されない場合、デフォルトで当日の24時が設定されます。 |
| page | いいえ | ページ番号、1から開始、デフォルトは1 |
| page_size | いいえ | 1ページあたりの件数、デフォルト30、最大1000 |
start_time と end_time は、チャット履歴の作成時間を検索します。 start_time と end_time の形式は "YYYY-MM-DD hh:mm:ss" です。時間部分を省略して "YYYY-MM-DD" とすることもできます。
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、0は成功を表します |
| message | 文字列 | 実行結果の説明 |
| size | 整数 | 今回返されたデータの件数 |
| total | 整数 | データの総件数 |
| total_pages | 整数 | 総ページ数 |
| item | 配列 | チャット履歴リスト、各要素の内容は下表を参照してください |
item
| 属性名 | タイプ | 説明 |
|---|---|---|
| id | 整数 | チャット履歴 ID |
| created_at | 文字列 | チャット作成時間 |
| sender | 文字列 | 対話の送信者 値:"customer、agent、sys" 説明:"顧客、サポート担当者、システム" |
| user_id | 整数 | 送信者 ID |
| content | 文字列 | メッセージ内容 |
| session_id | 整数 | 所属するセッション ID |
| sub_session_id | 整数 | 所属するサブセッション ID |
| survey_option_id | 整数 | 選択されたオプション ID |
| ### サンプル |
curl https://demo.udesk.cn/api/v2/im/log?session_id=1&page=1&page_size=10&sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"status": 0,
"message": "成功",
"item": [
{
"id": 1,
"created_at": "2015-01-01 12:00:00",
"sender": "customer",
"user_id": 1,
"content": "{\"type\":\"message\",\"data\":{\"content\":\"有新的咨询进来了。\"},\"im_sub_session_id\":1}",
"session_id": 1,
"sub_session_id": 1,
"survey_option_id": null
}
],
"size": 1,
"total": 1,
"total_pages": 1
}
満足度調査結果の取得
このAPIは、指定された複数の期間の満足度調査結果を一度に取得するために使用されます。 レート制限: 1回/2秒
リクエストメソッド
GET /api/v2/im/vote
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| start_time | 否 | レコード開始時間:値が指定され、時分秒がない場合、デフォルトは0時0分0秒となります。値が指定されない場合、デフォルトは当日の0時です。 |
| end_time | 否 | レコード終了時間:値が指定され、時分秒がない場合、デフォルトは0時0分0秒となります。値が指定されない場合、デフォルトは当日の24時です。 |
| page | 否 | ページ番号。1から始まります。デフォルトは1です。 |
| page_size | 否 | 1ページあたりの件数。デフォルトは30、最大1000です。 |
start_time と end_time は、満足度調査結果の作成時間をクエリします。 start_time と end_time の形式は "YYYY-MM-DD hh:mm:ss" です。時間部分を省略して "YYYY-MM-DD" とすることもできます。
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード。0は成功を表します。 |
| message | 文字列 | 実行結果の説明 |
| size | 整数 | 今回返されたデータの件数 |
| total | 整数 | データの総数 |
| total_pages | 整数 | 総ページ数 |
| item | 配列 | 満足度調査結果のリスト。各要素の内容は以下を参照してください。 |
| #### 満足度調査結果 |
| 属性名 | タイプ | 説明 |
|---|---|---|
| id | 整数型 | 一意の識別子 |
| created_at | 日時 | 作成時間 |
| session_id | 整数型 | 所属セッション id |
| sub_session_id | 整数型 | 所属サブセッション id |
| survey_option_id | 整数型 | 選択されたオプション id |
例
curl https://demo.udesk.cn/api/v2/im/vote?page=1&page_size=10&sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"status": 0,
"message": "成功",
"item": [
{
"id": 1,
"created_at": "2015-01-01 12:00:00",
"session_id": 1,
"sub_session_id": 1,
"survey_option_id": 1
}
],
"size": 1,
"total": 1,
"total_pages": 1
}
業務記録の取得
このAPIは、指定された期間の複数のIM業務記録情報を一度に取得するために使用されます。 レート制限: 1回/2秒
リクエストメソッド
GET /api/v2/im/note
リクエストパラメータ(クエリストリング)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| start_time | いいえ | 記録開始時間:値を渡す際に時分秒がない場合、デフォルトで0時0分0秒となります。値が渡されない場合、デフォルトで当日の0時となります。 |
| end_time | いいえ | 記録終了時間:値を渡す際に時分秒がない場合、デフォルトで0時0分0秒となります。値が渡されない場合、デフォルトで当日の24時となります。 |
| page | いいえ | ページ番号、1から開始、デフォルトは1 |
| page_size | いいえ | 1ページあたりの件数、デフォルト30、最大1000 |
start_time と end_time は業務記録の作成時間を検索します。 start_time と end_time の形式は "YYYY-MM-DD hh:mm:ss" です。時間部分を省略して "YYYY-MM-DD" とすることもできます。
レスポンスデータ
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数型 | 実行結果コード、0は成功を表します |
| message | 文字列 | 実行結果の説明 |
| size | 整数型 | 今回返されたデータの件数 |
| total | 整数型 | データの総数 |
| total_pages | 整数型 | 総ページ数 |
| item | 配列 | 業務記録リスト、各要素の内容は以下を参照してください |
| #### 業務記録 |
| 属性名 | タイプ | 説明 |
|---|---|---|
| id | 整数型 | 一意の識別子 |
| created_at | 日時 | 作成時間 |
| note_type | 文字列 | 業務記録タイプ、通常は"im" |
| session_id | 整数型 | 所属するセッション id |
| sub_session_id | 整数型 | 所属するサブセッション id |
| content | 文字列 | 内容 |
| custom_fields | 配列 | カスタムフィールド、詳細は以下を参照 |
custom_fields
custom_fields は配列であり、その各要素も2つの要素を含む配列です。最初の要素はカスタムフィールドの識別名、2番目の要素はこの業務記録におけるそのフィールドの値です。
[["識別名", "値"]]
業務記録で使用されるカスタムフィールドの識別名は、チケットのカスタムフィールドと一致しています。
詳細は例を参照してください。
例
curl https://demo.udesk.cn/api/v2/im/note?page=1&page_size=10&sign=129da7df812jdfsa9912jfdadf81
レスポンス
{
"status": 0,
"message": "成功",
"item": [
{
"id": 1,
"created_at": "2015-01-01 12:00:00",
"note_type": "im",
"session_id": 1,
"sub_session_id": 1,
"content": null,
"custom_fields": [
["TextField_1", "通常テキスト内容"], // 通常テキスト
["TextField_2", "複数行テキスト内容1\r\n複数行テキスト内容2"], // 複数行テキスト
["TextField_3", "2016-08-11"], // 日付
["TextField_4", "14:44:36"], // 時間
["TextField_5", "2017-05-03 14:44"], // 日時
["TextField_6", "https://www.sample.com"], // リンク
["TextField_7", "13"], // 正の整数
["TextField_8", "13.33"], // 数値
["SelectField_1", "0"], // ドロップダウンリスト、ドロップダウンオプション1
["SelectField_2", "0"], // ラジオボタン、ラジオボタンオプション1
["SelectField_3", "0,3"] // チェックボックス、チェックボックスオプション1、チェックボックスオプション4
]
}
],
"size": 1,
"total": 1,
"total_pages": 1
}
IM構造化メッセージの送信
このインターフェースは、IMを通じて顧客に構造化メッセージを送信するために使用されます。 レート制限:1回/2秒
認証
署名方法については、認証方法を参照してください。ただし、以下の2点に注意する必要があります:
- Query Stringの順序は、im_sub_session_id、customer_id、agent_id、timestampでなければなりません。
- 共有シークレットを「構造化メッセージ KEY」に置き換えてください。これは、ウェブサイトの管理画面【管理センター】->【チャネル管理】->【インスタントメッセージング】->【構造化メッセージ】で確認できます。
リクエストメソッド
POST /api/v2/im/struct/messages
リクエストパラメータ(Query String)
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| im_sub_session_id | はい | セッションID |
| customer_id | はい | 顧客ID |
| agent_id | はい | サポート担当者ID |
| timestamp | はい | タイムスタンプ |
注:APIで作成された顧客はこのインターフェースに使用できません
リクエストパラメータ(Request Body)
| パラメータ名 | 必須 | タイプ | 説明 |
|---|---|---|---|
| jid_resource | いいえ | 文字列 | SDKチャネルソース |
| data | はい | オブジェクト | 構造化メッセージ |
data
| パラメータ名 | 必須 | タイプ | 説明 |
|---|---|---|---|
| title | はい | 文字列 | タイトル |
| description | はい | 文字列 | 説明文 |
| img_url | はい | 文字列 | 表示画像のリンク |
| buttons | はい | 配列 | ボタンリスト |
buttons 要素の構造
| パラメータ名 | 必須 | タイプ | 説明 |
|---|---|---|---|
| type | はい | 文字列 | ボタンタイプ |
| text | はい | 文字列 | ボタンタイトル |
| value | はい | 文字列 | ボタン値 |
| callback_name | いいえ | 文字列 | コールバック名(typeがsdk_callbackの場合のみ有効) |
type の取り得る値
| 値 | 意味 |
|---|---|
| link | リンクボタン |
| phone | 電話ボタン |
| sdk_callback | コールバックボタン(SDKのみサポート) |
| ### 返却データ |
| 属性名 | タイプ | 説明 |
|---|---|---|
| status | 整数 | 実行結果コード、1000 は成功を表す |
| message | 文字列 | 実行結果の説明 |
例
curl https://demo.udesk.cn/api/v2/im/struct/messages?im_sub_session_id=1&customer_id=1&agent_id=1×tamp=1494814031&sign=129da7df812jdfsa9912jfdadf81 \
-X POST \
-H 'content-type: application/json' \
-d '
{
"data": {
"title": "APIによる構造化メッセージ送信のテスト",
"description": "このメッセージはAPIから送信されました",
"img_url": "https://www.udesk.cn/images/index/banner01.jpg",
"buttons": [
{
"type": "link",
"text": "アクセス",
"value": "https://www.udesk.cn"
},
{
"type": "phone",
"text": "電話をかける",
"value": "010-12345678"
},
{
"type": "sdk_callback",
"callback_name": "sdk_callback",
"text": "コールバックボタン",
"value": "v1"
}
]
}
}'
返却
{
"status": 1000,
"message": "送信成功"
}
カスタム IM 構造化メッセージリストページ
カスタム IM 構造化メッセージリストページは、️ あなたが提供する HTML ページで、よく使われる構造化メッセージを含み、カスタマーサポートが Udesk IM オペレーターコンソールから顧客に素早く選択して送信できるようにします。
カスタム IM 構造化メッセージリストページを使用するには、以下の2つのステップが必要です:
- まず、HTML ページを作成し、そのページの公開 URL を用意する。
- Udesk 【管理センター】-【構造化メッセージ】で「埋め込みリンク」を設定する。
HTML ページの作成
Udesk は、カスタマーサポートが構造化メッセージを選択する必要があるときに、あなたが提供した HTML ページを iframe として表示し、以下のパラメータをクエリストリングとしてあなたの HTML ページに渡します:
| パラメータ名 | 説明 |
|---|---|
| im_sub_session_id | セッション ID |
| customer_id | 顧客 ID |
| agent_id | カスタマーサポート ID |
| jid_resource | SDK ソース |
| timestamp | タイムスタンプ |
さらに、認証方法で計算された署名も、sign パラメータとして一緒に渡されます。
署名の計算は、認証方法と若干異なり、IM 構造化メッセージ送信インターフェースと一致します。 リクエストを受信したら、sign 値が有効かどうかを検証してから、HTML ページを返すかどうかを決定することをお勧めします。
同時に、HTML ページ内では、上記のパラメータを使用してIM 構造化メッセージ送信インターフェースを呼び出し、構造化メッセージの送信を完了することができます。
設定
- 管理者としてUdeskシステムにログインします。
- 【管理センター】-【チャネル管理】-【インスタントメッセージング】-【構造化メッセージ】を開きます。
- 「埋め込みリンク」を提供されたHTMLページの公開アドレスに設定します。
例
【管理センター】での設定が以下の通りであると仮定します:
- 埋め込みリンク:
https://www.demo.com/struct_messages - KEY:
708ff6dc-41d5-4med-9ebc-0388zz9d76f1
サポート担当者がIMワークベンチのチャット画面で「構造化メッセージ」リストアイコンをクリックすると、Udeskは以下のようなアドレスを含むiframeページを表示します:
https://www.demo.com/struct_message?im_sub_session_id=1&customer_id=1&agent_id=1&jid_resource=12dsafdaslj129das-12fds912-12dsa×tamp=1484272693&sign=4666293b3dfe91aa97179dc701be7afc
なお、この中のsignの計算方法は以下の通りです:
md5("im_sub_session_id=1&customer_id=1&agent_id=1×tamp=1484272693&708ff6dc-41d5-4med-9ebc-0388zz9d76f1")
#=> 4666293b3dfe91aa97179dc701be7afc
データ構造-IM
IM 会話記録
| 属性名 | タイプ | 説明 |
|---|---|---|
| sub_session_id | 整数型 | id (im_sub_session_idと同じ) |
| session_id | 整数型 | セッション id |
| note_id | 整数型 | 業務記録 id |
| customer_id | 整数型 | 顧客 id |
| customer_name | 文字列 | 顧客名 |
| customer_custom_fields | オブジェクト | 顧客カスタムフィールド、詳細は以下を参照 |
| agent_id | 整数型 | サポート担当者 id |
| agent_nick_name | 文字列 | サポート担当者名 |
| resp_seconds | 整数型 | 応答時間、単位は秒 |
| queue_seconds | 文字列 | 待ち時間、単位は秒 |
| sustain_seconds | 整数型 | 持続時間 |
| survey_vote_id | 整数型 | 満足度調査結果 id |
| platform | 文字列 | チャネル、値:web、微信、微博、android、ios、api |
| web_info | オブジェクト | ブラウザアクセス情報、詳細は以下を参照 |
| weixin_info | オブジェクト | 微信アクセス情報、詳細は以下を参照 |
| weibo_info | オブジェクト | 微博アクセス情報、詳細は以下を参照 |
| api_info | オブジェクト | API アクセス情報 |
| ios_info | オブジェクト | iOS SDK アクセス情報 |
| android_info | オブジェクト | Android SDK アクセス情報 |
| created_at | 日時 | 作成時間 |
| closed_at | 日時 | 終了時間 |
| belong_queue | 文字列 | 待ち行列 |
| agent_msg_num | 整数型 | サポート担当者メッセージ数 |
| customer_msg_num | 整数型 | 顧客メッセージ数 |
| source | 文字列 | ソース |
| source_url | 文字列 | ソース url |
| queue_start_time | 日時 | 待ち行列開始時間 |
| conversations_num_today | 整数型 | 当日の会話回数 |
| search_keyword | 文字列 | 検索キーワード |
| custom_channel | 文字列 | カスタムチャネル情報 |
| agent_invite_vote_count | 整数型 | サポート担当者評価依頼回数 |
| last_response | 文字列 | 最後のメッセージ送信者 値: customer、agent、blank |
| alert_num | 整数型 | アラート回数 |
| alert_desc | 文字列 | アラート項目 |
| ticket_num | 整数型 | チケット数 |
| ticket_nos | 文字列 | チケット番号、カンマ","で区切る |
| im_web_plugin_id | 整数型 | ソースプラグイン ID |
| sender | 文字列 | 会話開始者 値:"customer、agent、sys" 説明:"顧客、サポート担当者、システム" |
| active_guest | 文字列 | 訪問者招待 値:"agent、sys、blank" 説明:"サポート担当者、自動、なし" |
| ticket_ids | 配列 | この会話記録に対応するチケット |
| organization_id | 整数型 | 会社id |
| menu_names | 文字列 | ナビゲーションメニュー名 |
| #### 顧客ブラウザアクセス情報 |
| 属性名 | タイプ | 説明 |
|---|---|---|
| login_url | 文字列 | |
| session_url | 文字列 | |
| keyword | 文字列 | |
| src | 文字列 | |
| src_url | 文字列 | source_urlと同じ |
| sys | 文字列 | |
| bowser | 文字列 | |
| generated_channel | 文字列 | |
| ip | 文字列 |
微信アクセス情報
| 属性名 | タイプ | 説明 |
|---|---|---|
| name | 文字列 | 顧客のWeChatニックネーム |
微博アクセス情報
| 属性名 | タイプ | 説明 |
|---|---|---|
| name | 文字列 | 顧客のWeiboニックネーム |
API アクセス情報
| 属性名 | タイプ | 説明 |
|---|---|---|
| from | 文字列 | 固定値"API" |
iOS SDK アクセス情報
| 属性名 | タイプ | 説明 |
|---|---|---|
| phone_modal | 文字列 | |
| phone_version | 文字列 | |
| app_name | 文字列 | |
| network_status | 文字列 | |
| carrier | 文字列 | |
| scale_screen | 文字列 |
Android SDK アクセス情報
| 属性名 | タイプ | 説明 |
|---|---|---|
| phone_modal | 文字列 | |
| phone_version | 文字列 | |
| app_name | 文字列 | |
| network_status | 文字列 | |
| carrier | 文字列 | |
| scale_screen | 文字列 |
IM チャット記録
| 属性名 | タイプ | 説明 |
|---|---|---|
| id | 整数 | 一意の識別子 |
| created_at | 日時 | 作成日時 |
| sender | 文字列 | 送信者の身分(agent または customer) |
| user_id | 整数 | 送信者ID |
| content | 文字列 | メッセージ内容 |
| session_id | 整数 | 所属するセッションID |
| sub_session_id | 整数 | 所属するサブセッションID |
| survey_option_id | 整数 | 満足度調査結果ID |
statusエラーコード説明
| エラーコード | message情報 | 説明 |
|---|---|---|
| 2000 | 30日以内のデータのみ提供しています | パラメータ{start_time}または{end_time}のみが指定され、日付が現在から30日以上前の場合 |
| 申し訳ございません、該当リソースは存在しません | データが見つかりません、リクエストパラメータが誤っています | |
| NoMethodError | 必須パラメータが入力されていません | |
| 90日以内のデータのみ提供しています | パラメータ{start_time}または{end_time}が現在から90日以上前の場合 | |
| セッション記録がありません | 必須パラメータ{session_id}が誤っており、セッションデータが見つかりません | |
| session_id は空にできません | 必須パラメータ{session_id}が入力されていない、または空です | |
| ActiveRecord::StatementInvalid | パラメータ{page_size}または{page}が有効範囲外です | |
| 2002 | 署名エラー、バージョンをアップグレードしてご利用ください! | パラメータ{sign}が誤っており、認証に失敗しました |
| 9010 | メッセージ送信失敗 クライアントバージョンがサポートされていません | この顧客はAPIチャネルで作成された顧客であり、インターフェースを通じてIM構造化メッセージを送信することはできません |