Agent SDK
SDK言語:Typescript
現在のバージョン:24.4
現在のバージョンのリリース日:2024年10月15日
アベイラビリティ:全リージョンおよび全ビジネスセグメント
ブラウザーのサポート:Google Chrome、Microsoft Edge、Island Enterprise
SDKリポジトリ:GitHub
APIリファレンス:CXone Mpowerデベロッパー・ポータル

ソフトウェア開発キット(SDK)は、開発者のための道具箱のようなものです。 ソフトウェアアプリケーションの構築を容易にするツールとリソースのセットを提供します。 それは既成の構築ブロックのコレクションと考えることもできます。 これらの構築ブロックには既存の機能があります。 開発者は、一から独自に機能を構築する代わりに、これらの既存のブロックを使用することができます。 SDKを使用する一般的なメリットは以下の3つです。
-
効率化:SDKは、開発者の時間を節約する既製のツールと構築済コンポーネントを提供します。 車輪の再発明をするのではなく、アプリのユニークな側面に集中することができます。
-
一貫性:SDKは異なるアプリの一貫性を保証します。 同じツールやライブラリを使用することで、開発者はユーザーに統一されたエクスペリエンスを維持することができます。
-
品質保証:ロガーで、開発者はコードを検証し、バグを早期に発見し、より信頼性の高いソフトウェアを提供することができます。
まとめると、SDKは開発を簡素化し、品質を保証し、コラボレーションを促進するものであり、効率的なアプリの作成用の必須ツールを作ります。
CXone Mpower Agent SDKを使用すると、エージェントアプリケーションを構築できます。 Agentの機能を既存のアプリケーションに統合することもできます。 開発者は、CXone Mpower APIを直接使用する代わりに、SDKを通じてあらかじめ用意された機能を使用することができます。 これにより、開発時間を短縮し、リソースを節約することができます。 開発者は、すべてのCXone Mpower APIがどのように機能するかを理解する必要はありません。 その代わりに、SDKでは、消費可能なJavaScriptラッパーでAPIのグループを使用することができます。
Agent SDKは小さなSDKをコンパイルしたものです。 それぞれの小さなSDKは、認証やコールコントロールなど、機能の特定の側面に重点を置いています。 ユースケースに合わせるため、必要なSDKだけを選択することができます。 例えば、Integrated SoftphoneのWebRTC機能を提供する音声SDKは必要ないかもしれません。 これは、開発者がユースケースに必要なSDKをインストールするだけで済むことを意味します。
Agent SDKに関する重要な事実:
-
SDKはイベントサブスクリプションを通じて動作します。 CXone Mpower プラットフォームからのデータは、イベントとともにパブリッシュされます。 データを使用するには、アプリはこれらのイベントにサブスクライブする必要があります。
-
Agentのすべての機能は、このSDKを通じて利用可能です。
-
SDKで使用するアプリケーションを登録する必要があります。 登録フォーム
に記入し、このアプリの認証情報を受け取ります。 開発者ポータルのはじめに
のページでは、アプリの登録と認証の設定のプロセスを紹介します。
-
SDKは、PKCE認証フローでのOpenID Connectをサポートします。
Agent SDKのユースケース
次にAgent SDKの一般的な使用例を3つ挙げます。
-
カスタムエージェントクライアント:
この場合、ネイティブのAgentがまだ提供していない独自の機能や要件があります。 また、必要な機能を単純にAgentに埋め込むことはできないかもしれません。 例えば、コンタクト情報に対するエージェントの可視性を制限する必要があるかもしれません。 これは特定のセキュリティ要件のための可能性もあります。 エージェントからすべてのコンタクトデータをマスクする必要があるかもしれませんが、これはカスタムクライアントだけが楽にできます。 -
エージェントクライアントとサードパーティーアプリケーションの統合:
この場合、エージェントアプリケーションを別のアプリに埋め込むことはできません。 他のアプリは、多くの場合CRM、オンラインバンキングサイト、ホテル予約システムなどがあります。 このユースケースは、エージェントクライアントの機能は欲しいが、クライアントUIは必ずしも必要ない場合です。 SDKを使用すると、機能の一部を別のアプリケーションに構築できます。 ホテルのシステムを例にとると、スタッフは予約システムを通じて特定の部屋を呼び出すことができます。 -
組み込みアプリケーションのイベントサブスクリプション:
これは、特定のブラウザーのセキュリティ制限に準拠するために一般的に使用されます。 例えば、Googleは、別のWebサイトからiframedウィンドウにデータを投稿することを防ぎます。 このため、ウィンドウが2つのフレーム間でメッセージやデータを共有する方法が複雑になります。 例えば、Agentにiframeするヘルスケアアプリがあります。 エージェントがコンタクトを承認すると、そのコンタクトの電話番号を使って、ご自分のヘルスケアアプリでそのコンタクトの情報を調べたくなります。 これにより、エージェントへのコンタクト情報を自動的に表示することができます。 エージェントがGoogle Chromeを使用する場合、ヘルスケアアプリはAgentからコンタクトの電話番号を取得できません。 代わりに、Agentが使うのと同じであるVCイベントストリームにサブスクライブする必要があります。
SDKの内訳
Agent SDKは以下の小さなSDKで構成されています:
SDK | 詳細 |
---|---|
ACD |
このSDKは、音声通話、ボイスメール、ワークアイテム
![]() 以下は、ACD SDKに関する重要な技術的詳細です:
|
エージェント |
このSDKはセッション・イベントを処理するためのものです。 セッションを開始したり、進行中のセッションに参加したりすることができる。 その主な焦点は以下の通りです:
|
認証 |
このSDKは、セキュアな認証と認可を容易にします。 主に、CXone Mpower グローバル認証 重要な機能は次のとおりです:
![]() 以下は、Auth SDKに関する重要な技術的詳細です:
|
デジタル |
このSDKを使えば、デジタルコミュニケーションチャネルを統合できます。 メール、チャット、SMSなどの標準的なデジタルチャンネルに加え、WhatsAppのようなソーシャルメディアプラットフォームも使用できます。 設定したチャネルの数に応じて、マルチチャネルコミュニケーションが可能です。 ![]() 以下は、デジタルSDKに関する重要な技術的詳細です:
|
音声 | このSDKはIntegrated Softphone機能を提供します。 これはWebRTC用のラッパーです。 |
リソース
SDKを使用すると、独自のカスタム機能を作成できるため、サポートリソースは主にセルフサービスコンテンツとなります。 テクニカルサポートのオプションは、組織のNICEとのサポート契約に基づいています。 サポートオプションの詳細については、アカウント担当者に問い合わせてください。
このページに加え、セルフサービスコンテンツは開発者向けリソースに重点を置いています。 SDKパッケージには以下が含まれます:
-
各個別のSDKのREADMEには、使い始めの情報が記載されています。
-
基本的な機能を紹介するサンプルアプリケーション。
-
アプリケーションサンプルからのコード抜粋での使用例。
-
コードのコメント。
マルチソケットのサポート
以下は、テナント CXone Mpower環境におけるテクニカルサポート、請求、およびグローバル設定を管理するために使用される上位レベルの組織グループでUIキューが有効になっているかどうかに関連しています。
CXone Mpower UIキューは、WebSocketベースのアプローチでACDイベントを発生させます。 これは、get-next-eventのロングポーリングに代わるものです。 UIキューはマルチソケット接続をサポートしていません。同じイベントをAgentクライアントとAgentSDKの両方に送信することはできません。 したがって、Agentを使用してSDKの特定の機能をテストまたは検証する場合は、SDKを使用しているアプリケーションを必ず閉じてください。
イベント
以下は、お客様のアプリがリッスンできるイベントです。 イベントはそれらが利用可能なモジュール別に分類されています。
ACD SDK

