HipChatへコマンドラインからメッセージを投稿する方法になります。
メールでアラートを送信する方法が主に使われている方法ですが、最近のメールサーバは送信元のチェックが厳しくなったので送信したメールが迷惑メールや遅延することが多くなっています。
そのため、メールではなく、確実にリアルタイムに通知する方法が必要になります。
HipChatは、JIRAを開発している会社が提供しているメッセージサービスです。
HipChatのAPIは、ver1とver2の2種類があります。
ver2のAPIは、OAuthを使って認証する方法になりますが、ver1はトークンだけの簡単な認証でメッセージを送信することができます。
curlを使って通知するシェルスクリプトは、以下のようになります。
[TOKE]は、HipChatの管理画面から発行したトークンを設定する。
[ROOM_ID]は、ROOM作成後にHipChatの管理画面から確認できるROOM IDを設定する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | #!/bin/bash BASE_URI= "https://api.hipchat.com" API_VERSION= "v1" # Notification権限を持つAPIトークンを記載します API_TOKEN=[TOKEN] COMMON_URI=${BASE_URI}/${API_VERSION} COMMON_PARAMETER= "format=json&auth_token=${API_TOKEN}" # ROOM_IDです ROOM_ID=[ROOM_ID] # 投稿者名です FROM= "Shell Script" # 本文です MESSAGE="明日は晴れのち、曇り したがって傘が必要になります" # curlコマンド curl ${COMMON_URI} /rooms/message ?${COMMON_PARAMETER} -X POST -d "room_id=${ROOM_ID}&from=${FROM}&message=${MESSAGE}&message_format=text" |