27. Twilio連携設定リファレンス 3.8.0以前

本書はX-MON3系列とTwilioを連携し、より便利にご利用頂けることを目的としたマニュアルです。

Twilioは弊社のサービスではありません、利用には別途料金が発生します。

本番環境への適用は十分に検証を行った上で実施してください。

弊社は、本マニュアルを起因して利用者に生じたあらゆる損害(Twilio側の利用費用等)について一切の責任を負いません。

27.1. はじめに

 本書はX-MON3系列とTwilioを連携し、より便利にご利用頂けることを目的としたマニュアルです。

X-MONの他社製品連携-Twilio連携設定をご利用になる場合、Twilioの事前登録が必要です。Twilioにつきましては下記URLをご参照ください。

【Twilio公式URL】

http://twilio.kddi-web.com/

また、Twilioと連携するにはX-MONサーバに対しグローバルIPアドレスが割り振られ、TwilioからX-MONに対しHTTPの通信が出来る事が必要となります。

グローバルIPアドレスを割り振れない場合、巻末付録をご参考ください。

27.2. Twilio電話通知を行うまでの設定の流れ

X-MONの他社製品連携-Twilio連携設定を使用する場合、以下のような流れでX-MONの管理画面より各種設定が必要です。

※Twilioのアカウントをすでにお持ちであることが前提です。お持ちでない場合、Twilio公式サイト(http://twilio.kddi-web.com/)よりアカウントの取得をお願い致します。

【設定の流れ】

twilio380_flow

各項目の詳細につきましては後述の手順をご覧ください。

27.3. X-MON URL設定を行う

X-MON管理画面の [管理者メニュー] - [その他設定] を選択します。

twilio380_url

遷移した画面の [X-MON URL設定] を選択してください。

twilio380_url2

X-MON URL設定画面に遷移しますので、X-MON URL(赤枠)を設定の上、【設定を反映】をクリックしてください。

※以下赤枠内は自動で入力されますので、特別な場合を除き、変更いただく必要はございません。

twilio380_url3

URL設定がされている場合、再度X-MONURL設定画面へ遷移すると、黄色メッセージ「URLは現在登録されていません。…」と表示されていない状態になります。

twilio380_url4

上記で、X-MON URL設定は完了です。

27.4. 通知先の電話番号をユーザ管理で登録

電話をかけたい電話番号(発信先)をX-MONのユーザ管理で設定します。

[管理者メニュー] - [ユーザ管理]を選択。

twilio380_tel

既存のユーザに登録する場合は[詳細表示]から[編集]を、新規に追加する場合は[新規作成]を開いてください。

本手順では、新規作成時の例をご紹介致します。

ユーザ一覧画面にて[新規作成]を選択。

twilio380_tel2

「連絡先電話番号 (Twilio API連携)」を入力する欄がありますので、ご利用の電話番号をご入力ください。

日本国内で受話する電話番号については、先頭の「0」を外して、「+81」を入力する必要があります。

例)「090-xxxx-xxxx」という電話番号であれば、「+8190-xxxx-xxxx」となります。

twilio380_tel3

「連絡先電話番号 (Twilio API連携)」以外の項目につきましては任意となります。

以上で、発信先の電話番号登録は完了です。

27.5. 通話設定を行う

この設定は、電話通知を行いたいサービスやホストに対しエスカレーション設定で設定する項目となります。

[管理者メニュー] - [他社製品連携] - [Twilio連携設定]を開きます。

twilio380_notiset

twilio380_notiset2

Twilioアカウント情報画面に遷移しますので、[新規作成]よりTwilioアカウントを追加します。

twilio380_notiset3

下記画面に遷移しますので、各項目を入力してください。

【名称】は任意です。

【ACCOUNT SID】および、【AUTH TOKEN】につきましては、Twilioのアカウントより取得してください。

Twilio管理画面へログイン後、ダッシュボードにてAPI通信情報(ACCOUNT SID AUTH TOKEN)の確認を行えます。

twilio380_notiset4

上記は2015/10/01時点でのTwilio管理画面

すべての項目の入力が完了しましたら、[作成と承認]を選択。

twilio380_notiset5

[管理者メニュー] - [他社製品連携] - [Twilio連携設定]にて、先ほど追加したアカウントが登録されていることを確認。

twilio380_notiset6

Twilioアカウント情報が登録されるとサブメニューが新たに表示されます。

twilio380_notiset7

通話設定を選択。

twilio380_notiset8

通話設定にて[新規作成]を選択。

twilio380_notiset9

遷移した [Twilio 通話設定の作成] にて、各種項目をご入力ください。

■設定項目の詳細について

X-MONの管理画面右上のアイコン群の「?」マークをクリックするとオンラインヘルプが表示されます。

オンラインヘルプ内、[管理者メニュー] - [他社製品連携] - [Twilio 通話設定の作成、編集]に記載がございますのでご参照頂ければと存じます。

