サンプルコード
- https://github.com/ServicePattern/crm-client-api-example
- 動作例:コンタクトセンターのドメインを入力し、ご希望のものを選択します ウィジェットのバージョン
:1.0
または 2.0
を選択し、「接続」
を押してください
SDKの埋め込み
ウィジェットをカスタムWebページに埋め込むには、対象のHTMLファイルの <HEAD> エレメント内に、以下のフォーマットでスクリプトタグを追加してください:
<SCRIPT type="application/javascript" src="https://example.brightpattern.com/agent/crmembedded/adapters/api.js"></SCRIPT>
exampleを、ご自身のドメイン名に置き換えてください。- URLのパスに、ご希望のウィジェットのバージョンを指定してください:
- Comm Widget 2.0:
crmembedded - Comm Widget 1.0:
communicator
- Comm Widget 2.0:
SDKの初期化
次のように SDK インスタンスを作成します:
| const adApi = window.brightpattern.AdApi(オプション) |
初期化オプションは以下の通りです:
| export type InitOptions = {
integrationKey?: string adcFrame?: HTMLIFrameElement // mountRoot が指定されていない場合に必須です。 mountRoot?: HTMLElement // adcFrame が指定されていない場合に必須です。 standalone?: boolean disableNewInteractionPopup?: boolean adaptiveWidth?: boolean } |
初期化オプション
- adcFrame: HTMLIframeElement - SDKの初期化前にCommunicatorウィジェットを含む既存のiframeが存在する場合、そのiframeを指します。mountRootが指定されていない場合は必須です。
- mountRoot: HTMLElement - SDK が Communicator ウィジェットを含む iframe を挿入する HTML ノードです。adcFrame が指定されていない場合、必須となります。
オプション:
- integrationKey: string - CRM 統合の一意の id です。この値は変更しないようにしてください。 カスタム統合の場合は、ここで何も指定する必要はありません。
- standalone: boolean - SDKをエージェントデスクトップアプリケーションのユーザーインターフェースなしで動作させたい場合は、このブール値をtrueに設定してください。
- disableNewInteractionPopup: boolean - エージェントが着信インタラクションを受信した際に、ネイティブのポップアップを無効にすることができます。
- adaptiveWidth: boolean - 有効にすると、ウィジェットは利用可能なすべてのスペースに収まるように調整されます。このオプションを指定しない場合、ウィジェットの幅は500pxに固定されます。
リクエストの戻り値と結果エラー
エージェントデスクトップ アプリケーションへのすべてのリクエストに対し、以下のフォーマットで応答が返されます:
| type OperationResult<RETURNTYPE> =
{status: "成功"; data: ReturnType} | {status: "エラー"; エラー: ResultError} |
注:
| "error"</NOWIKI>
type ResultError = { code: ResultErrorCodes[keyof ResultErrorCodes] 名前: keyof ResultErrorCodes メッセージ?: string } type ResultErrorCodes = { 権限不足: 1 ログイン未完了: 2 引数無効: 3 電話番号未登録でのログイン: 4 利用停止: 5 API応答なし: 6 無効なリクエスト: 7 タイムアウト: 8 サービス内にチャットなし: 9 番号が空: 10 サービスなし: 11 自己発信: 12 no_interaction: 13 api_method_not_implemented: 14 not_suitable_state: 15 no_disposition: 16 object_not_found: 17 SMS送信権限なし: 18 通話権限なし: 19 サービス内のチャネルなし: 20 不明なエラー: 99 } |
エージェントデスクトップ 側でリクエストされた操作が正常に完了した場合、応答オブジェクトの status
フィールドは「成功」となり、データには(存在する場合)戻り値が含まれます。
要求された操作がエラーで完了した場合、statusフィールドは「error」に設定され、dataはnullとなり、error
フィールドには発生した問題に関する情報が含まれます。