インスタンス | イベント | 説明 |
---|---|---|
CXoneAcdClient.instance.contactManager |
conferenceCallEvent |
電話会議に関係するイベントをリッスンします。 |
|
onDispositionEvent |
インタラクションのディスポジション |
|
onTagsEvent |
インタラクションに関連するタグに関係するイベントを管理します。 |
|
voiceContactUpdateEvent |
音声コンタクトの更新をリッスンします。 |
|
voiceMailContactUpdateEvent |
ボイスメールのコンタクトの更新をリッスンします。 |
|
workItemContactUpdateEvent |
ワークアイテムのコンタクトの更新をリッスンします。 |
CXoneAcdClient.instance.notification |
onUpdateMessageEvent |
エージェントの新しいメッセージまたは通知をリッスンします。 |
CXoneAcdClient.instance.screenPop |
agentAssistSubject |
エージェントアシスタンスまたはコパイロットアプリケーションに関係するイベントを処理します。 |
|
contactScreenPopSubject |
着信コンタクト用のスクリーンポップに関係するイベントを処理します。 |
|
pageOpenSubject |
Webページを開くことに関係するイベントを処理します。 |
|
popUrlSubject |
新しいウィンドウまたはタブでのURLのポップアウトに関係するイベントを処理します。 |
|
runAppSubject |
アプリケーションの実行やカスタムフォームを開くことに関係するイベントを処理します。 |
CXoneAcdClient.instance.session |
agentLegEvent |
セッションでエージェントのレッグ |
|
agentStateSubject |
利用可能から利用不可のように、エージェントの状態の変化に関係するイベントを発するオブザーバブル。 |
|
naturalCallingSkillListSubject |
自然な通話が可能なスキルのリストの更新をリッスンします。 イベントタイプには以下が含まれます:SESSION_START、SESSION_END、JOIN_SESSION_SUCCESS、JOIN_SESSION_FAILURE。 |
|
networkOfflineSubject |
ネットワーク接続の問題に関係するイベントをリッスンします。 |
|
onAgentSessionChange |
エージェントのセッション ステータス(開始や終了など)の変化をリッスンします。 イベントタイプには以下が含まれます:SESSION_START、SESSION_END、JOIN_SESSION_SUCCESS、JOIN_SESSION_FAILURE。 |
CXoneAcdClient.instance.session.agentStateService |
agentStateSubject |
エージェントの状態変化についての更新を発生させるオブザーバブル。 |
エージェントSDK