twilio380_notiset10

設定出来ましたら、[作成と承認]をクリックしてください。

X-MONの再起動ボタンが点滅致しますので、X-MONを再起動して設定を反映させて作業は完了です。

なお、電話通知が実行された場合、9#を押して頂く事で「この障害アラートに対し、対応を開始した」という操作になりますので、9#を押して電話を終了して頂くようお願いします。 (普通に電話を切ると再度同じ宛先に電話がかかってきます)

詳細につきましては、[Twilio 通話設定の作成]画面に下記説明がございます。

twilio380_notiset11

27.6. サービスに対し、エスカレーション設定を行う

通話設定を行う】にて作成した通話設定を、エスカレーションを行いたいサービス、ホストに設定を行います。

エスカレーション設定の仕方が良くわからない場合、X-MONサポートサイトにて配布しております「エスカレーション設定クイックリファレンス」をご確認ください。

設定したいサービスIDの[サービスエスカレーション設定]をクリックして頂き、「コマンドを実行」を選択し、セレクトボックスから[TwilioAPI連携]下に、【通話設定を行う】にて作成した通話設定が選択出来ますので、選択してください。

実行タイミング・対象ステータスを設定し、[設定と承認]をクリック後、X-MONを再起動してください。

既に1つエスカレーション(メールなど)を設定済みの場合、[追加]ボタンをクリックして頂くと、複数のエスカレーションを設定出来ます。

以上で設定は完了となります。

27.7. メッセージテンプレートについて

メッセージテンプレートの設定は必ず必要というわけではございません。

以下のような場合にご利用いただくと便利です。

・電話通知先のユーザが電話を受信した際、障害通知の開始と終了時に定型文をいれたい

・Twilioがホスト名やサービス名を読み上げたとき正しく読み上げてくれない

・電話通知先のユーザが電話を受信した際、障害通知の開始と終了時に定型文をいれたい

「いつもお世話になっております。○○センターです。」や「○○分以内に障害復旧を行います。」といった定型文を受話後の開始時と終了時に入れることが可能です。

また、定型文の設定は「ユーザ管理」で登録されているユーザごとに行うことが可能です。

twilio380_template

・Twilioがホスト名やサービス名を読み上げたとき正しく読み上げてくれない

ホスト名にデータベースを意味するdbを入れた「db_server」というホストをTwilio通話が読み上げる場合、「次のホストで障害が発生しています。でじべるさーばー…」とdbが「でしべる」と読み上げる場合などがございます。

意図したホスト名に読み上げてくれない場合、「再生メッセージ置き換え設定」を利用いただけると「でしべる」ではなく「データベース」と読ませることが可能になります。

twilio380_template2

入力例にも記載しておりますように

TRAFFIC,トラフィック

db,データベース

と記載し登録した場合、以下のように読み替えを行います。

ホスト/サービス名に含まれる文字

変換なしの読み上げ

変換後の読み上げ

TRAFFIC

てぃーあーるえーえふえふあいしー

トラフィック

db

でしべる

データベース

27.8. Twilioログについて

[管理者メニュー] - [他社製品連携] - [Twilio連携設定] - [ログ]よりTwilio API連携のログ履歴を確認することができます。

どの電話番号に何時頃通知し、どのダイヤル操作を行ったかまで確認を行えます。

詳細なログの見方につきましては [ログの見方について] をご参照ください。

twilio380_twilio_log

27.9. 注意事項

Twilioを利用した電話通知ですが、通話途中にX-MON操作画面より「Twilio アカウント情報」や「通話設定」の該当情報を削除しないようお願いいたします。

