記事 (1/18)
このモジュールでは、次のことを学習します。
前提条件:このモジュールは、Flow Designer と通知の以下のトピックに精通していることを前提としています。
Flow Designer については、「Flow Designer の使用」学習モジュールと「通知」学習モジュールの「通知」で学ぶことができます。
記事 (2/18)
重要:この学習モジュールの内容は、Quebec ServiceNow リリース用に最後に更新されたもので、Rome リリースでは更新されていません。Rome リリースとこの学習モジュールのコンテンツとの間に違いが見られる場合があります。
この学習モジュール全体で Special Occasions アプリケーションを使用して、アプリケーション作成の基礎である概念とプロセスを紹介し、実際に示します。Special Occasions アプリケーションの構築は行いません。
演習では、NeedIt アプリケーションを開発します。
演習は、次の 3 つの方法で示されます。
NeedIt アプリケーションを使用すると、ユーザーは複数の部門からのサービスを要求できます。ソースコントロールを使用して、この学習モジュールに必要なすべての NeedIt アプリケーションファイルから始めます。
演習 (3/18)
ServiceNow は GitHub を使用して、開発者サイトの学習コンテンツをコピーして使用するアプリケーションリポジトリを提供します。リポジトリには、アプリケーションファイルの固定セットであるタグが含まれているため、部分的に構築されたアプリケーションを使用して作業を開始できます。ServiceNow が提供するリポジトリを個人開発者インスタンス (PDI) にコピーしてインポートすることで、モジュール内の実践的な演習に必要なすべてのファイルを取得できます。
注意:ServiceNow が開発者プログラムの学習コンテンツで GitHub を使用する方法の詳細と、リポジトリをフォークしてアプリケーションをインポートする方法に関するビデオを見るには、『GitHub ガイド』を参照してください。
この演習では、次のことを行います。
重要:リポジトリを既にフォークしてインポートしている場合は、次の演習に進み、タグから分岐を作成して、アプリケーションファイルを PDI にロードできます。モジュールを完了するには、NeedIt アプリケーションファイルが必要です。
演習のこのセクションでは、開発者サイトの学習コンテンツで使用するアプリケーションリポジトリのパーソナルフォークを作成します。
演習のこのセクションでは、アプリケーションリポジトリを ServiceNow にインポートします。プロセスの一環として、まず GitHub アカウントの資格情報レコードを作成してから、Studio を使用してアプリケーションリポジトリを PDI にインポートします。
演習 (4/18)
この演習では、「Flow Designer での通知」モジュールで使用するアプリケーションファイルを含む、このモジュール用の NeedIt アプリケーションの分岐を作成します。
注意:この演習を開始する前に、「演習:「Flow Designer での通知」モジュールのためにリポジトリをフォークしてアプリケーションをインポートする」で説明したように、NeedIt リポジトリをフォークしてインポートしておく必要があります。
記事 (5/18)
プロセスの状況についてユーザーに知らせる必要がある場合について解説します。アクションを使用して、フローの一部としてメールまたは SMS を送信します。次の場合に、ServiceNow インスタンスがフローから送信通信を送信します。
記事 (6/18)
Flow Designer には、ユーザーに通信を送信するための 3 つのアクション (メール送信、SMS 送信、通知送信) があります。
フローで [メール送信] アクションを使用して、プロセスの一環としてメールを送信します。
データピルを使用して、メールアドレスを [宛先]、[CC]、および [BCC] フィールドに動的に追加するか、[件名] および [本文] フィールドに動的コンテンツを追加します。メールアドレスは [宛先]、[CC]、および [BCC] フィールドで使用します。
フローで [SMS 送信] アクションを使用して、プロセスの一環としてテキストメッセージを送信します。
[SMS 送信] アクションは、受信者が SMS 通知チャネルを作成している場合にのみ機能します。
フローで [通知送信] アクションを使用して、通知レコードを実行します。
通知レコードは、フローとは別に作成および管理されます。通知の作成の詳細については、「通知」モジュールを参照してください。この学習モジュールの演習では、NeedIt アプリケーションタグで提供される通知レコードを使用します。
[通知送信] アクションには、[メール送信] や [SMS 送信] のオプションに優る次のようなメリットがあります。
演習 (7/18)
この演習では、期限切れの NeedIt タスクレコードの通知を送信するフローを作成します。
作業しているモジュールによっては、NeedIt タスクレコードが既に存在する場合があります。この演習では、期日が過ぎた NeedIt タスクレコードが必要です。
演習のこのセクションでは、フローで実行する通知レコードの内容を確認します。
演習のこの部分では、Beth Anglin への通知を有効にします。
期限切れの NeedIt タスクレコードを毎日検索するフローを作成します。
期限切れの NeedIt タスクレコードごとにメールを送信するアクションをフローに追加します。
フローをテストして、通知によって生成されたメールのプレビューを確認します。
記事 (8/18)
送信メールの設定は、通常、アプリケーション開発者ではなくシステム管理者の責任となります。個人の開発者インスタンスからメールを送信するには、送信メールを設定する必要があります。
ServiceNow ブラウザーのメインウィンドウで、Application Navigator を使用して [システム診断] > [メール診断] を開きます。個人の開発者インスタンスでは、メール送信はデフォルトで無効になっています。
メール送信を有効にするには、アプリケーションスコープを [グローバル] に設定する必要があります。
ServiceNow ブラウザーのメインウィンドウで、Application Navigator を使用して [システムのプロパティ] > [メールプロパティ] を開きます。[送信メール設定] 列で、[メール送信の有効化] を選択します。
開発者向けのヒント:非本番インスタンスですべての通知をテストするには、メールの [このテスト用アドレスにすべてのメールを送信] プロパティにメールアドレスを追加します。個々の通知をテストするには、テスト用アドレスをフローに追加します。テストが完了したら、必ずフローからテスト用アドレスを削除してください。
[保存] をクリックして設定の変更を保存し、情報メッセージの [メール診断] リンクをクリックして、[メール診断] ページを開きます。
メール送信が稼働中かどうかを検証します。
スコープをアプリケーションスコープに戻します。
演習 (9/18)
この演習では、メールを送信するように個人開発者インスタンス (PDI) を設定します。
演習 (10/18)
この演習では、インスタンスで設定された送信メールを使用して期限切れの NeedIt タスクレコードのメールを送信するフローをテストします。
期限切れの NeedIt タスクレコードのメールを再度送信するフローをテストし、メールが送信されたことを確認します。このメールへの返信は、後半の演習で行います。
記事 (11/18)
受信メールは、任意のユーザーから ServiceNow に送信されるメールです。ServiceNow は受信メールを解析し、受信メールフローに基づいてアクションを実行します。
ServiceNow は、受信したメールを分析して以下のように判別します。
受信メールトリガーを使用して受信メールに対してアクションを実行するようにフローを設定します。
最初のステップでは、メッセージが返信、転送、または新規メッセージかどうかを判別します。ServiceNow は、受信メールの件名に返信または転送を示すプレフィックスがあるかどうかを検索します。
プリフィックスを設定するには、Application Navigator を使用して [システムメールボックス] > [管理] > [メールプロパティ]を開きます。大文字と小文字を区別しないカンマ区切りのリストを使用して、受信メール構成で返信と転送のプリフィックスを設定します。システム管理者は通常、インスタンスのプリフィックスを設定します。
受信メールから作成されたメールレコードの [受信タイプ] は、[新規]、[転送]、または [返信] に設定されます。
受信メールが返信または転送として認識された場合は、件名またはメッセージ本文で一意のウォーターマークを探して、受信メールと既存のレコードとの照合が試みられます。デフォルトでは、ウォーターマークは送信メッセージの最後の行として挿入されます。
ウォーターマークが見つからない場合は、件名と本文でレコード番号が検索されます。
実行する受信メールフローを決定する最後のステップは、メール条件が一致するかどうかを確認することです。条件ビルダーを使用して条件を作成します。
受信メールフローは、次の場合にのみ実行されます。
記事 (12/18)
ServiceNow インスタンスがメールを受信すると、インスタンスはメールの詳細情報とそれに一致するユーザーを解析します。開発者は、解析されたメールとユーザーデータにフロー内でアクセスできます。
ServiceNow インスタンスがメールを受信すると、インスタンスはメールを解析し、解析された詳細情報からメールレコードを作成します。この例は、解析したメールの Flow Designer データピルを示しています。
解析したメッセージからメールオブジェクトの値を直接表示するには、[システムメールボックス] のメールレコードにアクセスします。受信メールは、次の 3 つのメールボックスのいずれかに表示されます。
注意:システムメールボックスモジュールのデフォルトのフィルターには、当日作成されたメールレコードのみが表示されます。古いメールレコードを表示するには、[作成日が本日 (Created on Today)] フィルターを削除します。
メールレコードを開いて、解析された詳細情報を確認します。
記事 (13/18)
ServiceNow は、送信者のメールアドレスをユーザー [sys_user] テーブルレコードと照合しようとします。
一致するものが見つかった場合:
一致するものが見つからない場合:
注意:メール返信の場合、代理操作されたユーザーは、返信レコードと一致するテーブルにアクセスできる必要があります。ユーザーがレコードにアクセスできない場合、メールは受信メールフローによって処理されません。
記事 (14/18)
受信メールフローを作成する手順は、他のフローと同じです。フローを作成し、[受信メール] をトリガーとして選択します。フローの [メール条件] および [返信レコードタイプ] を設定し、メール受信時にプロセスを実行するアクションを追加します。
[メール条件] を設定して、受信したメールで受信メールフローを実行するかどうかを決定します。
Special Occasions サンプルアプリは、誕生日や就業日を祝うためにユーザーにメールを送信します。ユーザーがこれらのメールのいずれかに日付の問題を返信するとどうなるでしょうか?
この例では、受信メールフローは、特別な機会のメールへの返信に対してアクションを実行するように設計されています。[受信タイプ] は、メールの返信に対してのみ [返信] を実行するように設定されています。[メール条件] では、ユーザーが本文テキストに何らかの修正を書き込んだことを示すテキストも検索します。たとえば、「今日ではない」、「日付が不適切」、「日付が間違っている」などです。
[返信レコードタイプ] は、ユーザーに送信された元のメールのウォーターマークを [機会] テーブルのレコードと照合します。フローは機会レコードにアクセスして、レコードを更新したり、フォローアップタスクでレコードを参照したりすることができます。新しいメールを処理する受信メールフローの [返信レコードタイプ] フィールドには値を設定しないでください。
[受信メール] トリガーが選択すると、メール、ユーザー、および返信レコードをフローで使用できるようになります。この例では、[データ] パネルの [トリガー] セクションに、インスタンスから送信された元のメールと一致する [メールレコード]、[ユーザーレコード]、および [機会レコード] のデータピルがあります。
アクションで、トリガーのデータピルを使用します。この例では、最初のアクションで機会レコードを更新して非アクティブとしてマークし、問題が解決されるまでユーザーがそれ以上通知を受け取らないようにします。2 番目のアクションでは、問題 機会レコードをフォローアップするインシデントレコードを作成し、ユーザーのメールからインシデントレコード番号と本文テキストを含めます。
演習 (15/18)
この演習では、メールを受信するように個人開発者インスタンス (PDI) を設定します。通常、メールの送受信を管理するのはシステム管理者です。
演習 (16/18)
この演習では、期限切れの NeedIt タスクのメール通知に対する応答を処理するための受信メールフローを作成してテストします。
重要:個人開発者インスタンス (PDI) は、devXXXXX@servicenowdevelopers.com 形式 (XXXXX は PDI 番号) のメールアドレスを使用してメールを送信します。PDI が古いと、このアドレスに送信されたメールは受信されません。古い PDI を使用している場合は、メール受信者を変更してから返信を送信する必要があります。
メール受信者を変更する必要があるかどうかを判断するには、Application Navigator を使用して [システムメールボックス] > [管理] > [メールアカウント] を開きます。ServiceNow POP3 のメールアカウントレコードを開きます。[サーバー] の値が [pop3] の場合、この演習でメールに返信するときに、[宛先] フィールドのメールアドレスを「devXXXXX@service-now.com」に変更します。[サーバー] の値が [pop3dev] の場合は、変更する必要はありません。
演習のこのセクションでは、期限切れの NeedIt タスクに応答してメールを受信したときに実行されるフローを作成します。このフローでは、受信メールの本文テキストを含む NeedIt タスクレコードを更新します。
ユーザーが一致せず、ゲストユーザーが NeedIt タスクレコードにアクセスできなかったため、メールを処理できませんでした。演習のこのセクションでは、インスタンス内のユーザーと一致するよう、自分のメールアドレスに Beth Anglin のメールアドレスを設定します。また、Beth が NeedIt タスクレコードへのアクセスに必要なロールを持っていることも確認します。
演習のこのセクションでは、予期しない通知を防止するため、通知と Beth のユーザーレコードから自分のメールアドレスを削除します。
演習 (17/18)
開発者は、GitHub のようなソースコントロールアプリケーションを使用して、個人開発者インスタンス (PDI) の外部で変更をコミット (完了した作業を保存) できます。アプリケーションに対する変更内容をコミットして、作業をソースコントロールに保存します。
この演習では、このモジュールで完了した作業を GitHub リポジトリに保存します。
注意:ServiceNow が開発者プログラムの学習コンテンツで GitHub を使用する方法の詳細と、作業を保存する方法に関するビデオを見るには、『GitHub ガイド』を参照してください。
記事 (18/18)
コアコンセプト: