コンピューター電話統合
コンピューター電話統合 (CTI) は、ユーザーマシン上の CTI クライアントがインスタンスに URL を送信することで実行されます。
URL には次のコンポーネントが必要です。
- ベース URL。例:
https://<インスタンス名>.service-now.com/cti.do?でインスタンスを取得し、CTI 処理を要求します。 - パラメーターは、インシデントフォームのどの部分を表示するかを指定します。
- sysparm_caller_name=name、ここでの「name」はユーザーの名前です。
- sysparm_caller_phone=phone、ここでの「phone」はユーザーの電話番号です。通話中にユーザーを特定する場合は、名前または電話番号のいずれかを指定する必要があります。後で説明するように、ユーザーを識別するために他のパラメーターを指定することもできます。
- sysparm_task_id=taskID、ここでの「taskID」は、発信者が問い合わせている既存の問題を示します。
- sysparm_view=view、ここでの「view」は、データの表示に使用されるビューの名前です。
- sysparm_xxxx=value、ここでの「xxxx」は、指定された「value」を入力する必要がある「incident」レコード内のフィールドの名前です。たとえば、sysparm_priority=1 の場合、新しいインシデント画面が表示されたときに [優先度] フィールドの値が 1 に設定されます。
- sysparm_cti_rule=name、ここでの「name」は、デフォルトのスクリプトを使用するのではなく、CTI 処理のために呼び出される関数の名前です。関数は、クライアントコール可能とマークされた sys_script エントリで定義する必要があります。関数で GlideRecord を挿入、更新、または削除する必要がある場合は、クライアントコール可能でない別の関数を呼び出して更新する必要があります。注:CTI 処理スクリプトはクライアントコール可能に変更されていますが、タスクビューを実装するコードはコメントアウトされています。task.update() を実行するコードに対して、クライアントコール可能でない新しい関数を実装する必要があります。注:URL のパラメーターは、グローバル値としてビジネスルールで使用できます。例:スクリプトをクライアントコール可能にするには、sys_script エントリが表示されるときに表示されるフォームの [クライアントコール可能] チェックボックスをオンにする必要があります。デフォルトでは、[クライアントコール可能] チェックボックスが表示されない場合があります。[クライアントコール可能] チェックボックスを表示するには、歯車のアイコンとスラッシュバケットメカニズムを使用して、フォームに表示するフィールドを変更する必要があります。
指定するビジネスルールは、ポップアップ画面の URL を返し、「answer」グローバル変数を設定する必要があります。var name = sysparm_caller_name;
https://<インスタンス名>.service-now.com/cti.do?sysparm_caller_name=Don%20Goodliffe のようになります。sysparm パラメーターはアンパサンド (&) で区切って使用できます。CTI 処理スクリプト
sysparm_cti_rule パラメーターが指定されていない場合、システムは CTI 処理スクリプトを使用して次の機能を提供します。
CTI 処理スクリプトは次のことを行います。
- sysparm_caller_name 値が指定されている場合は、それでユーザーを識別しようとします。
- ユーザーが見つからない場合、スクリプトは、sysparm_caller_phone 値が指定されている場合は、それでユーザーを識別しようとします。
- ユーザーが識別された場合、次のいずれかが実行されます。
- ユーザーがオープンインシデントを持っている場合、現在の問い合わせユーザーとすべてのユーザーのオープンインシデントに関する情報がポップアップ画面に表示されます。
- ユーザーがオープンインシデントを持っていない場合、ポップアップ画面には、表示された URL に指定された情報が表示されます。
- ユーザーが識別されず、taskID が指定されていて、taskID が存在する場合は、何も起こりません。このケースを処理するコードはコメントアウトされています。ポップアップ画面にタスクの詳細を表示するには、CTI 処理スクリプトを変更して、クライアントコール可能でない別の関数に機能を配置する必要があります。