通知途中のダイヤル操作(1#,2#などのボタン操作)を行うと次の通知者へ連絡を回したり、ダウンタイムを設定したりといった動作を行うことができます。携帯電話←→Twilio←→X-MONと通信のやりとりが発生していますので、途中で必要な情報を削除されますとTwilioの電話が止まらない、障害が起きているにも関わらずうまく電話がかからなかったといった不具合を招く恐れがございます。

ご注意くださいますようお願いいたします。

27.10. Q&A

  • ダイヤル操作で案内されていないボタンを選択するとどうなるか。

通話開始時同様、一番初めに再生されるホスト、及びサービス件数を再生するガイダンスが流れます。

また、# (シャープ) ボタンだけを選択した場合、電話は切れますがそのまま直ぐ折り返しの電話がかかり直しますのでご注意ください。通話を終了にする場合、9# を選択する必要があります。

  • 音声再生後、#(シャープ) ボタンを選択せず待機しておくとどうなるか。

音声再生後のダイヤル操作待機時間は 30 秒となります。それまでに 9など数字のみ入力していた場合、入力していた数字がダイヤル操作対象とし読み込まれます。

何も操作せず 30 秒がすぎてしまった場合、通話を終了します。その後、直ぐ折り返しの電話がかかり直しますのでご注意ください。

  • ホストとサービス、両方で障害が発生した場合どうなるか。

ホストの障害を先に再生し終えた後で、サービスの障害を再生します。

  • 同じホスト、または同じサービスで障害と復旧が発生した後電話にでるとどうなるか。

電話通知で再生される内容は、常に最新の情報が再生されます。

"障害(未再生)" ⇒ "復旧" の場合、復旧1件の通知

"復旧(未再生)" ⇒ "障害" の場合、障害1件の通知

  • 一斉通知にて、電話通知中に追加の 障害/復旧 が発生するとどうなるか。

ダイヤル操作 9# にて通話終了した場合、追加分の 障害/復旧 通知が再度かかります。

詳細情報の再生や繰り返し再生を行った場合、追加分の 障害/復旧 通知も纏めて再生します。

  • 電話通知(呼び出し中)に対し、誤って電源ボタンを押してしまった(着信拒否してしまった)場合どうなるか

数秒後に折り返しの電話がかかります。ただし1度目の着信とは異なり、画面上にTwilio電話番号が表示されず、"非通知設定" や "通知不可能" と表示される場合がございます。こちら、Twilio側の仕様ではなく、電話が着信される電話事業者側や、電話機の仕様の差異からくる事象となります。

  • エスカレーション設定に、一斉通知と輪番通知両方を同タイミングで指定した場合どうなるか

一斉通知、輪番通知どちらもハード障害1回目から実行するように設定されますと、仕様上両方の電話がかかります。一斉通知と輪番通知のメッセージ内容は集約されない為、同じ内容が2度再生されることになりますのでご注意ください。

  • 携帯端末が留守番電話サービスを利用している場合どうなるか

Twilioによる電話通知によって留守番電話が作動すると、ダイヤル操作 9# を行えない為、電話通知が止まらなくなります。

留守番電話が作動しないように携帯端末の設定を行っていただくか、"通話設定" 画面 "呼び出しを行い続ける秒数" 項目を留守番電話が作動する時間より短い時間での設定をお願いいたします。

  • 同じホスト、またはサービスに"Twilio 通知設定" を複数設定していた場合、どうなるか

あくまで電話を鳴らす回数は、"エラー! 参照元が見つかりません。" で登録した設定単位です。

以下、例になります。

"エラー! 参照元が見つかりません。" で設定登録した情報は以下の2点です。

twilio380_QA

■Twilio 通話設定A
この設定情報をエスカレーション設定で利用すると、ユーザAとユーザBに電話通知を行います。
■Twilio 通話設定B
この設定情報をエスカレーション設定で利用すると、ユーザAとユーザCに電話通知を行います。

"エラー! 参照元が見つかりません。" より登録情報1つを1台のホスト、または複数台ホストに設定した場合、受話中にどれだけ復旧・障害を繰り返しても電話は集約されます。

twilio380_QA2

例のようにエスカレーションパネルを2つに増やし、同じTwilio 通話設定 を利用するように設定を行っても、かかる回数はユーザA、ユーザBともに1回です。

  • 同時障害でなく、通話中に別サーバにて障害が発生し、障害件数、または障害内容にとりこまれないまま終了した場合、障害報告が出来ていない分は折り返します。

"Twilio 通話設定" より登録情報2つを1台のホスト、または複数台ホストに設定した場合、設定されている "Twilio 通話設定" が異なると別電話扱いになる為、折り返しの電話がかかります。

twilio380_QA3

先程のパターンと異なり、"Twilio 通話設定A" を利用した電話障害の内容を確認中であったとしても "Twilio 通話設定B" の内容が集約されることはありません。

  • ダイヤル操作 3# を行った場合、どこまで認知済みになるか

「障害の詳細」を聞いた際に含まれていたホスト、サービスのみ認知済みにします。また、外部コマンド履歴には、ユーザ管理で登録を行ったユーザIDを利用します。

例)

・ユーザA(ユーザID:user_a、電話番号+8180********)へ着信後、受話し認知済み操作を行う。

・該当のホスト、サービスが "認知済み" 状態になる。

・外部コマンドを確認すると、発行者が user_a になっている。

27.11. 巻末付録 X-MONが閉鎖ネットワークにある場合

Twilio機能を使用する際の通信において、X-MONからTwilioへの通信と、TwilioからX-MONへのHTTP通信の両方が発生します。

twilio380_closed

そのため、X-MONにはグローバルIPアドレスが必要となります。

環境により、グローバルIPアドレスの付与が難しい場合、ネットワーク機器を使って1対1NATを実施する、またはリバースプロキシを使う方法があります。

twilio380_closed2

twilio380_closed3

この場合、X-MONURL設定はグローバルと接続している部分を設定しますので、前述の例では

  • 1対1NATの場合

http://111.222.111.222

  • リバースプロキシの場合

http://xmon.example.com

と設定をお願いします。