Preferences - スコープ指定、グローバル
Preferences API は、ユーザーの通知宛先を取得します。
通知の宛先は、特定のメールアドレスや電話番号など、通知を配信できる場所です。この API は、通知 [sys_notification] テーブルからの通知に基づいています。通知は、メールや ワークスペース などのチャネルを介して送信されます。チャネルを使用して、複数のタイプの宛先に通知を送信できます。たとえば、メールチャネルは、個人用メールと仕事用メールの両方の宛先に通知を送信できます。宛先タイプは、通知宛先タイプ [sys_notif_destination_type] テーブルにリストされています。
この API を PreferenceDestination API とともに使用して、ユーザー通知設定を更新します。
このクラスは、 sn_notification 名前空間識別子を使用します。
Preferences - Preferences(GlideRecord recipient)
指定されたユーザーの初期設定オブジェクトをインスタンス化します。
| 名前 | タイプ | 説明 |
|---|---|---|
| recipient | GlideRecord | 通知宛先を取得するユーザーに対するユーザー sys_user テーブルの GlideRecord。 |
この例では、ユーザーである Abel Tuter さんの初期設定オブジェクトをインスタンス化します。
var recipient = new GlideRecord('sys_user');
recipient.get('last_name', 'Tuter');
var prefs = new sn_notification.Preferences(recipient);
Preferences - getDestinations()
ユーザーの通知宛先を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| アレイ | PreferenceDestination オブジェクトのアレイ。ユーザーに宛先がない場合、アレイは空です。 |
この例では、Abel Tuter さんのすべての通知宛先を取得します。出力は、Abel さんの宛先が 1 つであることを示しています。
var recipient = new GlideRecord('sys_user');
recipient.get('last_name', 'Tuter');
var prefs = new sn_notification.Preferences(recipient);
var dests = prefs.getDestinations();
gs.print(dests);
出力:
[object PreferenceDestination] Preferences - getDestinationsByChannel(GlideRecord チャネル)
指定したチャネルを使用するユーザーの通知宛先を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| channel | GlideRecord | フィルタリングを行うチャネルに対する通知チャネル [sys_notification_channel] テーブルからの GlideRecord。 |
| タイプ | 説明 |
|---|---|
| アレイ | PreferenceDestination オブジェクトのアレイ。ユーザーがチャネルを使用する通知宛先を持っていない場合、またはチャネルが存在しない場合、アレイは空です。 |
この例では、ワークスペースチャネルを使用する Abel Tuter さんのすべての宛先を取得します。出力は、ワークスペースチャネルを使用する Abel さんの宛先が 1 つであることを示しています。
var recipient = new GlideRecord('sys_user');
recipient.get('last_name', 'Tuter');
var prefs = new sn_notification.Preferences(recipient);
var channel = new GlideRecord('sys_notification_channel');
channel.get('name', 'Workspace');
var dests = prefs.getDestinationsByChannel(channel);
gs.print(dests);
出力:
[object PreferenceDestination]