Enterprise 技術情報 Enterprise Technical information
外部との連携 Kompira cloud Pigeonを利用した通知電話の利用
システム運用業務における重要な作業としてシステムの障害対応があります。監視システムからの異常通知を受けるために、昔はポケベル、最近は電話での音声通知や電子メール、メッセージングアプリなどが利用されています。特に通知を見逃さないための呼び出し手段として、電話は今もって重要な手段となっています。
ただし音声での電話通知の機能を構築するには、かつてはPBXを含む大がかりなシステムが必要でした。最近は各社より電話APIが提供されるようになり、電話での音声通知のシステムが比較的簡単に導入できるようになりました。
当社フィックスポイントでもKompira cloud Pigeonという、システム運用における通知に特化した自動電話サービスを提供しております。本記事ではKompira enterpriseのジョブフローからPigeonを使って電話通知を行う手順をご紹介します。
Kompira cloudのアカウントの取得
自動電話サービス”Pigeon”を利用するためには、Kompira cloudのアカウント取得と電話API機能の開始登録が必要になります。以下のURLから必要事項を記載の上、アカウントを取得してください。”スペースID”はKompira cloudのユーザーを識別する固有の文字列であり、URLに使われます。例えばスペースIDが”shibuya”の場合、アクセス先はhttps://shibuya.cloud.kompira.jp/ となります。)
https://register.cloud.kompira.jp/
登録が完了すると、Kompira cloudのスペースIDごとの個別にURLが発行されますので、アクセスの上、認証してください。またいたずら防止のため、電話の発呼が出来ませんのでご注意ください。
Pigeonの設定
続いて自動電話の設定を登録していきます。登録内容は(1) 連絡先 (2) コールフロー(電話をかける順番) (3) ガイダンス(読み上げるメッセージの内容など)となります。
詳しい設定方法は下記のTutorial記事をご参照ください。ここでは最低限の設定を行っていきます。
https://blog.cloud.kompira.jp/entry/manual/pigeon-tutorial
連絡先の登録
まず画面左の「連絡先」メニューページから、右上の+ボタンをクリックします。
表示名の名前と電話番号を入力して「保存」をクリックします。
コールフローの登録
同様に画面左の「コールフロー」ページから、右上の+ボタンをクリックして登録します。
表示名、最大ループ回数、連絡先を指定して「保存」をクリックします。
ガイダンスの登録
同様に画面左の「ガイダンス」ページから、右上の+ボタンをクリックして登録します。
表示名、メッセージテンプレート(読み上げるメッセージ)、応答を入力します。
「メッセージテンプレート」中の{{}} でくくられたキーワードは、API呼び出しの際に指定できます。
IDの取得
APIを呼び出す際のAPI token(認証トークン)、コールフローID、ガイダンスIDを取得します。
まずはAPI token から。右上のユーザーアイコン>設定をクリック。
API token画面の右上の+ボタンをクリック
トークンを識別する表示名とトークンを失効させる日付を指定して保存をクリック
次の画面でトークン文字列が表示されます。
文字列が表示されるのは、この画面が最初で最後です。必要に応じてメモ帳などに転記してください。以後、トークン文字列を紛失した場合には削除の上、新しいAPIトークンを発行します。
コールフローIDの取得
コールフロー画面で設定したいコールフローを選択します。画面右上の半角英数字の文字列が該当するコールフローIDですので、これを転記してください。(またはコールフローのトップ画面で、表示項目に”callflowID”を追加する事で表示できます)
ガイダンスIDの取得
コールフローIDと同様に、呼び出したいガイダンスの画面を選択し、画面右上の文字列を転記します。
ここまでで、Pigeonの設定は出来ました。
Kompira enterpriseのジョブフローの作成
続いて、Kompira enterpriseのジョブフローからPigeonのAPIを呼び出して、電話をかけてみます。
例えば、次のような「障害コール」という名前のジョブフローを作成します。
[ head = {"X-Authorization":"Token (API Token文字列)", Content-Type":"application/json"} ]-> [ data = { "namespace": "pigeon", "method": "chain", "params": { "callflowId": "(コールフローID文字列)", "guidanceId": "(ガイダンスID文字列)", "parameters": { "server": "テスト用サーバー", "incident": "軽度の障害" } } }]-> urlopen( url = "https://xxxxxxxx.cloud.kompira.jp/api/tasks", http_method = "POST", headers = head, data = data, encode = "json", verify = true )-> print($RESULT, $ERROR)
ここで、(API Token文字列)、(コールフローID文字列)、(ガイダンスID文字列)は、それぞれ先に転記したものを記載します。また parametersの “server”と”incident”は、Kompira cloudのガイダンス設定画面で指定した文字列を置換する文字列を指定します。
このジョブフローを実行しますと、指定の電話番号に「テスト用サーバーに軽度の障害を検出しました。・・・・」とメッセージが再生されます。
このようなコードを電話での通知の箇所に追記したり、ジョブフロー自体を -> [./障害コール] -> … のように呼び出してください。
スタートガイド
Kompiraジョブフローの基礎
ジョブフローの簡単な例
Kompiraの機能
-
- フィールド修飾子でフィールドの入力内容に制約を設ける
- Kompiraでの文字列のパターンマッチング
- Kompira上でWikiページを作成する
- スケジューラを使って定期的にジョブを実行する
- ジョブフローを実行するフォームを作成する
- テーブル内の情報を選択して処理を実行する
- ジョブフローに権限設定をする
- ジョブフロー画面の各種設定
- Pythonで記述された処理をKompiraから呼び出す
- Kompiraオブジェクトのプロパティ,メソッド,フィールドを扱う
- Windowsでリモートスクリプトを実行する(その1)
- Windowsでリモートスクリプトを実行する(その2)
- Kompira上のデータをバックアップする(その1)
- Kompira上のデータをバックアップする(その2)
- Kompira上のデータをバックアップする(その3)
外部との連携
-
- Prometheusからの通知をKompiraで受信する
- Kompira cloud Pigeonを利用した通知電話の利用
- ネットワーク機器へのコマンド投入
- KompiraからWindowsGUIアプリケーションを操作する (1/2)
- メールを送信する
- メール受信をトリガーにしてジョブフローを実行する
- アラートメールをフィルタリングして転送する
- チャネルを利用して外部システムからデータを受信する
- Webページから内容を取得する
- Redmineへ新規チケットを登録する
- Redmineでのチケット作成をKompiraに通知する
- Kompira REST APIを利用して外部からジョブフローを実行する
- Kompira REST APIを利用して外部からオブジェクト情報を取得する
- KompiraからSlackに通知する
- Slackでの投稿をKompiraに通知する
- KompiraからTwilioで電話をかける
- Zabbixからの通知をKompiraで受信する
- syslogをKompiraで受信する
- snmptrapをKompiraで受信する
- KompiraでExcelファイルの読み書きをする
- KompiraでGoogle SpreadSheetの読み書きをする
- Active Directoryから情報を取得する
- Active Directoryにユーザーを登録する