---
sourceDocument: Xanadu API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# OnCallRotation - グローバル

# OnCallRotation - グローバル {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：61分

OnCallRotation スクリプトインクルードは、オンコールスケジュールを管理するメソッドを提供します。

詳細については、「 [オンコールスケジューリング](https://www.servicenow.com/docs/access?context=c_OnCallScheduling&version=xanadu&pubname=xanadu-it-service-management&ft:locale=en-US)」を参照してください。

## OnCallRotation - OnCallRotation() {#ariaid-title2}

OnCallRotation クラスのインスタンスを作成します。
{#r_OCR-OnCallRotation__table_pzm_w3f_2w__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 1. パラメーター]

{#r_OCR-OnCallRotation__table_pzm_w3f_2w}  

    var oncall = new OnCallRotation();

## OnCallRotation - addCurrentToNotified() {#ariaid-title3}

現在のエスカレーションメンバーを通知済みユーザーのリストに追加して、誰が連絡済みかを API が認識できるようにします。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#OCR-addCurrentToNotified__table_wd4_rbk_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 2. パラメーター]

{#OCR-addCurrentToNotified__table_wd4_rbk_3gb} {#OCR-addCurrentToNotified__table_xd4_rbk_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 3. 返される内容]

{#OCR-addCurrentToNotified__table_xd4_rbk_3gb}

## OnCallRotation - cancelEscalations(GlideRecord escalationGr) {#ariaid-title4}

startEscalations API で開始された GlideRecord のエスカレーションをキャンセルします。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#OCR-cancelEscalations_GR__table_gv4_hbk_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| escalationGr | GlideRecord | ローテーションエスカレーション (cmn_rota_escalation) の GlideRecord |
[表 : 4. パラメーター]

{#OCR-cancelEscalations_GR__table_gv4_hbk_3gb} {#OCR-cancelEscalations_GR__table_hv4_hbk_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 5. 返される内容]

{#OCR-cancelEscalations_GR__table_hv4_hbk_3gb}

## OnCallRotation - continueEscalations(GlideRecord escalationGr) {#ariaid-title5}

ドキュメント (incident now_GR) およびグループのエスカレーションを続行します。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#OCR-continueEscalations_GR__table_a5h_x1k_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| escalationGr | GlideRecord | ローテーションエスカレーション (cmn_rota_escalation) の GlideRecord |
[表 : 6. パラメーター]

{#OCR-continueEscalations_GR__table_a5h_x1k_3gb} {#OCR-continueEscalations_GR__table_b5h_x1k_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 7. 返される内容]

{#OCR-continueEscalations_GR__table_b5h_x1k_3gb}

## OnCallRotation - getCatchAll(文字列 rotaID) {#ariaid-title6}

予備連絡先の人の sys_id を取得します。getCatchAllType() メソッドとともに使用して、返された ID のソースを判断します。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#r_OCR-getCatchAll_S__table_g3f_cbg_2w__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| rotaID | 文字列 | 勤務表の sys_id。 |
[表 : 8. パラメーター]

{#r_OCR-getCatchAll_S__table_g3f_cbg_2w} {#r_OCR-getCatchAll_S__table_h3f_cbg_2w__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | sys_user、cmn_rota_roster、または null の sys_id。 |
[表 : 9. 返される内容]

{#r_OCR-getCatchAll_S__table_h3f_cbg_2w}  


    var rotaSysId = '349f399173062300e7af6238edf6a75e';
    var onCallRotation = new OnCallRotation();
    var catchAll = onCallRotation.getCatchAll(rotaSysId);
    gs.log(catchAll);

出力：

    46d44a23a9fe19810012d100cca80666

## OnCallRotation - getCatchAllType(文字列 rotaID) {#ariaid-title7}

エスカレーションチェーンの最後に存在する _予備連絡先_ のタイプを取得します。オンコール担当者をアサインせずにエスカレーションチェーンが終了すると、インシデントは _予備連絡先_ にアサインされます。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#r_OCR-getCatchAllType_S__table_gsz_g1g_2w__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| rotaID | 文字列 | 勤務表の sys_id。 |
[表 : 10. パラメーター]

{#r_OCR-getCatchAllType_S__table_gsz_g1g_2w} {#r_OCR-getCatchAllType_S__table_hsz_g1g_2w__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | * Null：無効な勤務表 ID または予備連絡先は利用できません。 * Group_manager：勤務表にリンクされたグループのマネージャーが予備連絡先の人物です。 * Individual：設定されているユーザーが予備連絡先の人物です。 * All：設定されている勤務表のすべてのメンバーが予備連絡先の人物です。 {#r_OCR-getCatchAllType_S__ul_yw2_51g_2w} |
[表 : 11. 返される内容]

{#r_OCR-getCatchAllType_S__table_hsz_g1g_2w}  

    var rotaSysId = '349f399173062300e7af6238edf6a75e';
    var onCallRotation = new OnCallRotation();
    var catchAllType = onCallRotation.getCatchAllType(rotaSysId);
    gs.log(catchAllType);

出力：

    group_manager

## OnCallRotation - getEscalateeAt(文字列 groupID, GlideDateTime dateTime, 数字 position) {#ariaid-title8}

指定された日時およびエスカレーションラインナップの特定の位置のグループのシフトに対して、ユーザー \[sys_user\]、グループ、または通知デバイス \[cmn_notif_device\] にエスカレーションするアイテムを取得します。この API は単一のシフトに適用されます。
無効なポジションまたはグループが引数として渡された場合、このメソッドは null を返します。

getTableName() メソッドを使用して、返される GlideRecord の出所が sys_user テーブルか cmn_notif_device テーブルかを確認できます。
{#r_OCR-getEscalateeAt_S_GDT_N__table_txq_hxf_2w__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| groupID | 文字列 | エスカレーションするアイテムを取得するグループの sys_id。 |
| dateTime | GlideDateTime | エスカレーションラインナップを開始する日時。 |
| position | 数字 | エスカレーション先のアイテムを判断するラインナップ内のポジション (1 ベース、すなわち 1 からカウントを開始する)。 |
[表 : 12. パラメーター]

{#r_OCR-getEscalateeAt_S_GDT_N__table_txq_hxf_2w} {#r_OCR-getEscalateeAt_S_GDT_N__table_uxq_hxf_2w__entry__2}

| タイプ | 説明 |
|-|-|
| GlideRecord | 特定の時間とポジションでのエスカレーション先 (通知ルールによってユーザー、グループ、またはデバイスレコード) のアイテム。何も見つからなかった場合は null を返します。 |
[表 : 13. 返される内容]

{#r_OCR-getEscalateeAt_S_GDT_N__table_uxq_hxf_2w}  


    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var escalatee = onCallRotation.getEscalateeAt(groupSysId, currentTime, 1);
    gs.log(escalatee.name);

出力：

    Abel Tuter

## OnCallRotation - getEscalatees(文字列 groupSysIds, 文字列 rotaSysIds, 文字列 rosterSysIds, GlideDateTime gdt, GlideRecord taskGr) {#ariaid-title9}

指定された時刻に待機しているエスカレーション先のリストを取得します。時刻が指定されていない場合は、現在の時刻が使用されます。groupSysId が指定されていない場合は、空のリストが返されます。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
注:  
taskGR パラメーターを設定して、エスカレーション計画の評価を有効にします。
{#OCR-getEscalatees_S_S_S_GDT__table_ixr_4jk_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| groupSysIds | 文字列 | レコードをフィルタリングする際の基準となる sys_user_group の sys_id のカンマ区切りリスト。 |
| rotaSysIds | 文字列 | レコードをフィルタリングする際の基準となる cmn_rota の sys_id のカンマ区切りリスト。 |
| rosterSysIds | 文字列 | レコードをフィルタリングする際の基準となる cmn_rota_roster の sys_id のカンマ区切りリスト。 |
| gdt | GlideDateTime | UTC タイムゾーンでの日付 |
| taskGr | GlideRecord | オプション。現在のタスクレコード。taskGr が空の場合、このメソッドはデフォルトのエスカレーション計画を返します。taskGr が渡されると、エスカレーションポリシーが順番に評価され、対応するエスカレーション計画がこのメソッドによって返されます。 |
[表 : 14. パラメーター]

{#OCR-getEscalatees_S_S_S_GDT__table_ixr_4jk_3gb} {#OCR-getEscalatees_S_S_S_GDT__table_jxr_4jk_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| オブジェクト | userId、deviceId、escalationGroup などのエスカレーション先情報。 |
[表 : 15. 返される内容]

{#OCR-getEscalatees_S_S_S_GDT__table_jxr_4jk_3gb}  


    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var result = onCallRotation.getEscalatees(groupSysId, "", "", currentTime);
    gs.log(JSON.stringify(result));

出力：

単一シフトの場合：

    [
      {
        "memberId": "119f399173062300e7af6238edf6a7e7",
        "memberIds": [],
        "userId": "62826bf03710200044e0bfc8bcbe5df1",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 1,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "9d9f399173062300e7af6238edf6a7ec"
      },
      {
        "memberId": "1d9f399173062300e7af6238edf6a7e8",
        "memberIds": [],
        "userId": "a8f98bb0eb32010045e1a5115206fe3a",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 2,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "d99f399173062300e7af6238edf6a7ef"
      },
      {
        "memberId": "dd9f399173062300e7af6238edf6a7e9",
        "memberIds": [],
        "userId": "0a826bf03710200044e0bfc8bcbe5d7a",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 3,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "519f399173062300e7af6238edf6a7f2"
      }
    ]

重複シフトの場合：

    [
      {
        "memberId": "119f399173062300e7af6238edf6a7e7",
        "memberIds": [],
        "userId": "62826bf03710200044e0bfc8bcbe5df1",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 1,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "9d9f399173062300e7af6238edf6a7ec"
      },
      {
        "memberId": "7daf799173062300e7af6238edf6a7a2",
        "memberIds": [],
        "userId": "d2826bf03710200044e0bfc8bcbe5dc9",
        "userIds": [],
        "roster": "b5af799173062300e7af6238edf6a7a2",
        "rota": "35af799173062300e7af6238edf6a79e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 1,
        "isOverride": false,
        "rotationScheduleId": "3daf799173062300e7af6238edf6a79e",
        "memberScheduleId": "06af799173062300e7af6238edf6a7cd"
      },
      {
        "memberId": "1d9f399173062300e7af6238edf6a7e8",
        "memberIds": [],
        "userId": "a8f98bb0eb32010045e1a5115206fe3a",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 2,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "d99f399173062300e7af6238edf6a7ef"
      },
      {
        "memberId": "f5af799173062300e7af6238edf6a7c9",
        "memberIds": [],
        "userId": "ee826bf03710200044e0bfc8bcbe5def",
        "userIds": [],
        "roster": "b5af799173062300e7af6238edf6a7a2",
        "rota": "35af799173062300e7af6238edf6a79e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 2,
        "isOverride": false,
        "rotationScheduleId": "3daf799173062300e7af6238edf6a79e",
        "memberScheduleId": "8aaf799173062300e7af6238edf6a7cf"
      },
      {
        "memberId": "dd9f399173062300e7af6238edf6a7e9",
        "memberIds": [],
        "userId": "0a826bf03710200044e0bfc8bcbe5d7a",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 3,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "519f399173062300e7af6238edf6a7f2"
      },
      {
        "memberId": "8aaf799173062300e7af6238edf6a7ca",
        "memberIds": [],
        "userId": "e2826bf03710200044e0bfc8bcbe5de0",
        "userIds": [],
        "roster": "b5af799173062300e7af6238edf6a7a2",
        "rota": "35af799173062300e7af6238edf6a79e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 3,
        "isOverride": false,
        "rotationScheduleId": "3daf799173062300e7af6238edf6a79e",
        "memberScheduleId": "02af799173062300e7af6238edf6a7d2"
      }
    ]

カスタムエスカレーションの場合：

    [
      {
        "memberId": "",
        "memberIds": [],
        "userId": "",
        "userIds": [
          "62826bf03710200044e0bfc8bcbe5df1",
          "46d44a23a9fe19810012d100cca80666"
        ],
        "roster": "",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [
          "a715cd759f2002002920bde8132e7018"
        ],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 1,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": ""
      },
      {
        "memberId": "",
        "memberIds": [
          "119f399173062300e7af6238edf6a7e7"
        ],
        "userId": "",
        "userIds": [
          "62826bf03710200044e0bfc8bcbe5df1"
        ],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 2,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": ""
      }
    ]

    /**
     * create a custom escalation for service desk shift with condition as P1 for Incident
     * taskGr is optional parameter
     * if taskGr is empty then it returns list of escalatees in default escalation plan
     * if taskGr is passed then escalation policies are executed evaluated in order and list of escalatees in corresponding escalation plan is returned
    **/
    var serviceDeskSysId = 'd625dccec0a8016700a222a0f7900d06';
    var taskGr = new GlideRecord('incident');
    taskGr.get('ed92e8d173d023002728660c4cf6a7bc');

    var ocRotation = new OnCallRotation();
    var escalatees = ocRotation.getEscalatees(serviceDeskSysId, null, null, null, null, taskGr);
    gs.log(JSON.stringify(escalatees));

## OnCallRotation - getEscalationPlan(文字列 groupSysId, GlideDateTime gdt, 文字列 rotaSysIds, GlideRecord taskGr) {#ariaid-title10}

指定された日時のグループのシフトに対して、ユーザー \[sys_user\] または通知デバイス \[cmn_notif_device\] で構成されるエスカレーション計画にエスカレーションするオブジェクトのリストを取得します。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
エスカレーションオブジェクトには次のフィールドが含まれます。

* 数字の order：ラインナップ内のエスカレーションの順序
* 文字列の userId：sys_user レコードの sys_id または null
* 文字列の deviceId：cmn_notif_device レコードの sys_id または null
* ブーリアンの isDevice：エスカレーション先のアイテムがデバイスかユーザーかに応じて true または false
* GlideDuration timeBetweenReminders：リマインダーが送信される間隔
* 数字の reminderNum：エスカレートション先の各アイテムについて送信されるリマインダーの数
{#r_OCR-getEscalationPlan_S_GDT__ul_isy_tyf_2w}  
注:  
taskGR パラメーターを設定して、エスカレーション計画の評価を有効にします。
{#r_OCR-getEscalationPlan_S_GDT__table_bs2_lyf_2w__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| groupID | 文字列 | エスカレーション計画が必要なグループの sys_id。 |
| gdt | GlideDateTime | エスカレーションラインナップを開始する日時。デフォルトは現在の日時で、形式は UTC タイムゾーンでの yyyy-MM-dd HH:mm:ss です。 |
| rotaSysIds | 文字列 | レコードをフィルタリングする際の基準となる cmn_rota の sys_id のカンマ区切りリスト。 |
| taskGr | GlideRecord | オプション。現在のタスクレコード。taskGr が空の場合、このメソッドはデフォルトのエスカレーション計画を返します。taskGr が渡されると、エスカレーションポリシーが順番に評価され、対応するエスカレーション計画がこのメソッドによって返されます。 |
[表 : 16. パラメーター]

{#r_OCR-getEscalationPlan_S_GDT__table_bs2_lyf_2w} {#r_OCR-getEscalationPlan_S_GDT__table_cs2_lyf_2w__entry__2}

| タイプ | 説明 |
|-|-|
| オブジェクト | エスカレーション先のエスカレーションオブジェクトのリスト。 |
[表 : 17. 返される内容]

{#r_OCR-getEscalationPlan_S_GDT__table_cs2_lyf_2w}  

    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var result = onCallRotation.getEscalationPlan(groupSysId, currentTime);
    gs.log(JSON.stringify(result));

出力：

単一シフトの場合：

    [
      {
        "order": 1,
        "userId": "62826bf03710200044e0bfc8bcbe5df1",
        "userIds": [],
        "deviceId": "",
        "deviceIds": [],
        "escalationGroups": [],
        "isDevice": false,
        "timeToNextStep": null,
        "cmnRotaEscStepDefId": null,
        "reminderNum": 1,
        "rosterId": "9d9f399173062300e7af6238edf6a7e5",
        "memberId": "119f399173062300e7af6238edf6a7e7",
        "memberIds": [],
        "isOverride": false,
        "additionalEscalatees": [],
        "forcedCommunicationChannel": "",
        "rotaId": "349f399173062300e7af6238edf6a75e",
        "groupId": "096fb59173062300e7af6238edf6a783",
        "rotaScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "9d9f399173062300e7af6238edf6a7ec"
      },
      {
        "order": 2,
        "userId": "a8f98bb0eb32010045e1a5115206fe3a",
        "userIds": [],
        "deviceId": "",
        "deviceIds": [],
        "escalationGroups": [],
        "isDevice": false,
        "timeToNextStep": null,
        "cmnRotaEscStepDefId": null,
        "reminderNum": 1,
        "rosterId": "9d9f399173062300e7af6238edf6a7e5",
        "memberId": "1d9f399173062300e7af6238edf6a7e8",
        "memberIds": [],
        "isOverride": false,
        "additionalEscalatees": [],
        "forcedCommunicationChannel": "",
        "rotaId": "349f399173062300e7af6238edf6a75e",
        "groupId": "096fb59173062300e7af6238edf6a783",
        "rotaScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "d99f399173062300e7af6238edf6a7ef"
      },
      {
        "order": 3,
        "userId": "0a826bf03710200044e0bfc8bcbe5d7a",
        "userIds": [],
        "deviceId": "",
        "deviceIds": [],
        "escalationGroups": [],
        "isDevice": false,
        "timeToNextStep": null,
        "cmnRotaEscStepDefId": null,
        "reminderNum": 1,
        "rosterId": "9d9f399173062300e7af6238edf6a7e5",
        "memberId": "dd9f399173062300e7af6238edf6a7e9",
        "memberIds": [],
        "isOverride": false,
        "additionalEscalatees": [],
        "forcedCommunicationChannel": "",
        "rotaId": "349f399173062300e7af6238edf6a75e",
        "groupId": "096fb59173062300e7af6238edf6a783",
        "rotaScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "519f399173062300e7af6238edf6a7f2"
      }
    ]

重複シフトの場合：

    [
      {
        "order": 1,
        "userId": "62826bf03710200044e0bfc8bcbe5df1",
        "userIds": [],
        "deviceId": "",
        "deviceIds": [],
        "escalationGroups": [],
        "isDevice": false,
        "timeToNextStep": null,
        "cmnRotaEscStepDefId": null,
        "reminderNum": 1,
        "rosterId": "9d9f399173062300e7af6238edf6a7e5",
        "memberId": "119f399173062300e7af6238edf6a7e7",
        "memberIds": [],
        "isOverride": false,
        "additionalEscalatees": [
          {
            "order": 1,
            "userId": "d2826bf03710200044e0bfc8bcbe5dc9",
            "userIds": [],
            "deviceId": "",
            "deviceIds": [],
            "escalationGroups": [],
            "isDevice": false,
            "timeToNextStep": null,
            "cmnRotaEscStepDefId": null,
            "reminderNum": 1,
            "rosterId": "b5af799173062300e7af6238edf6a7a2",
            "memberId": "7daf799173062300e7af6238edf6a7a2",
            "memberIds": [],
            "isOverride": false,
            "additionalEscalatees": [],
            "forcedCommunicationChannel": "",
            "rotaId": "35af799173062300e7af6238edf6a79e",
            "groupId": "096fb59173062300e7af6238edf6a783",
            "rotaScheduleId": "3daf799173062300e7af6238edf6a79e",
            "memberScheduleId": "06af799173062300e7af6238edf6a7cd"
          }
        ],
        "forcedCommunicationChannel": "",
        "rotaId": "349f399173062300e7af6238edf6a75e",
        "groupId": "096fb59173062300e7af6238edf6a783",
        "rotaScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "9d9f399173062300e7af6238edf6a7ec"
      },
      {
        "order": 2,
        "userId": "a8f98bb0eb32010045e1a5115206fe3a",
        "userIds": [],
        "deviceId": "",
        "deviceIds": [],
        "escalationGroups": [],
        "isDevice": false,
        "timeToNextStep": null,
        "cmnRotaEscStepDefId": null,
        "reminderNum": 1,
        "rosterId": "9d9f399173062300e7af6238edf6a7e5",
        "memberId": "1d9f399173062300e7af6238edf6a7e8",
        "memberIds": [],
        "isOverride": false,
        "additionalEscalatees": [
          {
            "order": 2,
            "userId": "ee826bf03710200044e0bfc8bcbe5def",
            "userIds": [],
            "deviceId": "",
            "deviceIds": [],
            "escalationGroups": [],
            "isDevice": false,
            "timeToNextStep": null,
            "cmnRotaEscStepDefId": null,
            "reminderNum": 1,
            "rosterId": "b5af799173062300e7af6238edf6a7a2",
            "memberId": "f5af799173062300e7af6238edf6a7c9",
            "memberIds": [],
            "isOverride": false,
            "additionalEscalatees": [],
            "forcedCommunicationChannel": "",
            "rotaId": "35af799173062300e7af6238edf6a79e",
            "groupId": "096fb59173062300e7af6238edf6a783",
            "rotaScheduleId": "3daf799173062300e7af6238edf6a79e",
            "memberScheduleId": "8aaf799173062300e7af6238edf6a7cf"
          }
        ],
        "forcedCommunicationChannel": "",
        "rotaId": "349f399173062300e7af6238edf6a75e",
        "groupId": "096fb59173062300e7af6238edf6a783",
        "rotaScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "d99f399173062300e7af6238edf6a7ef"
      },
      {
        "order": 3,
        "userId": "0a826bf03710200044e0bfc8bcbe5d7a",
        "userIds": [],
        "deviceId": "",
        "deviceIds": [],
        "escalationGroups": [],
        "isDevice": false,
        "timeToNextStep": null,
        "cmnRotaEscStepDefId": null,
        "reminderNum": 1,
        "rosterId": "9d9f399173062300e7af6238edf6a7e5",
        "memberId": "dd9f399173062300e7af6238edf6a7e9",
        "memberIds": [],
        "isOverride": false,
        "additionalEscalatees": [
          {
            "order": 3,
            "userId": "e2826bf03710200044e0bfc8bcbe5de0",
            "userIds": [],
            "deviceId": "",
            "deviceIds": [],
            "escalationGroups": [],
            "isDevice": false,
            "timeToNextStep": null,
            "cmnRotaEscStepDefId": null,
            "reminderNum": 1,
            "rosterId": "b5af799173062300e7af6238edf6a7a2",
            "memberId": "8aaf799173062300e7af6238edf6a7ca",
            "memberIds": [],
            "isOverride": false,
            "additionalEscalatees": [],
            "forcedCommunicationChannel": "",
            "rotaId": "35af799173062300e7af6238edf6a79e",
            "groupId": "096fb59173062300e7af6238edf6a783",
            "rotaScheduleId": "3daf799173062300e7af6238edf6a79e",
            "memberScheduleId": "02af799173062300e7af6238edf6a7d2"
          }
        ],
        "forcedCommunicationChannel": "",
        "rotaId": "349f399173062300e7af6238edf6a75e",
        "groupId": "096fb59173062300e7af6238edf6a783",
        "rotaScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "519f399173062300e7af6238edf6a7f2"
      }
    ]

カスタムエスカレーションの場合：

    [
      {
        "order": 1,
        "userId": "",
        "userIds": [
          "62826bf03710200044e0bfc8bcbe5df1",
          "46d44a23a9fe19810012d100cca80666"
        ],
        "deviceId": "",
        "deviceIds": [],
        "escalationGroups": [
          "a715cd759f2002002920bde8132e7018"
        ],
        "isDevice": false,
        "timeBetweenReminders": {},
        "timeToNextStep": {},
        "cmnRotaEscStepDefId": "655042d173062300e7af6238edf6a738",
        "reminderNum": 1,
        "rosterId": "",
        "memberId": "",
        "memberIds": [],
        "isOverride": false,
        "additionalEscalatees": [],
        "forcedCommunicationChannel": "",
        "rotaId": "349f399173062300e7af6238edf6a75e",
        "groupId": "096fb59173062300e7af6238edf6a783",
        "rotaScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": ""
      },
      {
        "order": 2,
        "userId": "",
        "userIds": [],
        "deviceId": "",
        "deviceIds": [],
        "escalationGroups": [],
        "isDevice": false,
        "timeBetweenReminders": {},
        "timeToNextStep": {},
        "cmnRotaEscStepDefId": "8b6042d173062300e7af6238edf6a7f3",
        "reminderNum": 1,
        "rosterId": "",
        "memberId": "",
        "memberIds": [],
        "isOverride": false,
        "additionalEscalatees": [],
        "forcedCommunicationChannel": "",
        "rotaId": "349f399173062300e7af6238edf6a75e",
        "groupId": "096fb59173062300e7af6238edf6a783",
        "rotaScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": ""
      }
    ]

    /**
    * create a custom escalation for service desk shift with condition as P1 for Incident
    * taskGr is optional parameter
    * if taskGr is empty then it returns default escalation plan
    * if taskGr is passed then escalation policies are executed evaluated in order and corresponding escalation plan is returned
    **/

    var serviceDeskSysId = 'd625dccec0a8016700a222a0f7900d06';
    var taskGr = new GlideRecord('incident');
    taskGr.get('ed92e8d173d023002728660c4cf6a7bc');

    var ocRotation = new OnCallRotation();
    var escalationPlan = ocRotation.getEscalationPlan(serviceDeskSysId, null, null, taskGr);
    gs.log(JSON.stringify(escalationPlan));

## OnCallRotation - getEscalationType(文字列 rotaID) {#ariaid-title11}

簡単な計算に基づいてエスカレーションのタイプを取得します。勤務表にアクティブな勤務表が 1 つある場合は、メンバーをローテーションします。勤務表にアクティブな勤務表が 2 つ以上ある場合は、勤務表をローテーションします。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#r_OCR-getEscalationType_S__table_avq_4zf_2w__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| rotaID | 文字列 | 勤務表で勤務表を確認するための sys_id。 |
[表 : 18. パラメーター]

{#r_OCR-getEscalationType_S__table_avq_4zf_2w} {#r_OCR-getEscalationType_S__table_bvq_4zf_2w__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | * メンバー：勤務表に 1 つの勤務表がある場合。 * 勤務表：勤務表に 2 つ以上の勤務表がある場合。 * この勤務表に勤務表なし：上記のいずれでもない場合。 * カスタム：カスタムエスカレーションが適用される場合。 {#r_OCR-getEscalationType_S__ul_kxq_xzf_2w} |
[表 : 19. 返される内容]

{#r_OCR-getEscalationType_S__table_bvq_4zf_2w}  

    var rotaSysId = '349f399173062300e7af6238edf6a75e';
    var onCallRotation = new OnCallRotation();
    var escalationType = onCallRotation.getEscalationType(rotaSysId);
    gs.log(escalationType);

出力：

    custom

## OnCallRotation - getEscalateesAt(文字列 groupSysId, GlideDateTime gdt, 数字 position, GlideRecord taskGr) {#ariaid-title12}

特定の時間とポジションでのエスカレーション先 (通知ルールによってユーザー、グループ、またはデバイスレコード) を取得します。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
注:  
taskGR パラメーターを設定して、エスカレーション計画の評価を有効にします。
{#OCR-getEscalateesAt_S_GDT_N__table_o1s_x5j_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| groupSysId | 文字列 | グループの sys_id。 |
| gdt | GlideDateTime | UTC タイムゾーンでの yyyy-MM-dd HH:mm:ss 形式。デフォルトは現在の時刻です。 |
| position | 数字 | エスカレーションステップのポジション。 |
| taskGr | GlideRecord | オプション。現在のタスクレコード。taskGr が空の場合、このメソッドはデフォルトのエスカレーション計画を返します。taskGr が渡されると、エスカレーションポリシーが順番に評価され、対応するエスカレーション計画がこのメソッドによって返されます。 |
[表 : 20. パラメーター]

{#OCR-getEscalateesAt_S_GDT_N__table_o1s_x5j_3gb} {#OCR-getEscalateesAt_S_GDT_N__table_nmd_wvj_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| GlideRecord | 特定の時間とポジションでのエスカレーション先 (通知ルールによってユーザー、グループ、またはデバイスレコード) のアレイ。 |
[表 : 21. 返される内容]

{#OCR-getEscalateesAt_S_GDT_N__table_nmd_wvj_3gb}  

    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var escalatees = onCallRotation.getEscalateesAt(groupSysId, currentTime, 1);
    for (var i = 0; i < escalatees.length; i++) {
    gs.log(escalatees[i].name);
    }

出力：

重複シフトの場合：

    Abel Tuter
    Barbara Hindley

カスタムエスカレーションの場合：

    Abel Tuter
    Beth Anglin
    Change Management
    Barbara Hindley

    // Create a custom escalation for service desk shift with condition as P1 for Incident
    var serviceDeskSysId = 'd625dccec0a8016700a222a0f7900d06';
    // optional parameter taskGR
    var taskGr = new GlideRecord('incident');
    taskGr.get('ed92e8d173d023002728660c4cf6a7bc');

    var ocRotation = new OnCallRotation();
    var position = 1;
    var escalatees = ocRotation.getEscalateesAt(serviceDeskSysId, new GlideDateTime(), position, taskGr);

    // if taskGr is empty then it returns escalatees at a position in default escalation plan
    // if taskGr is passed then escalation policies are executed evaluated in order and escalatees at a position in corresponding escalation plan is returned
    for (var i = 0; i < escalatees.length; i++) {
        gs.log(escalatees[i].getDisplayValue());
    }

## OnCallRotation - getPrimaryUser() {#ariaid-title13}

シフトが 1 つだけの場合に、現在の主要連絡先の sys_id を取得します。
{#OCR-getPrimaryUser__table_zt1_qrj_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 22. パラメーター]

{#OCR-getPrimaryUser__table_zt1_qrj_3gb} {#OCR-getPrimaryUser__table_a51_qrj_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | 現在の主要連絡先の sys_id。 |
[表 : 23. 返される内容]

{#OCR-getPrimaryUser__table_a51_qrj_3gb}  
例：


    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var result = onCallRotation.who(groupSysId, currentTime);
    var primaryUser = onCallRotation.getPrimaryUser();

出力：

    62826bf03710200044e0bfc8bcbe5df1

## OnCallRotation - getPrimaryUserByRota(文字列 rotaId) {#ariaid-title14}

指定されたシフトの現在の主ユーザーの sys_id を取得します。この API は、単一のシフトと重複するシフトに適用されます。
{#OCR-getPrimaryUserByRota_S__table_n3s_zsj_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| rotaId | 文字列 | cmn_rota の sys_id。 |
[表 : 24. パラメーター]

{#OCR-getPrimaryUserByRota_S__table_n3s_zsj_3gb} {#OCR-getPrimaryUserByRota_S__table_o3s_zsj_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | 指定されたシフトの現在の主ユーザーの sys_id。 |
[表 : 25. 返される内容]

{#OCR-getPrimaryUserByRota_S__table_o3s_zsj_3gb}  


    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var rotaId = '349f399173062300e7af6238edf6a75e';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var result = onCallRotation.who(groupSysId, currentTime);
    var primaryUser = onCallRotation.getPrimaryUserByRota(rotaId);
    gs.log(primaryUser);

出力：

    62826bf03710200044e0bfc8bcbe5df1

## OnCallRotation - getPrimaryUserName() {#ariaid-title15}

現在の主要連絡先の名前を取得します。この API は単一のシフトに適用されます。
{#OCR-getPrimaryUserName__table_yzz_4sj_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 26. パラメーター]

{#OCR-getPrimaryUserName__table_yzz_4sj_3gb} {#OCR-getPrimaryUserName__table_zzz_4sj_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | 現在の主要連絡先の名前。 |
[表 : 27. 返される内容]

{#OCR-getPrimaryUserName__table_zzz_4sj_3gb}  


    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var result = onCallRotation.who(groupSysId, currentTime);
    var primaryUser = onCallRotation.getPrimaryUserName();
    gs.log(primaryUser);

出力：

    Abel Tuter

## OnCallRotation - getPrimaryUserNameByRota(文字列 rotaId) {#ariaid-title16}

指定されたシフトの現在の主ユーザーの名前を取得します。この API は、単一のシフトと重複するシフトに適用されます。
{#OCR-getPrimaryUserNameByRota_S__table_k43_15j_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| rotaId | 文字列 | cmn_rota の sys_id。 |
[表 : 28. パラメーター]

{#OCR-getPrimaryUserNameByRota_S__table_k43_15j_3gb} {#OCR-getPrimaryUserNameByRota_S__table_l43_15j_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | 指定されたシフトの現在の主ユーザーの名前。 |
[表 : 29. 返される内容]

{#OCR-getPrimaryUserNameByRota_S__table_l43_15j_3gb}  


    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var rotaId = '349f399173062300e7af6238edf6a75e';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var result = onCallRotation.who(groupSysId, currentTime);
    var primaryUser = onCallRotation.getPrimaryUserNameByRota(rotaId);
    gs.log(primaryUser);

出力：

    Abel Tuter

## OnCallRotation - getPrimaryUsers() {#ariaid-title17}

シフトの主要連絡先のリストを取得します。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#OCR-getPrimaryUsers__table_jbs_bsj_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 30. パラメーター]

{#OCR-getPrimaryUsers__table_jbs_bsj_3gb} {#OCR-getPrimaryUsers__table_kbs_bsj_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| オブジェクト | 主要連絡先のリスト。 |
[表 : 31. 返される内容]

{#OCR-getPrimaryUsers__table_kbs_bsj_3gb}  


    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var result = onCallRotation.who(groupSysId, currentTime);
    var primaryUser = onCallRotation.getPrimaryUser();
    gs.log(JSON.stringify(primaryUser));

出力：

    {
      "349f399173062300e7af6238edf6a75e": {
        "userSysId": "62826bf03710200044e0bfc8bcbe5df1",
        "userName": "Abel Tuter"
      },
      "35af799173062300e7af6238edf6a79e": {
        "userSysId": "d2826bf03710200044e0bfc8bcbe5dc9",
        "userName": "Barbara Hindley"
      }
    }

## OnCallRotation - spansOverlap(ArrayList parent, ArrayList child, 文字列 timeZone) {#ariaid-title18}

親スパンと子スパンが重複しているかどうかを確認します。
{#r_OCR-spansOverlap_AL_AL_S__table_pzn_tjf_2w__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| parent | ArrayList | 比較する親スパン。 |
| child | ArrayList | 比較する子スパン。 |
| timeZone | 文字列 | タイムゾーンの名前。 |
[表 : 32. パラメーター]

{#r_OCR-spansOverlap_AL_AL_S__table_pzn_tjf_2w} {#r_OCR-spansOverlap_AL_AL_S__table_qzn_tjf_2w__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | 親スパンと子スパンが重複している場合は true を返します。 |
[表 : 33. 返される内容]

{#r_OCR-spansOverlap_AL_AL_S__table_qzn_tjf_2w}  

    var onCall = new OnCallRotation();
     
    // get a time range we are interested in
    var timeZone = gs.getSession().getTimeZoneName();
    var dateStart = new GlideDateTime();
    var dateEnd = new GlideDateTime().addMonths(1);
     
    // convert glidedatime to scheduledatetime because it is required
    // by the function being called below
    var scheduleStart = new GlideScheduleDateTime(dateStart);
    var scheduleEnd =  new GlideScheduleDateTime(dateEnd);
    scheduleStart.setTimeZone(timeZone);
    scheduleEnd.setTimeZone(timeZone);
     
    // calculate rotation items based on the date and time given
    // for all the groups the currently logged in user is a member of
    gs.include("OnCallRotationPersonal");
    var rotation = new OnCallRotationPersonal();
    var myGroups = gs.getUser().getMyGroups();
    var groupIter = myGroups.iterator();
     
    while(groupIter.hasNext()){
    	var rotaItems = rotation.onCallDuringPeriod(groupIter.next(), scheduleStart, scheduleEnd);
     
    	// loop through rotation schedules
    	for (var i = 0; i < rotaItems.length - 1; i++) {
    		var parentItem = rotaItems[i];
    		var nextItem = rotaItems[i + 1];
     
    		// check if previous and next time spans overlap
    		var overlaps = onCall.spansOverlap(parentItem.getTimeSpans(), nextItem.getTimeSpans(), 
    			gs.getSession().getTimeZoneName());
    	}
    }

## OnCallRotation - startEscalations(GlideRecord now_GR, 文字列 eventName, 文字列 escalationScriptName) {#ariaid-title19}

ドキュメント (incident now_GR) とグループのエスカレーションを開始し、エスカレーション通知のイベント名を指定します。さらに、エスカレーションが発生したときに呼び出すビジネスルールの名前を指定します。このメソッドは、who または whoAt メソッドの呼び出しに成功した後に使用する必要があります。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#OCR-startEscalations_GR_S_S__table_nh2_xzj_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| now_GR | GlideRecord | ドキュメントの Glide レコード。incident now_GR などです。 |
| eventName | 文字列 | エスカレーション通知のイベント名。 |
| escalationScriptName | 文字列 | エスカレーションが発生したときに呼び出すビジネスルール |
[表 : 34. パラメーター]

{#OCR-startEscalations_GR_S_S__table_nh2_xzj_3gb} {#OCR-startEscalations_GR_S_S__table_oh2_xzj_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 35. 返される内容]

{#OCR-startEscalations_GR_S_S__table_oh2_xzj_3gb}

## OnCallRotation - who(文字列 groupSysId, GlideDateTime gdt, ブーリアン nullifyOverrideRoster, 文字列 rotaSysIds, ブーリアン overrideCustomEscalation, GlideRecord taskGR) {#ariaid-title20}

オンコールユーザー、グループ、またはデバイスが存在するかどうかを指定します。このメソッドは、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
注:  
taskGR パラメーターを渡して、エスカレーション計画の評価を有効にします。
{#OCR-who_S_GDT_B_S__table_xgb_ypj_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| groupSysId | 文字列 | チェック対象のグループの sys_id。 |
| gdt | [GlideDateTime](https://servicenow-prod.fluidtopics.net/Dy1YseqYjRu0xSRsxt9hHQ#c_GlideDateTimeAPI "GlideDateTime クラスは、GlideDateTime オブジェクトに対する操作を実行するためのメソッドを提供します。") | 日付と時刻。 フォーマット：UTC タイムゾーンでの yyyy-MM-dd HH:mm:ss デフォルト：現在の日時 |
| nullifyOverrideRoster | ブーリアン | グループの通知リストが特定の勤務表用かどうかを示すフラグ。 有効な値： * true：特定の勤務表用ではない。 * false：特定の勤務表用である。 |
| rotaSysIds | 文字列 | レコードをフィルタリングする際の基準となる cmn_rota の sys_id のカンマ区切りリスト。 |
| overrideCustomEscalation | ブーリアン | デフォルトのエスカレーションポリシーをカスタムエスカレーションで上書きするかどうかを示すフラグ。 有効な値： * true：デフォルトのエスカレーションポリシーを上書きする。 * false：デフォルトのエスカレーションポリシーを上書きしない。 |
| taskGR | [GlideRecord](https://servicenow-prod.fluidtopics.net/UU8iPPWC0AAbYz713AvFjQ#c_GlideRecordAPI "GlideRecord API はデータベース操作に使用されます。") | オプション。現在のタスクレコード。渡されると、メソッドがエスカレーション条件に基づいてエスカレーション先を設定します。 |
[表 : 36. パラメーター]

{#OCR-who_S_GDT_B_S__table_xgb_ypj_3gb} {#OCR-who_S_GDT_B_S__table_lzh_1rj_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | 一致が見つかったかどうかを示すフラグ。 可能な値： * true：少なくとも 1 つの一致が見つかった。 * false：一致が見つからなかった。 {#OCR-who_S_GDT_B_S__ul_f4h_qjk_lrb} |
[表 : 37. 返される内容]

{#OCR-who_S_GDT_B_S__table_lzh_1rj_3gb}  

    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var result = onCallRotation.who(groupSysId, currentTime);
    gs.log(result);

出力：

    true

次の例は、インシデントの条件 P1 を使用してサービスデスクのシフトのカスタムエスカレーションを作成する方法を示しています。

    /**
     * When the who() method is invoked with the optional taskGr parameter, 
     * escalatees are populated based on the conditional escalations
    **/

    var serviceDeskSysId = 'd625dccec0a8016700a222a0f7900d06';
    var taskGr = new GlideRecord('incident');
    taskGr.get('ed92e8d173d023002728660c4cf6a7bc');

    var ocRotation = new OnCallRotation();
    ocRotation.who(serviceDeskSysId, null, null, null, null, taskGr);
    while (ocRotation.next()) {
        gs.log(ocRotation.getUserName());
    }

出力：

    Beth Anglin

## OnCallRotation - whoAt(文字列 groupSysId, GlideDateTime gdt, 文字列 rotaSysIds) {#ariaid-title21}

オンコールユーザー、グループ、またはデバイスが存在するかどうかを指定します。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#OCR-whoAt_S_GDT_S__table_xgb_ypj_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| groupSysId | 文字列 | グループの sys_id。 |
| gdt | GlideDateTime | UTC タイムゾーンでの yyyy-MM-dd HH:mm:ss 形式。デフォルトは現在の時刻です。 |
| rotaSysIds | 文字列 | レコードをフィルタリングする際の基準となる cmn_rota のSys ID のカンマ区切りリスト。 |
[表 : 38. パラメーター]

{#OCR-whoAt_S_GDT_S__table_xgb_ypj_3gb} {#OCR-whoAt_S_GDT_S__table_ygb_ypj_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | オンコールユーザー、グループ、またはデバイスが 1 つ以上存在する場合は true、存在しない場合は false。 |
[表 : 39. 返される内容]

{#OCR-whoAt_S_GDT_S__table_ygb_ypj_3gb}  


    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var result = onCallRotation.whoAt(groupSysId, currentTime);
    gs.log(result);

出力：

    true

## OnCallRotation - whoIsOnCall(文字列 groupSysIds, 文字列 rotaSysIds, 文字列 rosterSysIds, GlideDateTime gdt) {#ariaid-title22}

指定された時刻に待機しているユーザーのリストを取得します。時刻が指定されていない場合は、現在の時刻が使用されます。この API は、単一のシフトと重複するシフトに適用されます。
{#OCR-whoIsOnCall_S_S_S_GDT__table_ixr_4jk_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| groupSysIds | 文字列 | レコードをフィルタリングする際の基準となる sys_user_group の sys_id のカンマ区切りリスト。 |
| rotaSysIds | 文字列 | レコードをフィルタリングする際の基準となる cmn_rota の sys_id のカンマ区切りリスト。 |
| rosterSysIds | 文字列 | レコードをフィルタリングする際の基準となる cmn_rota_roster の sys_id のカンマ区切りリスト。 |
| gdt | GlideDateTime | UTC タイムゾーンでの日付 |
[表 : 40. パラメーター]

{#OCR-whoIsOnCall_S_S_S_GDT__table_ixr_4jk_3gb} {#OCR-whoIsOnCall_S_S_S_GDT__table_ubq_ykk_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| オブジェクト | 指定された時刻に待機しているユーザー、グループまたはデバイスのリスト。たとえば、userId、deviceId、escalationGroup などの情報。 |
[表 : 41. 返される内容]

{#OCR-whoIsOnCall_S_S_S_GDT__table_ubq_ykk_3gb}  

    var groupSysId = '096fb59173062300e7af6238edf6a783';
    var currentTime = new GlideDateTime();
    var onCallRotation = new OnCallRotation();
    var escalatees = onCallRotation. whoIsOnCall(groupSysId, "", "", currentTime);
    gs.log(JSON.stringify(escalatees));

出力：

単一シフトの場合：

    [
      {
        "memberId": "119f399173062300e7af6238edf6a7e7",
        "memberIds": [],
        "userId": "62826bf03710200044e0bfc8bcbe5df1",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 1,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "9d9f399173062300e7af6238edf6a7ec"
      },
      {
        "memberId": "1d9f399173062300e7af6238edf6a7e8",
        "memberIds": [],
        "userId": "a8f98bb0eb32010045e1a5115206fe3a",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 2,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "d99f399173062300e7af6238edf6a7ef"
      },
      {
        "memberId": "dd9f399173062300e7af6238edf6a7e9",
        "memberIds": [],
        "userId": "0a826bf03710200044e0bfc8bcbe5d7a",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 3,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "519f399173062300e7af6238edf6a7f2"
      }
    ]

重複シフトの場合：

    [
      {
        "memberId": "119f399173062300e7af6238edf6a7e7",
        "memberIds": [],
        "userId": "62826bf03710200044e0bfc8bcbe5df1",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 1,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "9d9f399173062300e7af6238edf6a7ec"
      },
      {
        "memberId": "7daf799173062300e7af6238edf6a7a2",
        "memberIds": [],
        "userId": "d2826bf03710200044e0bfc8bcbe5dc9",
        "userIds": [],
        "roster": "b5af799173062300e7af6238edf6a7a2",
        "rota": "35af799173062300e7af6238edf6a79e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 1,
        "isOverride": false,
        "rotationScheduleId": "3daf799173062300e7af6238edf6a79e",
        "memberScheduleId": "06af799173062300e7af6238edf6a7cd"
      },
      {
        "memberId": "1d9f399173062300e7af6238edf6a7e8",
        "memberIds": [],
        "userId": "a8f98bb0eb32010045e1a5115206fe3a",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 2,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "d99f399173062300e7af6238edf6a7ef"
      },
      {
        "memberId": "f5af799173062300e7af6238edf6a7c9",
        "memberIds": [],
        "userId": "ee826bf03710200044e0bfc8bcbe5def",
        "userIds": [],
        "roster": "b5af799173062300e7af6238edf6a7a2",
        "rota": "35af799173062300e7af6238edf6a79e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 2,
        "isOverride": false,
        "rotationScheduleId": "3daf799173062300e7af6238edf6a79e",
        "memberScheduleId": "8aaf799173062300e7af6238edf6a7cf"
      },
      {
        "memberId": "dd9f399173062300e7af6238edf6a7e9",
        "memberIds": [],
        "userId": "0a826bf03710200044e0bfc8bcbe5d7a",
        "userIds": [],
        "roster": "9d9f399173062300e7af6238edf6a7e5",
        "rota": "349f399173062300e7af6238edf6a75e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 3,
        "isOverride": false,
        "rotationScheduleId": "119f399173062300e7af6238edf6a7df",
        "memberScheduleId": "519f399173062300e7af6238edf6a7f2"
      },
      {
        "memberId": "8aaf799173062300e7af6238edf6a7ca",
        "memberIds": [],
        "userId": "e2826bf03710200044e0bfc8bcbe5de0",
        "userIds": [],
        "roster": "b5af799173062300e7af6238edf6a7a2",
        "rota": "35af799173062300e7af6238edf6a79e",
        "group": "096fb59173062300e7af6238edf6a783",
        "escalationGroups": [],
        "deviceId": "",
        "deviceIds": [],
        "isDevice": false,
        "order": 3,
        "isOverride": false,
        "rotationScheduleId": "3daf799173062300e7af6238edf6a79e",
        "memberScheduleId": "02af799173062300e7af6238edf6a7d2"
      }
    ]

## OnCallRotation - whoIsNext(GlideRecord escalationGr) {#ariaid-title23}

エスカレーションのビジネスルールにより、次に連絡すべきシフトのメンバーが決まります。メソッドに渡されるエスカレーションレコードによって、ビジネスルールの発動の間のエスカレーションが追跡されます。この API は、単一のシフト、重複するシフト、およびカスタムエスカレーションに適用されます。
{#OCR-whoIsNext_GR__table_h4n_fck_3gb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| escalationGr | GlideRecord | ローテーションエスカレーション \[cmn_rota_escalation\] の GlideRecord。 |
[表 : 42. パラメーター]

{#OCR-whoIsNext_GR__table_h4n_fck_3gb} {#OCR-whoIsNext_GR__table_i4n_fck_3gb__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 43. 返される内容]

{#OCR-whoIsNext_GR__table_i4n_fck_3gb}