インスタンス | イベント | 説明 |
---|---|---|
CXoneClient.instance |
autoSummaryService |
自動要約を管理するサービス。 |
|
copilotNotificationClient |
エージェントコパイロットのリアルタイム通知の受信を容易にします。 |
|
cxoneApiPerformanceMetrics |
CXone Mpower API からのパフォーマンスメトリクスをリッスンします。 |
CXoneClient.instance.agentSession |
agentSessionEndSubject |
現在のエージェントのセッションが終了したときにイベントを発生させます。 |
CXoneClient.instance.agentSetting |
mchAgentSettingsChangeEvent |
エージェントのMake Call Heard(MCH)設定の変更をリッスンします。 |
CXoneClient.instance.autoSummaryService |
onAutoSummaryReceived |
自動生成されたサマリーがコンタクト向けに受信されるときにトリガーされるオブザーバブル イベント。 |
CXoneClient.instance.commitment |
onCommitmentEvent |
エージェントのコミットメントに関係するイベントをリッスンします。 |
|
onCommitmentStatusEvent |
エージェントのコミットメントのステータスの変更をリッスンします。 |
|
onUpdateCommitments |
エージェントのコミットメントの更新をリッスンします。 |
CXoneClient.instance.contactManager |
onDigitalContactEvent |
CXone Mpowerのチャットセッションやアウトバウンドメッセージのようなデジタルコンタクトインタラクションの最新情報を提供します。 |
|
onDispositionEvent |
通話終了後、オンコール ディスポジションステータスの更新を提供します。 |
|
voiceContactUpdateEvent |
発信者名や電話番号など、進行中の音声通話の詳細をリアルタイムで更新します。 |
CXoneClient.instance.copilotNotificationClient |
onMessageNotification |
着信するコパイロットメッセージや通知をサブスクライブするために使用されるオブザーバブル/イベントエミッター。 イベントタイプには以下が含まれます:ADAPTIVE_CARD、RT_SUMMARY、NEXT_BEST_RESPONSE、NEXT_BEST_RESPONSE_ILLM、NEXT_BEST_RESPONSE_EXPERT、KB_ANSWERS、SENTENTENT、KB_LINKS、KB_IMAGES、TEXT、FINAL_SUMMARY、FINAL_SUMMARY_NOTES、KB_ANSWERS_VOICE、KB_IMAGES_VOICE、ENLIGHTEN_AGENT_COPILOTおよびAGENT_COPILOT。 |
CXoneClient.instance.directory |
directoryEvent |
エージェント、チーム、スキルのようなディレクトリーに関係するイベントをリッスンします。 CXone Mpowerの新規コンタクト、更新、権限の変更など、ディレクトリデータの変更に関する更新を提供します。 |
|
onUpdateSkillsEvent |
エージェントの割り当てられたスキルの更新をリッスンします。 |
CXoneClient.instance.directory.dynamicDirectory |
searchDirectoryResult |
システム内のディレクトリーで社員や部署などを調べた後、結果が戻ってくるのを待ちます。 |
CXoneClient.instance.indicator |
agentIndicatorsEvent |
可用性、現在のアクティビティーおよびカスタムエージェントのステータスインジケーターのようなエージェントインジケーターの更新を提供するイベント。 |
|
contactIndicatorsEvent |
追加情報を収集するためにカスタムフォームを表示するようなアクションをトリガーする可能性のあるコンタクトインジケーターの更新を提供するイベント。 |
CXoneClient.instance.notification |
onCXoneNotificationEvent |
CXone Mpower プラットフォームからの通知をリッスンします。 |
CXoneClient.instance.screenPop |
contactScreenPopSubject |
既存の通話の発信者情報を持つWebページを開くトリガーとなるイベント。 |
|
pageOpenSubject |
現在の通話とは必ずしも関係のないWebページを開くトリガーとなるイベント。 |
|
popUrlSubject |
既存の通話に関連するWebページを開くトリガーとなるイベント。 |
|
runAppSubject |
アプリの起動、または通話用のカスタムフォームの表示をトリガーするイベント。 |
CXoneClient.instance.session |
agentLegEvent |
着信または発信のような、エージェントの特定のコールレッグの更新をリッスンします。 |
CXoneClient.instance.session.agentStateService |
agentStateSubject |
CXone Mpowerでエージェントのアベイラビリティステータスと状態の変化に関するライブアップデートを提供するイベント。 |
CXoneClient.instance.skillActivityQueue |
agentQueueSubject |
キュー名、コール数、エージェントのアベイラビリティのようなエージェントの割り当てられたキュー情報の更新を提供するイベント。 |
|
agentQueuesDetailSubject |
平均待機時間、サービスレベル契約(SLA)、エージェントのパフォーマンスなどのメトリクスを含む、エージェントの割り当てられたキューに関する詳細な最新情報を提供するイベント。 |
|
skillActivityEvent |
コールキューの長さ、平均待ち時間、利用可能なエージェントのようなスキルアクティビティメトリックスに関する最新情報を提供するイベント。 |
認証SDK

