openFrameAPI - クライアント

  • リリースバージョン: Zurich
  • 更新日 2025年07月31日
  • 所要時間:64分
  • openFrameAPI は、OpenFrame と対話するメソッドを提供します。OpenFrame は、コミュニケーションパートナーがシステムを ServiceNow プラットフォームに統合するために使用できる、非常に一般的なフレームです。

    コア要件の 1 つが、パートナーサブシステムとシームレスに接続できるさまざまなドメインから取得したコードをつないで提供する機能です。このクロスドメイン接続は、クロスドメインの問題を発生させることなく接続とコールバックを通信システムに登録するために必要です。

    OpenFrame には 2 つの重要な部分があります。1つは ServiceNow アプリケーション(TopFrameと呼ばれる)にあり、このAPIはパートナーアプリケーションから供給されます。この API には、TopFrame と通信し、 OpenFrame の視覚的機能を制御するために必要なメソッドがあります。
    注:
    OpenFrame ライブラリへの参照を最新に保つには、https://[servicenow instance]/scripts/openframe/latest/openFrameAPI.min.js のリソース URI を使用します。

    openFrameAPI - getAWAAgentPresence(文字列の成功、文字列の失敗)

    ログインしているエージェントの現在の在席状況を返します。

    表 : 1. パラメーター
    名前 タイプ 説明
    正常終了 文字列 メソッドが成功した場合、呼び出すコールバック関数の名前。
    失敗 文字列 メソッドが失敗した場合に呼び出すコールバック関数の名前。
    表 : 2. 戻り値
    タイプ 説明
    presence 結果は、OpenFrame インフラストラクチャによって成功コールバック関数に渡されます。

    データタイプ: オブジェクト

    "presence": {  
      "available": Boolean, 
      "channels": [Array],
      "name": "String", 
      "sys_id": "String"
    }
    presence.available 関連付けられたエージェントが利用可能かどうかを示すフラグ。
    有効な値:
    • true:エージェントは利用可能です。
    • false:エージェントは利用できません。

    データタイプ:ブーリアン

    presence.channels エージェントとの利用可能なコミュニケーションチャネルのリスト。

    データタイプ:オブジェクトのアレイ

    "channels": [
      { 
        "available": Boolean,
        "name": "String",
        "restrict_update": Boolean,
        "service_channel_type": "String",
        "sys_id": "String"
      }
    ]
    presence.channels.available チャネルが利用可能かどうかを示すフラグ。
    有効な値:
    • true:チャネルは利用可能です。
    • false:チャネルは利用できません。

    データタイプ:ブーリアン

    presence.channels.name チャットや電話などのチャネルの名前。

    データタイプ:文字列

    presence.channels.restrict_update ユーザーがチャネルの更新を制限できるかどうかを示すフラグ。
    有効な値:
    • true:ユーザーはチャネルの更新を制限できます。
    • false:ユーザーはチャネルの更新を制限できません。

    データタイプ:ブーリアン

    presence.channels.service_channel_type サービスチャネルのタイプ。

    データタイプ:文字列

    presence.channels.sys_id チャネルレコードのSys_id。

    データタイプ:文字列

    テーブル:サービスチャネル [awa_service_channel]

    presence.name エージェントの在席状況の名前。

    データタイプ:文字列

    presents.sys_id 在席状況レコードのSys_id。

    データタイプ:文字列

    表:在席状況 [awa_presence_state]

    次のコード例は、このメソッドを呼び出す方法を示しています。

    function failure(data)
    {
      console.log("failure: " + JSON.stringify(data));
    }
     
    function success(data)
    {
      console.log("success: " + JSON.stringify(data));
    }
     
    openFrameAPI.getAWAAgentPresence(success, failure)

    成功への応答コールバック関数:

    success: { 
      "presence": { 
        "name": "Available", 
        "sys_id": "0b10223c57a313005baaaa65ef94f970", 
        "available": true, 
        "channels": [ 
          { 
            "name": "Chat", 
            "available": true, 
            "sys_id": "27f675e3739713004a905ee515f6a7c3", 
            "restrict_update": false, 
            "service_channel_type": "chat" 
          } 
        ] 
      } 
    }

    openFrameAPI - hide()

    TopFrame で OpenFrame を非表示にします。

    表 : 3. パラメーター
    名前 タイプ 説明
    なし
    表 : 4. 返される内容
    タイプ 説明
    なし
    openFrameAPI.hide()

    openFrameAPI - init(オブジェクト config, 関数 successCallback, 関数 failureCallback)

    OpenFrame を初期化します。これは、最初に呼び出すメソッドでなければなりません。

    このメソッドは、TopFrame との通信を初期化し、 config パラメーターで渡されたすべてのビジュアル要素を初期化します。

    表 : 5. パラメーター
    名前 タイプ 説明
    config オブジェクト 初期化プロセス中に使用する名前と値のペア。
    可能なキー:
    • 高さ
    • subTitle
    • title
    • タイトルアイコン
    すべてのキーはオプションです。これらのキーと値のペアを設定しない場合は、空のオブジェクトを渡します。
    successCallback 関数 init メソッドが成功した場合に使用するコールバック関数の名前。システムに保存されている OpenFrame 構成 は、コールバック関数にパラメーターとして渡されます。
    failureCallback 関数 init メソッドが失敗した場合に使用するコールバック関数の名前。
    表 : 6. 戻り値
    タイプ 説明
    なし
    var config = {
    height: 300,
    width: 200
    }
    function handleCommunicationEvent(context) {
    console.log("Communication from Topframe", context);
    }
    function initSuccess(snConfig) {
    console.log("openframe configuration", snConfig);
    //register for communication event from TopFrame
    openFrameAPI.subscribe(openFrameAPI.EVENTS.COMMUNICATION_EVENT,
    handleCommunicationEvent);
    }
    function initFailure(error) {
    console.log("OpenFrame init failed...", error);
    }
    openFrameAPI.init(config, initSuccess, initFailure);

    openFrameAPI - isVisible(関数 callback)

    OpenFrame が TopFrame に表示されるかどうかを確認します。

    表 : 7. パラメーター
    名前 タイプ 説明
    callback 関数 true または false の値を持つパラメーターがコールバック関数に返されます。OpenFrame が表示される場合は true、表示されない場合は false です。
    表 : 8. 返される内容
    タイプ 説明
    なし
    function callback(isVisible) {
    console.log(isVisible)
    }
    openFrameAPI.isVisible(callback)

    openFrameAPI - openCustomURL(文字列 details)

    UI16 インターフェイスでカスタム URL を開きます。

    表 : 9. パラメーター
    名前 タイプ 説明
    Url 文字列 カスタム URL のテキスト。

    最大サイズ:2083 文字

    表 : 10. 戻り値
    タイプ 説明
    なし
    openFrameAPI.openCustomURL('10_cool_things.do');
    

    openFrameAPI - openServiceNowForm(オブジェクト details)

    フォームの URL を開きます。

    エージェントが着信コールを受信すると、OpenFrame ウィンドウにアカウント、連絡先、コンシューマーなどの情報が表示されます。OpenFrame ウィンドウのリンクをクリックすると、対応するレコードが表示されます。
    • プラットフォームインターフェイスの場合、この API では TopFrame にフォーム URL が開きます。
    • エージェントワークスペース の場合、この API はインタラクションタブの管理をサポートします。エージェントワークスペース では、インタラクションレコードが親タブに開き、指定されたエンティティレコードがインタラクションタブの下の子タブで開きます。
    表 : 11. パラメーター
    名前 タイプ 説明
    details オブジェクト 開くフォームの URL を特定するキーと値のペア。
    "details": {
      "entity": "String";
      "interaction_sys_id": "String";
      "query": "String"
    }
    details.entity 文字列 テーブルまたはエンティティの名前。
    details.interaction_sys_id 文字列 オプション。エージェントワークスペース で親タブとして開くインタラクションレコードの sys_id。
    注:
    プラットフォームインターフェイスでは、interaction_sys_id は無視されます。
    details.query 文字列 開くレコードを特定するクエリー。例:query:'sys_id=<record_sys_id>'
    表 : 12. 返される内容
    タイプ 説明
    なし

    次の例は、プラットフォームでの基本的な使い方を示しています。

    openFrameAPI.openServiceNowForm({entity:'customer_account', 
    query:'sys_id=447832786f0331003b3c498f5d3ee452', 'interaction_sys_id':'3be092313b711300758ce9b534efc4dd'});

    次の例は、query パラメーターを使用して、フォームで提供されたデータを使って sysparm_query とエンコードされたクエリーで新しいレコードを作成し、Workspace の姓と名のフィールドに入力する方法を示しています。

    openFrameAPI.openServiceNowForm({ entity: 'sys_user',
    query: 'sys_id=-1&sysparm_query=first_name=Ivan^last_name=Greggor' });

    openFrameAPI - openServiceNowFormwithChildTab()

    ワークスペースで呼び出された場合は子タブを持つ ServiceNow フォームを開き、UI16 インターフェイスで呼び出された場合はエンティティを開きます。

    表 : 13. パラメーター
    名前 タイプ 説明
    OpenServiceNowFormwithChildTab オブジェクト ワークスペースで呼び出された場合に API が子タブを持つ ServiceNow フォームを開くか、UI16 インターフェイスで呼び出された場合にエンティティを開くかを定義します。
    openFrameAPI.openServiceNowFormwithChildTab({
      entity: "String",
      sys_id: String", 	
      parent_entity: "String",	
      parent_entity_sys_id: "String"
    })
    openServiceNowFormwithChildTab.entity 文字列 開くレコードを含むテーブルの名前です。
    openServiceNowFormwithChildTab.sys_id 文字列 開くレコードの sys_id。
    openServiceNowFormwithChildTab.parent_entity 文字列 親タブとして開くテーブルの名前。
    openServiceNowFormwithChildTab.parent_entity_sys_id 文字列 開く親レコードのSys_id。
    表 : 14. 戻り値
    タイプ 説明
    なし

    次の例では、親エンティティを構成されたワークスペースの親タブとして開くか、UI16 で呼び出された場合はエンティティのみを開きます。

    openFrameAPI.openServiceNowFormwithChildTab({
      entity: "customer_account", 
      sys_id: "447832786f0331003b3c498f5d3ee452", 	
      parent_entity: "interaction", 
      parent_entity_sys_id: "3be092313b711300758ce9b534efc4dd"
    });

    openFrameAPI - openServiceNowList(オブジェクト details)

    UI16 インターフェイスでリスト URL を開きます。

    表 : 15. パラメーター
    名前 タイプ 説明
    details オブジェクト リスト URL を開くときに使用するコンテンツを説明するキーと値のペア。

    有効な値:

    表 : 16. 戻り値
    タイプ 説明
    なし
    openFrameAPI.openServiceNowList({entity:'case', query:'active=true'});

    openFrameAPI - setFrameMode(mode)

    OpenFrame のモードを設定します。

    この API で渡されるモードには次のような機能があります。
    • ヘッダーに適切なアイコン (折りたたみまたは展開) を設定する
    • CTI に対して以下の関連イベントを発生させる
      • openFrameAPI.EVENTS.COLLAPSE
      • openFrameAPI.EVENTS.EXPAND
    表 : 17. パラメーター
    名前 タイプ 説明
    モード 文字列 OpenFrame のモードを設定します。オプションは以下のとおりです。
    1. openFrameAPI.FRAME_MODE.COLLAPSE
    2. openFrameAPI.FRAME_MODE.EXPAND
    表 : 18. 返される内容
    タイプ 説明
    なし
    openFrameAPI.setFrameMode(openFrameAPI.FRAME_MODE.COLLAPSE);
    

    openFrameAPI - setHeight(height)

    OpenFrame の高さを設定します。

    表 : 19. パラメーター
    名前 タイプ 説明
    Height 数字 高さ (ピクセル)
    表 : 20. 返される内容
    タイプ 説明
    なし
    openFrameAPI.setHeight(100);

    openFrameAPI - setICContext(String Type, Object <Context>)

    クライアントのインタラクションコントロールに関連するコンテキストデータを設定します。このコンテキストデータを使用して、OpenFrame に表示するクライアント UI を決定します。

    インタラクティブコントロールの詳細については、「 Interaction Controls Component」を参照してください。

    インタラクションレコードの詳細については、「 CSM voice interaction record page」を参照してください。

    表 : 21. パラメーター
    名前 タイプ 説明
    タイプ 文字列 設定するコンテキストデータのタイプ。
    有効な値:
    • activeCall:進行中のアクティブコールコンポーネントのコンテキストを設定します。このコンテキストタイプを渡す場合は、Contextパラメーターとして activeCall[] JSON も渡す必要があります。

      アクティブなコールコンポーネント

    • idleState: 現在のユーザーのアイドル状態機能を設定します。これを設定すると、OpenFrame にアイドル状態の UI(ダイヤルパッド)が表示されます。このコンテキストタイプを渡す場合は、Contextパラメーターとして <idleState>{} JSON も渡す必要があります。

      キーパッドコンポーネント

    • searchTargetList:電話帳コンテキストを設定します。これを設定すると、アクティブなコールコンポーネントで コールの転送 が有効になります。このコンテキストタイプを渡す場合は、 searchTargetList[] JSON を Context パラメーターとして渡す必要もあります。

      転送コールコンポーネント
    <コンテキスト> オブジェクト 設定するコンテキストデータ。各コンテキストデータタイプには、可能な入力データの異なるセットがあります。
    有効な Context データオブジェクト:
    • activeCall
    • <idleState>
    • searchTargetList
    activeCall オブジェクトのアレイ アクティブなコールに関する詳細。各オブジェクトは、進行中のアクティブなコールを表します。
    "activeCall": [
      { 
        "currentParticipant": {Object},
        "customPayload: {Object},
        "direction": "String",
        "externalId": "String",
        "nowRecordId": "String",
        "nowRecordTable": "String",
        "participants": [Array],
        "type": "String"
      }
    ]
    activeCall.currentParticipant オブジェクト 必須。現在の参加者のコール機能とコールステータスに関する詳細。
    "currentParticipant": {
      "actor": "String",
      "callStartTime": "String",
      "capabilities": {Object},
      "connectedTime": "String",
      "custom-capability-state-1": Boolean,
      "flagged": Boolean,
      "held": Boolean,
      "id": "String",
      "muted": Boolean,
      "name": "String",
      "paused": Boolean,
      "recording": "String",
      "state": "String",
      "wrapUP": {Object}
    }
    activeCall.currentParticipant.actor 文字列 コールの参加者のタイプ。
    有効な値:
    • agent
    注:
    今後追加される他の参加者タイプ。
    activeCall.currentParticipant.callStartTime 文字列 コールが開始された日時。

    時間標準:UTC

    形式:RSS - "<曜日>, dd mmm yyyy hh:MM:ss GMT" 例:「Wed, 17 Dec 2024 05:23:41 GMT」

    activeCall.currentParticipant.capabilities オブジェクト 現在の (エージェント) 参加者が通話中に実行できる機能の詳細。有効になっている機能のアクティブなコールコンポーネントには、関連するアイコンが表示されます。

    機能アイコンのあるアクティブなコールコンポーネントのスクリーンショット
    "capabilities": {
      "dtmf": Boolean,
      "endCall": Boolean,
      "flag": Boolean,
      "hold": Boolean,
      "leaveAndTransfer": Boolean,
      "mergeCall": Boolean,
      "mute": Boolean,
      "resumeRecording": Boolean,
      "pauseRecording": Boolean,
      "startRecording": Boolean,
      "stopRecording": Boolean,
      "transfer": Boolean
    }
    activeCall.currentParticipant.capabilities。DTMF ブール エージェントが現在のコールに対してデュアルトーンマルチ周波数 (DTMF) 機能を持っているかどうかを示すフラグ。
    有効な値:
    • true:参加者には DTMF 機能があります。
    • false:参加者には DTMF 機能がありません。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。エンドコール ブール 関連付けられた参加者がコールを終了できるかどうかを示すフラグ。
    有効な値:
    • true:参加者はコールを終了できます。UI で [コールを終了] ボタンが有効になっている。
    • false:参加者はコールを終了できません。UI で [コールを終了] ボタンが無効になっています。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。旗 ブール 参加者が音声品質の問題などの品質の問題についてコールにフラグを立てることができるかどうかを示すフラグ。
    有効な値:
    • true:参加者は問題のあるコールにフラグを付けることができます。
    • false:参加者は問題のあるコールにフラグを設定できません。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。持つ ブール 参加者がコールを保留にできるかどうかを示すフラグ。
    有効な値:
    • true:参加者はコールを保留にすることができます。保留ボタンは UI で有効になっています。
    • false:参加者は通話を保留にできません。UI で保留ボタンが無効になっています。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。leaveAndTransfer ブール 参加者がコールを別のエージェントに転送して、コールをドロップオフできるかどうかを示すフラグ。相談を受けるユーザーがコールの所有者でない場合の相談転送などのアクションに対して、この機能を有効にします。
    有効な値:
    • true:参加者はコールを転送およびドロップオフできます。
    • false:参加者はコールを転送およびドロップオフできません。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。MergeCall ブール 参加者がコールを結合できるかどうかを示すフラグ。この機能は、参加者のコールレッグがマージ可能な場合に使用します。
    有効な値:
    • true:参加者はコールを結合できます。UI で [結合] ボタンが有効になります。
    • false:参加者はコールを結合できません。UI では結合ボタンが無効になっています。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。唖 ブール 参加者がコールをミュートできるかどうかを示すフラグ。
    有効な値:
    • true:参加者はコールをミュートできます。ミュートボタンが UI で有効になっています。
    • false:参加者はコールをミュートできません。UI でミュートボタンが無効になっています。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。resumeRecording ブール 参加者が通話の記録を再開できるかどうかを示すフラグ。
    有効な値:
    • true:参加者は通話の記録を再開できます。[記録を一時停止] ボタンが UI で有効になっています。
    • false:参加者は通話の記録を再開できません。UI で [記録を一時停止] ボタンが無効になっています。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。記録の一時停止 ブール 参加者が通話の録音を一時停止できるかどうかを示すフラグ。
    有効な値:
    • true:参加者は通話の記録を一時停止できます。[記録を一時停止] ボタンが UI で有効になっています。
    • false:参加者は通話の記録を一時停止できません。UI で [記録を一時停止] ボタンが無効になっています。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。記録の開始 ブール 参加者がコールの記録を開始できるかどうかを示すフラグ。
    有効な値:
    • true:参加者は通話の記録を開始できます。[記録] ボタンが UI で有効になっています。
    • false:参加者は通話の記録を開始できません。UI で記録ボタンが無効になっています。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。記録を停止 ブール 参加者がコールの記録を停止できるかどうかを示すフラグ。
    有効な値:
    • true:参加者は通話の録音を停止できます。[記録の停止] ボタンが UI で有効になっています。
    • false:参加者は通話の記録を停止できません。UI で [記録の停止] ボタンが無効になっています。

    デフォルト値:false

    activeCall.currentParticipant.capabilities。移転 ブール 参加者がコールを転送できるかどうかを示すフラグ。
    有効な値:
    • true:参加者はコールを転送できます。転送ボタンが UI で有効になります。
    • false:参加者はコールを転送できません。転送ボタンは UI で無効になっています。

    デフォルト値:false

    activeCall.currentParticipant.connectedTime 文字列 通話が最初に接続された日時。

    タイムベース:UTC

    形式:RSS - "<曜日>, dd mmm yyyy hh:MM:ss GMT" 例:「Wed, 17 Dec 2024 05:23:41 GMT」

    activeCall.currentParticipant.custom-capability-state-1 ブール コールに現在参加者がいるかどうかを示すフラグ。
    有効な値:
    • true:現在の参加者。
    • false:現在カンファレンスに参加している参加者がいません。

    デフォルト値:false

    activeCall.currentParticipant.flagged ブール コールに音声品質の問題などの問題に対するフラグが付けられているかどうかを示すフラグ。
    有効な値:
    • true:コールに問題のフラグが付けられています。
    • false:コールに問題のフラグが付けられていません。

    デフォルト値:false

    activeCall.currentParticipant.held ブール 参加者の保留ステータスを示すフラグ。
    有効な値:
    • true:参加者は保留中です。
    • false:参加者は保留中ではありません。

    デフォルト値:false

    activeCall.currentParticipant.id 文字列 必須。エージェントのsys_idなど、関連付けられた参加者レコードのSys_id。

    テーブル: ユーザー [sys_user]

    activeCall.currentParticipant.muted ブール 参加者のミュート状態を示すフラグ。
    有効な値:
    • true:参加者はミュートされます。
    • false:参加者はミュート状態ではありません。

    デフォルト値:false

    activeCall.currentParticipant.name 文字列 参加者の名前。
    activeCall.currentParticipant.paused ブール 参加者の一時停止状態を示すフラグ。
    有効な値:
    • true:参加者が一時停止しています。
    • false:参加者は一時停止していません。

    デフォルト値:false

    activeCall.currentParticipant.recording 文字列 コールの現在の記録ステータス。
    有効な値:
    • in_progress
    • なし
    activeCall.currentParticipant.wrapUP オブジェクト 将来の使用。
    activeCall.customPayload オブジェクト OpenFrame イベントの一部として OpenFrame に渡すカスタムペイロード。これは自由形式のオブジェクトであり、ボタンやテキストの追加など、アクティブなコールコンポーネントをカスタマイズするために必要なデータを含めることができます。
    activeCall.direction 文字列 関連付けられた参加者のコールの方向。
    有効な値:
    • 受信
    • 送信
    activeCall.externalId 必須。関連付けられた外部システム上の現在のアクティブなコールを識別する一意の値。
    activeCall。現在のレコード ID 文字列 必須。アクティブなコールレコードのSys_id。

    テーブル:インタラクション [interaction] ベースシステムでのみサポートされているオプション。

    activeCall。nowRecordTable 文字列 必須。アクティブなコールが属するテーブル。

    テーブル:インタラクション [interaction] ベースシステムでのみサポートされているオプション。

    activeCall。参加者 オブジェクトのアレイ 必須。コールの追加参加者のリスト。参加者は、エージェント、顧客、エージェントでも顧客でもない外部の人物、またはキューでもかまいません。
    "participants": [
      {
        "actor": "String",
        "ani": "String",
        "address": "String",
        "capabilities": {Object},
        "callStartTime" "String",
        "connectedTime": "String",
        "customPayload": {Object},
        "dnis": "String",
        "held": Boolean,
        "heldAtTime": "String",
        "id": "String",
        "muted": Boolean,
        "name": "String",
        "requestACW": Boolean,
        "requireWrapup": Boolean,
        "state": "String"
      }
    ]
    activeCall。参加者。俳優 文字列 関連付けられた参加者のアクターのタイプ。
    たとえば、次のようになります。
    • agent
    • カスタマー
    • 外部
    • キュー
    activeCall。参加者。アニ 自動番号識別。電話の受信者に表示する電話番号。
    activeCall。参加者。住所 文字列 参加者の電話番号。
    activeCall。参加者。資格 オブジェクト 参加者が関連付けられたコールに対して持つ機能のタイプに関する詳細。
    "capabilities": {
      "endCall": Boolean,
      "hold": Boolean,
      "mute": Boolean
    }
    activeCall。参加者。資格。エンドコール ブール 関連付けられた参加者がコールを終了できるかどうかを示すフラグ。
    有効な値:
    • true:参加者はコールを終了できます。UI で [コールを終了] ボタンが有効になっている。
    • false:参加者はコールを終了できません。UI で [コールを終了] ボタンが無効になっています。

    デフォルト値:false

    activeCall。参加者。資格。持つ ブール 参加者がコールを保留にできるかどうかを示すフラグ。
    有効な値:
    • true:参加者はコールを保留にすることができます。保留ボタンは UI で有効になっています。
    • false:参加者は通話を保留にできません。UI で保留ボタンが無効になっています。

    デフォルト値:false

    activeCall。参加者。資格。唖 ブール 参加者がコールをミュートできるかどうかを示すフラグ。
    有効な値:
    • true:参加者はコールをミュートできます。ミュートボタンが UI で有効になっています。
    • false:参加者はコールをミュートできません。UI でミュートボタンが無効になっています。

    デフォルト値:false

    activeCall。参加者。connectedTime 文字列 必須。参加者が最初にコールにつながった日時。

    時間標準:UTC

    形式:RSS - "<曜日>, dd mmm yyyy hh:MM:ss GMT" 例:「Wed, 17 Dec 2024 05:23:41 GMT」

    activeCall。参加者。カスタムペイロード オブジェクト OpenFrame カスタムイベントの一部として OpenFrame に渡すカスタムペイロード。これは自由形式のオブジェクトであり、ボタンやテキストの追加など、アクティブなコールコンポーネントをカスタマイズするために必要なデータを含めることができます。
    activeCall。参加者。DNI 文字列 ダイヤル番号識別サービス。参加者がダイヤルした電話番号。
    activeCall。参加者。開催 ブール 参加者の保留ステータスを示すフラグ。
    有効な値:
    • true:参加者は保留中です。
    • false:参加者は保留中ではありません。

    デフォルト値:false

    activeCall。参加者。heldAtTime 文字列 参加者のコールへの接続が保留になった日時。

    タイムベース:UTC

    形式:RSS - "<曜日>, dd mmm yyyy hh:MM:ss GMT" 例:「Wed, 17 Dec 2024 05:23:41 GMT」

    activeCall。参加者。身分証明書 文字列 必須。Contact Center as a Service (CCaaS) システムからの参加者の一意の ID。
    activeCall。参加者。ミュート ブール 参加者のミュート状態を示すフラグ。
    有効な値:
    • true:参加者はミュートされます。
    • false:参加者はミュート状態ではありません。

    デフォルト値:false

    activeCall。参加者。名前 文字列 参加者の名前。
    activeCall。参加者。リクエストACW ブール エージェントユースケース専用: activeCall.currentParticipant.actor が「agent」の場合にのみ有効です。

    参加者が顧客をフォローアップする必要があるかどうかを示すフラグ。

    有効な値:
    • true:フォローアップが必要です。
    • false:フォローアップは必要ありません。

    デフォルト値:false

    activeCall。参加者。requireWrapup ブール エージェントユースケース専用: activeCall.currentParticipant.actor が「agent」の場合にのみ有効です。

    呼び出しの完了後に 最終作業 コンポーネントを表示するかどうかを示すフラグ。


    最終作業コンポーネントのスクリーンショット
    有効な値:
    • true:コール完了時に 最終作業 コンポーネントを表示します。
    • false:コール完了時に 最終作業 コンポーネントを表示しません。

    デフォルト値:false

    activeCall。参加者。状態 文字列 参加者のコールレグのステータス。アクティブなコールコンポーネントの電話番号の下に表示されます。
    ステータスが表示されているアクティブなコールウィンドウ
    これは、次のような意味のあるテキストにすることができます。
    • アラート
    • 接続
    • 呼び出し中
    activeCall.type 文字列 コールのタイプ。
    有効な値:
    • call
    • コールバック要求
    • ボイスメール
    <idleState> オブジェクト エージェントのアイドル状態コンテキストについて説明します。このコンテキスト データは、エージェントがコールを待機しているときにダイヤルパッドに表示される情報と、エージェントがこのダイヤルパッドを介して使用できる機能を決定します。
    <idleState> {
     "capability": {Object},
     "currentInboundId": "String",
     "dialpadInfoMessage": {Object},
     "enableState": {Object}
    }
    <idleState>.capability オブジェクト 現在のユーザーのアイドル状態機能の説明。
    "capability": {
      "globalContactSearch": Boolean,
      "logOut": Boolean,
      "outBoundCall": Boolean
    }
    <idleState>.capability です。globalContactSerarch ブール アイドル状態のときにグローバル連絡先リストを表示するかどうかを示すフラグ。
    有効な値:
    • true:グローバル連絡先リストを表示します。
    • false:グローバル連絡先リストを表示しません。

    デフォルト値:false

    <idleState>.capability です。ログアウト ブール ユーザーがアイドル状態でログアウトできるかどうかを示すフラグ。
    有効な値:
    • true:コールがアイドル状態のときにユーザーはログアウトできます。ログアウトボタンがダイヤルパッドに表示されます。
    • false:コールがアイドル状態のときは、ユーザーはログアウトできません。

    デフォルト値:false

    <idleState>.capability です。outBoundCall ブール ユーザーがアイドル状態のときに発信コールを実行できるかどうかを示すフラグ。
    有効な値:
    • true:コールがアイドル状態のときに、ユーザーは発信コールを行うことができます。
    • false:コールがアイドル状態の場合、ユーザーは発信コールを行うことができません。

    デフォルト値:false

    <idleState>。currentInboundId 文字列 発信コールインタラクションの作成に使用されるプロバイダーアプリケーションの受信識別子。

    テーブル:プロバイダーチャネル ID [sys_cs_provider_application] テーブルの id フィールドにあります。

    デフォルト:ベースシステムプロバイダーアプリケーション

    <idleState>。ダイヤルパッド情報メッセージ オブジェクト 現在選択されているキューなど、ユーザーのダイヤルパッドに表示する情報メッセージの詳細。
    "dialpadInfoMessage": {
       "label": "String",
       "value": "String"
     }

    次の例では、labelは [選択されたキュー:] で、value[顧客からの問い合わせ] です。[選択したキュー: 顧客照会] で label または value パラメーターを使用することもできます。


    情報メッセージを含むダイヤルパッドのスクリーンショット
    <idleState>。dialpadInfoMessage です。ラベル 文字列 ダイヤルパッドに表示するフリーフォームラベル。
    <idleState>。dialpadInfoMessage です。価値 文字列 ダイヤルパッドのラベルの後に表示する自由形式のメッセージテキスト。
    <idleState>。enableState オブジェクト ダイヤルパッドのボタンの有効化状態に関する詳細。
    "enableState": {
       "logOut": Boolean,
       "outBoundCall": Boolean
     }
    <idleState>。enableState。ログアウト ブール アイドル状態で UI のログアウトボタンを有効にするかどうかを示すフラグ。
    有効な値:
    • true:アイドル状態のときにログアウトボタンを表示します。
    • false:アイドル状態の間はログアウトボタンを表示しません。

    デフォルト値:false

    <idleState>。enableState。outBoundCall ブール アイドル状態で UI の発信コールボタンを有効にするかどうかを示すフラグ。
    有効な値:
    • true:アイドル状態のときに発信コールボタンを表示します。
    • false:アイドル状態の間、発信コールボタンを表示しません。

    デフォルト値:false

    searchTargetList オブジェクトのアレイ ServiceNowテーブルの転送関連データの詳細。
    "searchTargetList": [
      {
        "externalId": "String",
        "nowRecordId": "String",
        "nowRecordTable": "String",
        "participantID": "String",
        "targets": [Array]
      }
    ]
    searchTargetList。externalId 文字列 CCaaS システム上の関連するコールの一意の識別子。
    searchTargetList。現在のレコード ID 文字列 必須。searchTargetList が属するレコードのSys_id。
    注:
    インタラクション [interaction] テーブルのレコードのみが現在サポートされています。
    searchTargetList。nowRecordTable 文字列 必須。searchTargetList が属する ServiceNow テーブル。

    テーブル:有効な値:「interaction」のみ

    searchTargetList。participantID 文字列 CCaaS システムからの参加者の一意の識別子。
    searchTargetList。ターゲット オブジェクトのアレイ コールの転送先となるエージェント、外部ユーザー、またはキューに関する詳細。
    "targets": [
      {
        "payload": {Object},
        "transferSubtypes": [Array],
        "type": "String"
      }
    ]
    searchTargetList。ターゲット。ペイロード オブジェクト 転送コールコントロールに表示する情報の詳細。

    次に、コールを転送できるエージェントのリストを含む [ コールを転送 ] コントロールの例を示します。スクリーンショットは、 list.payload の各パラメーターが制御する UI の要素を示しています。


    パラメーターの関連付けを示す [コールを転送] ウィンドウのスクリーンショット
    "payload": {
      "list": [Array]
    }

    この例は、エージェントペイロード ("searchTargetList.targets.type" : "agent") を示しています。

    "payload": {
      "list": [
        {
          "name": "Alice Anderson",
          "id": "agent1Id",
          "hasStats": "true",
          "presence": "available",
          "moreInfo": [
            {
              "label": "Skill",
              "value": "CRM certified"
            }
          ]
        }
      ]
    }

    次に、キューペイロード ("searchTargetList.targets.type" : "queue") の例を示します。

    "payload": {
      "list": [
        {
          "name": "Product Support Queue",
          "id": "queue1Id",
          "hasStats": "true",
          "moreInfo": [
            {
              "label": "Skill",
              "value": "10sec"
            },
            {
              "label": "Queue Skill",
              "value": "German"
            }
          ]
        },
        {
          "name": "Billing Queue",
          "id": "queue2Id",
          "hasStats": "true",
          "moreInfo": [
            {
               "label": "Skill",
               "value": "10sec"
            }
          ]
        }
      ]
    }
    searchTargetList。ターゲット。ペイロード。リスト オブジェクトのアレイ ターゲットのタイプごとのペイロードに関する詳細。
    "list": [
      {
        "hasStats": Boolean,
        "id": "String",
        "moreInfo": [Array],
        "name": "String",
        "presence": "String"
      }
    ]
    searchTargetList。ターゲット。ペイロード。リスト。hasStats ブール 関連付けられたターゲットに追加の統計情報 (キューの待機時間など) があるかどうかを示すフラグ。
    有効な値:
    • true:ターゲットに追加の統計情報があります。エージェント名またはキューの横に情報アイコンが表示されます。
    • false:ターゲットに追加の統計情報はありません。

    デフォルト値:false

    searchTargetList。ターゲット。ペイロード。リスト。身分証明書 文字列 CCaaS システム内のエージェントまたはキューの一意の識別子。
    searchTargetList。ターゲット。ペイロード。リスト。詳細情報 オブジェクトのアレイ searchTargetList.targets.payload.list.hasStats「true」に設定されている場合は必須です。エージェントまたはキューが持つスキルのリスト。この情報は、ユーザーがエンティティ名の末尾にある情報アイコンを選択するとポップアップウィンドウに表示されます。
    "moreInfo": [
      {
        "label": "String",
        "value": "String"
      }
    ]
    searchTargetList。ターゲット。ペイロード。リスト。moreInfo です。ラベル 文字列 スキル言語など、ポップアップウィンドウに表示する情報の自由形式のラベル。
    searchTargetList。ターゲット。ペイロード。リスト。moreInfo です。価値 文字列 CRM 認定ドイツ語など、ラベルの後にポップアップウィンドウに表示するテキスト。
    searchTargetList。ターゲット。ペイロード。リスト。名前 文字列 エージェント、外部ユーザー、またはキューの名前。CCaaS システム内にあります。
    searchTargetList。ターゲット。ペイロード。リスト。出席 文字列 関連付けられたエージェントの在席ステータス。このパラメーターは、「agent」 searchTargetList.targets.type に対してのみ有効です。
    有効な値:
    • 利用可能
    • 退席中
    • 取り込み中
    • オフライン
    searchTargetList。ターゲット。transferSubtype オブジェクトのアレイ 指定された searchTargetList.targets.typeでサポートされている転送のタイプに関する詳細。

    この情報は、ユーザーが UI でターゲット名の横にある省略記号をクリックすると表示されます。


    転送タイプを示す転送コールコンポーネント

    たとえば、現在のターゲット・タイプ(キューなど)でコンサルト・タイプのみがサポートされている場合、この配列には転送のコンサルト・タイプを示すオブジェクトが1つ含まれます。

    "transferSubtypes": [
      {
        "id": "String",
        "label": "String"
      }
    ]
    searchTargetList。ターゲット。transferSubtypeです。身分証明書 文字列 転送サブタイプの識別子。
    有効な値:
    • ブラインド:エージェントは、最初にエージェントと話すことなく、顧客のコールを別のエージェントまたはキューに直接転送します。
    • consult:エージェントは、相談相手のエージェントに連絡し、顧客をコンサルティングエージェントとのコールに結合します。

    これは、 searchTargetList.targets.transferSubtypes.label の値に対応している必要があります。

    searchTargetList。ターゲット。transferSubtypeです。ラベル 文字列 転送サブタイプのラベル。ラベルを渡さない場合、転送サブタイプの UI には何も表示されません。
    有効な値:
    • 相談

    これは、 searchTargetList.targets.transferSubtypes.id の値に対応している必要があります。

    searchTargetList。ターゲット。種類 文字列 ターゲットのタイプ。
    有効な値:
    • agent
    • 外部
    • キュー
    表 : 22. 戻り値
    タイプ 説明
    なし

    次のコード例は、アクティブ状態コンテキストを設定する方法を示しています。

    openFrameAPI.setICContext("activeCall", {
      "activeCall": [
        { 
          "nowRecordTable": "interaction",
          "nowRecordId": "12345675678903456",
          "externalId": "1234567890",
          "type": "call",
          "direction": "inbound",
          "currentParticipant": {
            "id": "participant1",
            "name": "John 1",
            "actor": "agent",
            "state": "connected",
            "connectedTime": "Fri, 12 Jul 2024 05:23:41 GMT",
            "callStartTime": "Fri, 12 Jul 2024 04:20:22 GMT",
            "muted": false,
            "held": true,
            "paused": true,
            "flagged": true,
            "recording": "in_progress",
            "capabilities": {
              "hold": false,
              "mute": true,
              "endCall": true,
              "startRecording": true,
              "pauseRecording": true,
              "stopRecording": true,
              "resumeRecording": true,
              "transfer": true,
              "mergeCall": true,
              "leaveAndTransfer": true,
              "dtmf": true,
              "flag": true
            }
          },
          "participants": [
            {
              "id": "customer1",
              "name": "Gilly 1",
              "actor": "customer",
              "address": "+18582359874",
              "ani": "+16193287356", 
              "dnis": "+18004346258",
              "state": "connected",
              "connectedTime": "Fri, 12 Jul 2024 00:23:41 GMT",
              "callStartTime": "Fri, 12 Jul 2024 20:55:04 GMT",
              "muted": false,
              "held": false,
              "heldAtTime": "Fri, 12 Jul 2024 20:55:04 GMT", 
              "capabilities": {
                "mute": true,
                "hold": true,
                "endCall": true
              }
            },
            {
              "id": "agent2",
              "name": "Ned",
              "actor": "agent",
              "address": "+3134787324",
              "ani": "+13134787324", 
              "dnis": "+14773286943",
              "state": "Ringing...",
              "requireWrapup": true,
              "requestACW": true,
              "connectedTime": "Fri, 12 Jul 2024 20:24:41 GMT",
              "callStartTime": "Fri, 12 Jul 2024 20:56:34 GMT",
              "muted": true,
              "held": true,
              "heldAtTime": "Fri, 12 Jul 2024 20:55:41 GMT",
              "capabilities": {
                "mute": true,
                "endCall": true,
                "hold": true 
              }
            }
          ]
        },
        {
          "nowRecordTable": "interaction",
          "nowRecordId": "12345yhedfh534576u5",
          "externalId": "1234567890",
          "type": "call",
          "direction": "inbound",
          "currentParticipant": {
            "id": "participant1",
            "name": "John 1",
            "actor": "agent",
            "state": "connected",
            "muted": true,
            "held": false,
            "recording": "in_progress",
            "paused": true,
            "flagged": true,
            "capabilities": {
              "hold": false,
              "mute": true,
              "endCall": true,
              "record": true,
              "startRecording": true,
              "stopRecording": true,
              "transfer": true,
              },
              "mergeCall": false,
              "dtmf": true,
              "flag": true
            }
          },
          "participants": [
            {
              "id": "customer1",
              "name": "Gilly 2",
              "actor": "customer",
              "address": "+123456789",
              "state": "connected",
              "connectedTime": "Wed, 04 Dec 2024 00:23:41 GMT",
              "muted": true,
              "held": false,
              "heldAtTime": "Fri, 12 Jul 2024 20:24:41 GMT”,
              "capabilities": {
                "mute": true,
                "hold": true,
                "endCall": true
              }
            },
            {
              "id": "agent2",
              "name": "Ned 2",
              "actor": "agent",
              "address": "+123456789",
              "state": "Ringing...",
              "connectedTime": "Fri, 12 Jul 2024 20:24:41 GMT",
              "muted": true,
              "held": true,
              "heldaAtTime": "Fri, 12 Jul 2024 20:24:41 GMT”,
              "capabilities": {
                "mute": true,
                "endCall": true,
                "hold": true
              }
            }
          ]
         }
        ]
      }
    );
    

    次の例は、アイドル状態コンテキストを設定する方法を示しています。

    openFrameAPI.setICContext("idleState", {
      "capability": {
        "outBoundCall": true,
        "logOut": true 
      },
      "enableState": {
        "outBoundCall": true,
        "logOut": true
      },
      "dialpadInfoMessage": {
        "label": "Info Message Label",
        "value": "Info Message Value"
      },
      "currentInboundId": "1234"
    });

    次の例は、検索ターゲットのリストコンテキストを設定する方法を示しています。

    openFrameAPI.setICContext("searchTargetList",
      {
        "searchTargetList": [
          {
            "nowRecordTable": "interaction",
            "nowRecordId": "1234",
            "externalId": "5678",
            "participantID": "participant1",
            "targets": [
              {
                "type": "agent",
                "transferSubtypes": [
                  {
                    "id": "consult",
                    "label": "Consult"
                  },
                  {
                    "id": "blind",
                    "label": "Blind"
                  }
                ],
                "payload": {
                  "list": [
                    {
                      "name": "John Jason",
                      "id": "agent1Id",
                      "hasStats": "true",
                      "presence": "away",
                      "moreInfo": [
                        {
                          "label": "Skill",
                          "value": "10sec"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "type": "queue",
                "transferSubtypes": [
                  {
                    "id": "consult",
                    "label": "Consult"
                  },
                  {
                    "id": "blind",
                    "label": "Blind"
                  }
                ],
                "payload": {
                  "list": [
                    {
                      "name": "Product Support Queue",
                      "id": "queue1Id",
                      "hasStats": "true",
                      "moreInfo": [
                        {
                          "label": "Skill",
                          "value": "10sec"
                        },
                        {
                          "label": "Queue Skill",
                          "value": "German"
                        }
                      ]
                    },
                    {
                      "name": "Billing Queue",
                      "id": "queue2Id",
                      "hasStats": "true",
                      "moreInfo": [
                        {
                          "label": "Skill",
                          "value": "10sec"
                        }
                      ]
                    }
                  ]
                }
              }
            ],
            "customPayload": {}
          }
        ],
        "customPayload": {}
      });

    openFrameAPI - setIcons(アレイ icons)

    閉じるアイコンの横に配置される OpenFrame ヘッダーのアイコンを定義します。

    表 : 23. パラメーター
    名前 タイプ 説明
    アイコン オブジェクトのアレイ アイコン構成のリスト。各アイコン構成は、キー値 imageURLimageTitle、およびその他の必要なコンテキストを持つオブジェクトです。

    最大サイズ:アイコンは最大 16x16 ピクセルです。大きな画像は、この最大値に自動的に調整されます。

    表 : 24. 戻り値
    タイプ 説明
    なし
    openFrameAPI.setIcons([{imageURL:'https://mydomian.com/image/mute.png',
    imageTitle:'mute', id:101}, {imageURL:'https://mydomian.com/image/hold.png',
    imageTitle:'hold', id:102}]);

    openFrameAPI - setPresenceIndicator(presence)

    エージェントの空き状況を表示するプレゼンスインジケーターを Workspace に設定します。

    OpenFrame の設定の詳細については、「OpenFrame 設定の作成」を参照してください。

    表 : 25. パラメーター
    名前 タイプ 説明
    state 文字列 エージェントの在席ステータス。

    デフォルトのステータス:

    • 連絡可能
    • 離席中
    • オフライン

    カスタムのステータスも指定できます。

    文字列 Workspace のプレゼンスインジケーターの色。

    サポートされている色:

    • オレンジ
    • グレイ
    表 : 26. 返される内容
    タイプ 説明
    なし
    openframeAPI.setPresenceIndicator('Available', 'green');

    openFrameAPI - setSize(数字 width, 数字 height)

    OpenFrame のサイズを設定します。

    表 : 27. パラメーター
    名前 タイプ 説明
    width 数字 ゼロより大きくする必要があります。
    height 数字 ゼロより大きくする必要があります。
    表 : 28. 返される内容
    タイプ 説明
    なし
    openFrameAPI.setSize(300, 370);

    openFrameAPI - setSubtitle(文字列 subTitle)

    OpenFrame のサブタイトルを設定します。

    表 : 29. パラメーター
    名前 タイプ 説明
    subTitle 文字列 256 文字以下の文字列。
    表 : 30. 返される内容
    タイプ 説明
    なし
    openFrameAPI.setSubtitle('+18888888888');

    openFrameAPI - setTitle(文字列 title)

    OpenFrame のタイトルを設定します。

    表 : 31. パラメーター
    名前 タイプ 説明
    title 文字列 256 文字以下の文字列。
    表 : 32. 返される内容
    タイプ 説明
    なし
    openFrameAPI.setTitle('Incoming Call');

    openFrameAPI - setTitleIcon(オブジェクト icon)

    OpenFrame のタイトルアイコンを設定します。

    表 : 33. パラメーター
    名前 タイプ 説明
    icon オブジェクト キーと値のペアのオブジェクト。キーには、 imageURLimageTitle、およびその他の必要なコンテキストが含まれます。

    最大サイズ:アイコンは最大 16x16 ピクセルです。大きな画像は、この最大値に自動的に調整されます。

    表 : 34. 戻り値
    タイプ 説明
    なし
    openFrameAPI.setTitleIcon({imageURL:'/my/image/path.png', imageTitle:'mute', id:101});
    openFrameAPI.setTitleIcon({imageURL:'https://mydomian.com/image/path.png',
    imageTitle:'mute', id:101});

    openFrameAPI - setwidth(width)

    OpenFrame の幅を設定します。

    表 : 35. パラメーター
    名前 タイプ 説明
    Width 数字 幅 (ピクセル)
    表 : 36. 返される内容
    タイプ 説明
    なし
    openFrameAPI.setWidth(100);

    openFrameAPI - show()

    TopFrame で OpenFrame を表示します。

    表 : 37. パラメーター
    名前 タイプ 説明
    なし
    表 : 38. 返される内容
    タイプ 説明
    なし
    openFrameAPI.show()

    openFrameAPI - subscribe(openFrameAPIEVENT event, 関数 eventCallback)

    指定されたイベントに登録します。

    表 : 39. パラメーター
    名前 タイプ 説明
    イベント openFrameAPIEVENT 登録するイベント:
    • openframe_agent_off_interaction:チャット中のエージェントの在席状況をオフまたは対応可能として示します。
    • openframe_awa_agent_presence: 高度な作業アサイン (AWA) では、このイベントはエージェントの在席状況が変更されたときに発生します。コンピューター電話統合 (CTI) 開発者は、このイベントに登録して在席状況の変更を受け取ることができます。
    • openframe_awa_workitem_accepted:作業アイテムがエージェントによって承認されると発生します。
    • openframe_awa_workitem_offered:作業アイテムがエージェントにオファーされると発生します。
    • openframe_awa_workitem_rejected:作業アイテムがエージェントによって拒否されると発生します。
    • openframe_before_destroy:TopFrame がアンロードされる前に発生します。
    • openframe_collapse:OpenFrame ヘッダーで折りたたみアイコンが選択されたときに発生します。
    • openframe_communication:アプリケーション固有であり、カスタマイズ可能です。
    • openframe_communication_failure:TopFrame への通信に失敗すると発生します。
    • openframe_expand:OpenFrame ヘッダーで展開アイコンが選択されたときに発生します。
    • openframe_heart_beat:ユーザーセッションが延長またはログアウトされたときに発生します。
    • openframe_header_icon_clicked:廃止されました。代わりに openframe_icon_clicked または openframe_title_icon_clicked を使用してください。
    • openframe_hidden:OpenFrame が非表示の場合に発生します。
    • openframe_icon_clicked:OpenFrame フッターで閉じるアイコン以外のアイコンが選択されている場合に発生します。コールバックは、アイコンオブジェクトをパラメーターとして受け取ります。
    • openframe_shown:OpenFrame が表示されている場合に発生します。
    • openframe_title_icon_clicked:OpenFrame でタイトルアイコンが選択されたときに発生します。コールバックは titleIcon オブジェクトをパラメーターとして受け取ります。
    • openframe_wrap_up_submitted: 最終作業モードレスダイアログで最終作業期間が終了すると発生します。このイベントは、最終作業が外部である場合にのみトリガーされます。
    eventCallback 関数 指定されたイベントが発生したときに呼び出す関数。
    表 : 40. 戻り値
    タイプ 説明
    結果 ほとんどのイベントサブスクリプションには戻り値がありません。値を返すイベントサブスクリプションについては、次の表のエントリで説明します。
    openframe_awa_agent_presence AWAでは、openframe_awa_agent_presenceイベントはプレゼンスオブジェクトを返します。
    "presence":{
      "available": Boolean,
      "channels":[
        {
          "available": Boolean,
          "name": "String",
          "restrict_update": Boolean,
          "sys_id": "String"
        }
      ],
      "name": "String",
      "sys_id": "String"
    }
    presenceエージェントの現在の在席状況とチャネルに関する情報。
    • presence.availableエージェントが利用可能かどうかを示すフラグ。
    • presence.channelsエージェントとの利用可能な通信チャネルを説明するオブジェクトのリスト。
      • presence.channels.availableチャネルが利用可能かどうかを示すフラグ。
      • presence.channels.nameチャネル名 (チャットや電話など)。
      • presence.channels.restrict_updateユーザーが更新を制限できるかどうかを示すフラグ。
      • presence.channels.sys_idチャネルの sys_id。
    • presence.nameエージェントの在席状況の名前。
    • presence.sys_id在席状況の sys_id。
    openframe_awa_workitem_acceptedとopenframe_awa_workitem_offered AWAでは、openframe_awa_workitem_acceptedイベントとopenframe_awa_workitem_offeredイベントがworkItemオブジェクトを返します。
    "workItem": {
      "document": {
        "sys_id": "String",
        "table": "String"
      },
      "isAutoAccepted": Boolean,
      "isQueueTransferred": Boolean,
      "previousWorkItem": "String",
      "serviceChannel": {
        "name": "String",
        "sys_id": "String"
      },
      "size": Number,
      "sys_id": "String"
    }

    workItem:イベントに関連付けられている作業アイテムに関する情報。

    • workItem.document:作業アイテムタスクに関連付けられたドキュメントのリスト。
      • workItem.document.sys_id:作業アイテムタスクにアサインされたドキュメントのSys_id。
      • workItem.document.table:タスクにアサインされたドキュメントテーブルの名前。
    • workItem.isAutoAccepted:作業アイテムがシステムによって自動的に承認されたかどうかを示すフラグ。作業アイテムが自動承認された場合は true に設定します。
    • workItem.isQueueTransferred:作業アイテムがキュー転送されたかどうかを示すフラグ。作業アイテムがキュー転送される場合は true に設定され、そうでない場合は false に設定されます。キュー転送の詳細については、「 Transfer a chat to another queue」を参照してください。
    • workItem.previousWorkItem:同じドキュメント ID の以前の作業アイテムのSys_id。転送以外の作業アイテムの場合、この値は空です。
    • workItem.serviceChannel:作業アイテムタスクに関連付けられたサービスチャネルのリスト。
      • workItem.serviceChannel.name:チャットや電話などのサービスチャネルの名前。
      • workItem.serviceChannel.sys_id:サービスチャネルのSys_id。
    • workItem.size:この作業アイテムがエージェントにアサインされている場合に使用されるエージェントのキャパシティ。
    • workItem.sys_id:承認または提供された作業アイテムのSys_id。
    openframe_awa_workitem_rejected AWAでは、openframe_awa_workitem_rejectedイベントは workItem オブジェクトを返します。
    "workItem": {
      "document": {
        "sys_id": "String",
        "table": "String"
      },
      "isQueueTransferred": Boolean,
      "previousWorkItem": "String",
      "rejection": {
        "reason": "String",
        "sys_id": "String"
      },
      "serviceChannel": {
        "name": "String",
        "sys_id": "String"
      },
      "size": Number,
      "sys_id": "String"
    }

    workItem:イベントに関連付けられている作業アイテムに関する情報。

    • workItem.document:作業アイテムタスクに関連付けられたドキュメントのリスト。
      • workItem.document.sys_id:作業アイテムタスクにアサインされたドキュメントのSys_id。
      • workItem.document.table:タスクにアサインされたドキュメントテーブルの名前。
    • workItem.isQueueTransferred:作業アイテムがキュー転送されたかどうかを示すフラグ。作業アイテムがキュー転送される場合は true に設定され、そうでない場合は false に設定されます。キュー転送の詳細については、「 Transfer a chat to another queue」を参照してください。
    • workItem.previousWorkItem:同じドキュメント ID の以前の作業アイテムのSys_id。転送以外の作業アイテムの場合、この値は空です。
    • workItem.rejection:作業アイテムの却下理由のリスト。
      • workItem.rejection.reason:作業アイテムを却下する理由の名前。
      • workItem.rejection.sys_id:却下理由のSys_id。

        テーブル:却下理由 [awa_reject_reason]

    • workItem.serviceChannel:作業アイテムタスクに関連付けられたサービスチャネルのリスト。
      • workItem.serviceChannel.name:チャットや電話などのサービスチャネルの名前。
      • workItem.serviceChannel.sys_id:サービスチャネルのSys_id。
    • workItem.size:この作業アイテムがエージェントにアサインされている場合に使用されるエージェントのキャパシティ。
    • workItem.sys_id:承認または提供された作業アイテムのSys_id。
    openframe_heart_beat openframe_heart_beatイベントは、次のオブジェクトを返します。
    {
      "lastUiActivity": "String",
      "sessionLoggedIn": Boolean
    }
    • lastUiActivity:オプション。ユーザーセッションを延長した前回の UI アクティビティのタイムスタンプ。
    • sessionLoggedIn ユーザーがログインしているかどうかを示すフラグ。
      • true:ユーザーはログインしています。
      • false:ユーザーはログインしていません。
    openframe_wrap_up_submitted openframe_wrap_up_submittedイベントは、次のオブジェクトを返します。
    { 
      "wrapUp": {
        "external": Boolean,
        "externalSegmentId": "String", 
        "recordId": "String",
        "recordTable": "String",
        "wrapUpCode": "String",
        "wrapUpNotes": "String",
        "wrapUpSegmentId": "String"
      }
    }
    • external:最終作業が ServiceNow インスタンスによって内部的に処理されるか、他のコールシステムによって ServiceNow インスタンスの外部で管理されるかを示すフラグ。
      • true:最終作業は外部呼び出しシステムによって処理されます。
      • false:最終作業は ServiceNow インスタンスによって処理されます。
    • externalSegmentId:外部最終作業をトリガーした外部データオブジェクトの一意の識別子。
    • recordId:最終作業中のインタラクションレコードのSys_id。
    • recordTable:レコードを含むテーブルの名前。常に「インタラクション」として設定されます。
    • wrapUpCode:最終作業中にユーザーが選択したコードで、インタラクションがどのように解決されたかを示します。
    • wrapUpNotes:最終作業中にユーザーが入力した自由形式のテキストで、インタラクションがどのように解決されたかを説明します。
    • wrapUpSegmentId:インタラクションに関連付けられたインタラクションの最終作業セグメントレコードのSys_id。最終作業セグメント [interaction_wrap_up_segment] テーブルにあります。最終作業データが含まれています。

    次のコード例は、 openframe_awa_agent_presence イベントに対してこのメソッドを呼び出す方法を示しています。

    function handleIconClick(context) {
    console.log("Icon was clicked", context);
    }
    openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_agent_presence, handleIconClick);

    出力:

    // Sample presence object output
    // openframe_awa_agent_presence event only
    
    {
      "result":{
        "presence":{
          "name":"Available",
          "sys_id":"27f675e3739713004a905ee515f6a7c3",
          "available":true,
          "channels":[
            {
              "name":"Chat",
              "available":true,
              "sys_id":"36f675e4239713124a905fe515f6a832",
              "restrict_update":false
            },
            {
              "name":"Phone",
              "available":true,
              "sys_id":"9378a530a1820610f809018efd9bc01e",
              "restrict_update":false
            }
          ]
        }
      }
    }

    次のコード例は、 openframe_awa_workitem_accepted イベントに対してこのメソッドを呼び出す方法を示しています。

    function handleIconClick(context) {
    console.log("Icon was clicked", context);
    }
    openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_workitem_accepted, handleIconClick);

    出力:

    // Sample workItem object output
    // openframe_awa_workitem_accepted event only
    {
      "result": {
        "workItem": {
          "sys_id": "14c86c40a1650610f87701807d9bc0be",
          "size": 1,
          "serviceChannel": {
            "name": "Chat",
            "sys_id": "27f675e3739713004a905ee515f6a7c3"
          },
          "document": {
            "sys_id": "aa582040a1650610f87701807d9bc076",
            "table": "interaction"
          },
          "previousWorkItem": "7c78a440a1650610f87701807d9bc02b",
          "isQueueTransferred": true,
          "isAutoAccepted": true
        }
      }
    }

    次のコード例は、 openframe_awa_workitem_rejected イベントに対してこのメソッドを呼び出す方法を示しています。

    function handleIconClick(context) {
    console.log("Icon was clicked", context);
    }
    openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_workitem_rejected, handleIconClick);

    出力:

    // Sample workItem object output
    // openframe_awa_workitem_rejected event only
    {
      "payload": {
        "workItem": {
          "sys_id": "2c3bdc4824250610f8775e73b116f8de",
          "size": "1",
          "serviceChannel": {
            "name": "Chat",
            "sysID": "27f675e3739713004a905ee515f6a7c3"
          },
          "document": {
            "sys_id": "cf0a180824250610f8775e73b116f80c",
            "table": "interaction"
          },
          "rejection": {
            "reason": "Busy",
            "sys_id": "4e93fa29b38023002e7b6e5f26a8dc20"
          },
          "previousWorkItem": "831b9c4824250610f8775e73b116f841",
          "isQueueTransferred": true
        }
      }
    }

    openFrameAPI - version()

    OpenFrame API のバージョンを返します。

    表 : 41. パラメーター
    名前 タイプ 説明
    なし
    表 : 42. 返される内容
    タイプ 説明
    文字列 OpenFrame API のバージョン
    var version = openFrameAPI.version();
    
    console.log("API version " + version);