本記事では、DingTalk、Lark、Slack、TelegramのボットのWebhookアドレスを取得し、OceanBase CloudのカスタムURLを設定する方法について説明します。
ディンディグループボットのWebhookアドレスを取得する
説明
ディンディカスタムボットのWebhookアドレスに関する詳細は、カスタムボットのWebhookアドレスを取得するを参照してください。
ディンディクライアントを開き、アラート通知を送信したいグループに移動します。
グループ設定 > グループ管理 > ボット > ボットを追加 をクリックします。
カスタムボット を選択します。
ボットの詳細ページで、追加 をクリックします。
ボットの追加ページで、関連パラメータを入力します。
パラメータ説明ボット名 グループ内で表示されるボット名。 グループへの追加 デフォルトは現在のグループです。 セキュリティ設定 OceanBase Cloudからのアラート受信時に使用するカスタムキーワードのセキュリティ設定を行います。 説明
OceanBase Cloudからのアラートを正常に受信するため、カスタムキーワードはOceanBaseまたはOBに設定することを推奨します。
《カスタムボットサービスおよび免責事項》 を読んでチェックし、完了 をクリックします。
グループ管理 > ボット に戻り、そのカスタムボットを選択してWebhookアドレスをコピーします。
説明
Webhookアドレスは大切に保管し、GitLabやブログなどの公開ウェブサイトに投稿しないでください。アドレスが漏洩した場合、悪意のある呼び出しを防ぐためです。
FeishuグループボットのWebhookアドレスを取得する
説明
Larkカスタムボットの詳細については、カスタムボット使用ガイドを参照してください。
Feishuクライアントを開き、対象のグループに移動します。
グループの右上隅にある「詳細」ボタンをクリックし、設定 をクリックします。右側の設定画面で、順に グループボット > ボットを追加 をクリックします。
カスタムボット を選択します。
カスタムボットのアバター、名前、および**説明を設定し、追加**をクリックします。
Webhookアドレスをコピーし、**完了**をクリックします。
説明
Webhookアドレスは大切に保管してください。GitLabやブログなどの公開サイトに投稿しないでください。アドレスが漏えいした場合、悪意のある呼び出しを防ぐためです。
オプション:カスタムボットの詳細ページを開き、セキュリティ設定を構成します。
パラメータ説明Webhookアドレス このボットのWebhookアドレスをコピーできます。 セキュリティ設定 OceanBase Cloudからのアラートを受信する際に、カスタムキーワードのセキュリティ設定を使用してください。 説明
OceanBase Cloudからのアラートを正常に受信するため、カスタムキーワードはOceanBaseとOBに設定することを推奨します。
設定 ボット管理権限を設定します。
Telegramボット
以下の手順に従って、TelegramボットのWebhookアドレスを取得し、OceanBase Cloudに設定します:
アラートを受信するためのTelegramボットを作成します。
Telegramの検索バーで**@BotFather**を検索し、チャット画面に入ります。
/newbotと入力し、表示名とユーザー名を設定します。作成後、ボットのユーザー名とBotFatherが返すAPIトークンをメモします。
説明
APIトークンは大切に保管してください。このトークンを取得した人は、ボットを完全に制御できます。
グループチャットIDを取得します。
グループチャットを作成し、先ほど作成したボットを検索して追加します。
ボットが受信できるコマンドをグループチャットで送信します。例:
/start@<bot_username>。ここで、<bot_username>はボットのユーザー名に置き換えてください。TelegramクライアントにはグループチャットIDが表示されないため、ブラウザでBot APIを使用して取得する必要があります。
ブラウザのアドレスバーに以下のURLを入力し、ボットが最近受信した更新を取得します。
URLの形式は
https://api.telegram.org/bot<token>/getUpdatesであり、ここで<token>はボット作成時に取得したAPIトークンに置き換える必要があります。URL例:
https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1********/getUpdates。説明
ボットにTelegramのoutgoing webhookが設定されている場合は、
getUpdatesを使用できません。実行結果として返されたJSONデータから
result[].message.chat.idを探し、その値がグループチャットIDです。説明
グループチャットがスーパーグループにアップグレードされた場合、グループチャットIDが変更される可能性があります。変更された場合は、再度取得してください。
Webhookアドレスを生成します。
以下の形式でWebhookアドレスを生成します。ここで
<token>はボットのAPIトークンに、<chat_id>はグループチャットIDに置き換える必要があります。OceanBase CloudがTelegram Bot APIを呼び出す際に、アラートメッセージの内容が自動的に埋め込まれます。https://api.telegram.org/bot<token>/sendMessage?chat_id=<chat_id>例:
https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1********/sendMessage?chat_id=-45********Telegram WebhookをOceanBase Cloudに設定します。
- アラート連絡先の作成または編集ページのWebhookセクションで、Telegramを選択します。
- 前の手順で生成したWebhookアドレスを入力し、**テスト**をクリックします。
- テストが成功したら、通知言語を選択し、アラート連絡先を保存します。
Slackボット
以下の手順に従って、SlackボットのWebhook URLを取得し、OceanBase Cloudに設定してください:
説明
SlackのIncoming Webhookの詳細な使い方については、Sending messages using incoming webhooksを参照してください。
Slackアプリの管理ページにアクセスし、Create New Appをクリックします。
From scratchを選択し、アプリ名を入力してターゲットのワークスペースを選択し、Createをクリックします。
左側のナビゲーションバーでIncoming Webhooksを選択し、Activate Incoming Webhooksを有効にします。
Add New Webhook to Workspaceをクリックします。
アラート受信用のチャンネルを選択し、Authorizeをクリックします。プライベートチャンネルを選択した場合は、そのチャンネルに参加していることを確認してください。
Webhook URLs for Your Workspaceエリアで生成されたWebhook URLをコピーします。
説明
Webhook URLは大切に保管し、公開アクセス可能なWebサイトやパブリックコードリポジトリには投稿しないでください。
OceanBase Cloudのアラート連絡先作成または編集ページで、Slackを選択し、Webhook URLを入力して、**テスト**をクリックします。
テストが成功したら、通知言語を選択してアラート連絡先を保存します。
カスタムURL
アラート連絡先を作成または編集する際、以下の手順に従ってカスタムWebhook URLを設定してください:
Webhookエリアで**カスタムURL**を選択します。
Webhook URLを入力し、必要に応じて以下の設定を行います。
パラメータ設定HTTP Header HTTPリクエストヘッダー名と対応する値を入力します。複数のHeaderを追加できます。例: API-Key: ******、Content-Type: application/json;charset=UTF-8。Request Method POSTまたはPUTを選択します。 Success response validation rule HTTPリクエストが正常に送信されたかどうかを判断するために使用されます。ID、タイムスタンプ、traceId、流水番号などの動的フィールドは記入しないでください。システムがレスポンス内容を読み取り検証を行います。JSONレスポンスの場合は、固定フィールド(例: {"code":"SUCCESS"})を指定し、レスポンスにこのキーと値のペアが含まれていれば成功です。非JSONレスポンスの場合は、正規表現を指定し、レスポンス内容がそれに一致すれば成功です。**テスト**をクリックします。テストが成功したら、通知言語を選択してアラート連絡先を保存します。
説明
カスタムWebhook URLがファイアウォールによって遮断された場合は、OceanBaseのテクニカルサポートにお問い合わせください。