インスタンス | イベント | 説明 |
---|---|---|
CXoneAuth.instance |
onAuthStatusChange |
ユーザー認証ステータスの変更をリッスンするオブザーバブル。 イベントのタイプには以下が含まれます:AUTHENTICATED、AUTHENTICATING、NOT_AUTHENTICATED、AUTHENTICATION_FAILED、REFRESH_TOKEN_SUCCESS。 |
デジタルSDK

インスタンス | イベント | 説明 |
---|---|---|
CXoneDigitalClient.instance.digitalContactManager |
onDigitalContactEvent |
デジタルコンタクトに関係するイベントをリッスンします。 イベントのタイプには以下が含まれます:case_inbox_assignee_changed、ase_status_changed、essage_added_into_case、case_inbox_assigned、case_inbox_unassignedmessage_created、MESSAGE_NOTE_CREATED、MESSAGE_NOTE_DELETED、MESSAGE_NOTE_UPDATED、SENDER_TYPING_START、SENDER_TYPING_END、MESSAGE_PREVIEW。 |
|
onDigitalContactNewMessageEvent |
デジタルコンタクトからの新しいメッセージをリッスンします。 |
|
onDigitalContactUserTypingPreviewEvent |
デジタルコンタクトからの入力プレビューイベントをリッスンします。 イベントのタイプには以下が含まれます:case_inbox_assignee_changed、ase_status_changed、essage_added_into_case、case_inbox_assigned、case_inbox_unassignedmessage_created、MESSAGE_NOTE_CREATED、MESSAGE_NOTE_DELETED、MESSAGE_NOTE_UPDATED、SENDER_TYPING_START、SENDER_TYPING_END、MESSAGE_PREVIEW。 |
音声SDK

インスタンス | イベント | 説明 |
---|---|---|
CXoneVoiceClientWrapper.instance |
onCallStatusChanged |
コールステータスの変更に関係するイベントを処理します。 |
|
onConnectionStatusChanged |
音声接続ステータスの変更に関係するイベントを処理します。 |