OnCallContactPreferenceUtil - グローバル
連絡先設定を処理するためのユーティリティ。
連絡先設定の設定については、「 連絡先設定を構成する」を参照してください。
このユーティリティ API は OnCallRotation API をサポートしています。
OnCallContactPreferenceUtil - OnCallContactPreferenceUtil()
OnCallContactPreferenceUtil クラスのインスタンスを作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
OnCallContactPreferenceUtil - getContactsAtByEscalatee(オブジェクト escalatee, 数字 contactAttempt, GlideDateTime gdt, 文字列 rotaSysIds)
エスカレーション先オブジェクトがある連絡先のリストを取得します。返された連絡先ごとに、ユーザーの連絡先設定のリストが入っています。
| 名前 | タイプ | 説明 |
|---|---|---|
| エスカレーション先 | オブジェクト | 必須。getEscalationPlan() メソッドによって返されたエスカレーション先オブジェクト。 |
| ContactAttempt | 数字 | オプション。連絡しようとしている試行 (デフォルト値 = 1)。
|
| gdt | GlideDateTime | オプション。UTC タイムゾーンでの yyyy-MM-dd HH:mm:ss 形式。デフォルトは now.admin |
| rotaSysIds | 文字列 | オプション。[cmn_rota] テーブルから取得されたシフトのSys ID のカンマ区切り文字列。デフォルト値は、現在のシフトのSys ID を返します。 |
| タイプ | 説明 |
|---|---|
| アレイオブジェクト | 特定の時間とポジションでのエスカレーション先 (通知ルールによってユーザー、グループ、またはデバイスレコード) のアレイ。
|
var serviceDeskSysId = '<Sys_ID>';
var ocRotation = new OnCallRotation();
var escalationPlan = ocRotation.getEscalationPlan(serviceDeskSysId);
var escalatee = escalationPlan[0];
var onContactPrefUtil = new OnCallContactPreferenceUtil();
var contactAttempt = 1;
var gdt = new GlideDateTime();
var contacts = onContactPrefUtil.getContactsAtByEscalatee(escalatee, contactAttempt, gdt);
gs.log(JSON.stringify(contacts));
出力:
[{
"type": "user",
"sys_id": "<Sys_ID>",
"rota_id": "<Rotation_ID>",
"roster_id": "",
"escalation_step_id": "<Escalation_Step_ID>",
"forced_communication_channel": "",
"override_user_contact_preference": true,
"preference_source": "contact",
"contact_attempt": 1,
"user_preferences": [{
"type": "sms",
"number": "8587200477"
}],
"contact_preferences": [{
"type": "voice",
"number": "5555555555"
}]
}]
OnCallContactPreferenceUtil - getUserPreferences(文字列 userSysId, 数字 contactAttempt, GlideDateTime gdt, 文字列 communicationTypes)
ユーザーが通信を選択したときの連絡先設定のリストを取得します。時刻が指定されていない場合は、現在の時刻が使用されます。このメソッドは、単一のシフトと重複するシフトに適用できます。
| 名前 | タイプ | 説明 |
|---|---|---|
| userSysId | 文字列 | [sys_user] テーブルから取得したユーザーのSys ID。 |
| ContactAttempt | 数字 | オプション。連絡しようとしている試行 (デフォルト値 = 1)。
|
| gdt | GlideDateTime | オプション。UTC タイムゾーンでの yyyy-MM-dd HH:mm:ss 形式。デフォルトは現在の時刻です。 |
| communicationTypes | 文字列 | オプション。次の値を 1 つ以上含むカンマ区切りの文字列です。
デフォルトには、利用可能なすべての通信タイプが含まれます。 |
| タイプ | 説明 |
|---|---|
| アレイオブジェクト | オンコールユーザー連絡先設定。
|
var onContactPrefUtil = new OnCallContactPreferenceUtil();
var contactAttempt = 1;
var gdt = new GlideDateTime();
var itilUserSysId = '<itilUserSysId>;
var userPreferences = onContactPrefUtil.getUserPreferences(itilUserSysId, contactAttempt, gdt);
gs.log(JSON.stringify(userPreferences));
出力:
[{
"type": "sms",
"number": "5555555555"
}, {
"type": "voice",
"number": "5555555555"
}]
OnCallContactPreferenceUtil - getCatchAllContacts(文字列 rotaId, GlideDateTime gdt)
予備連絡先と設定のリストを取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| rotaId | 文字列 | [cmn_rota] テーブルから取得したシフトのSys ID。 |
| gdt | GlideDateTime | オプション。UTC タイムゾーンでの yyyy-MM-dd HH:mm:ss 形式。デフォルトは現在の時刻です。 |
| タイプ | 説明 |
|---|---|
| アレイオブジェクト | 予備連絡先と設定のリスト。
|
例:
var onContactPrefUtil = new OnCallContactPreferenceUtil();
var contactAttempt = 1;
var gdt = new GlideDateTime();
var rotaSysId = '<Rotation_Sys_ID>';
var catchAllContacts = onContactPrefUtil.getCatchAllContacts(rotaSysId, gdt);
gs.log(JSON.stringify(catchAllContacts));
出力:
[{
"type": "user",
"sys_id": "<Sys_ID>",
"rota_id": "<Rotation_ID>",
"roster_id": "",
"escalation_step_id": "<Escalation_Step_ID>",
"forced_communication_channel": "",
"override_user_contact_preference": true,
"preference_source": "contact",
"contact_attempt": 1,
"user_preferences": [{
"type": "sms",
"number": "8587200477"
}],
"contact_preferences": [{
"type": "voice",
"number": "5555555555"
}]
}]