メインコンテンツまでスキップ

DingTalk

DingTalk ChannelはStream接続でボットイベントを受信し、返信を送信します。常駐するGatewayが接続を維持するため、通常の設定では公開の受信Webhookは不要です。

必要なもの​

  • ボット機能を備えたDingTalkアプリケーション。
  • 有効になっているStreamのボットメッセージ購読。
  • Client IDとClient Secret。
  • アプリの識別情報で必要とされる場合は、任意のBot User ID、Bot Staff ID、Robot Code。

アプリケーションの設定時には、最新のDingTalk Stream SDKドキュメントを参照してください。

Dashboardで接続する​

  1. Dashboard → Channel → Addを開きます。
  2. DingTalkを選びます。既定の項目はStreamです。
  3. Client IDとClient Secretを入力します。
  4. 任意のボット識別フィールドは、設定済みアプリケーションと一致する場合にだけ追加します。
  5. 認証情報を保存します。DMとグループのポリシーはCLIウィザードで設定します。
  6. DingTalkでStreamのボットメッセージ購読を確認します。

既定のアカウントIDはworkです。

アクセスポリシー​

ダイレクトメッセージの既定値はpairingで、pairing、open、allowlist、disabledを指定できます。グループメッセージの既定値はmentionで、open、allowlist、disabledも指定できます。

anyy channel pairing list
anyy channel pairing approve --request REQUEST_ID

対話型ターミナルでanyy setup channelを実行し、DingTalkを選んでこれらのポリシーを編集します。Dashboardにはポリシー入力欄がなく、現在の設定機能にはDingTalkのリスト項目エディターもありません。メッセージングプラットフォームを参照してください。グループでは、まずボットを明示的にメンションしてテストします。

接続を検証する​

anyy channel doctor dingtalk
anyy channel reload

再読み込み後に、ダイレクトメッセージとメンション付きのグループメッセージを送信します。各ポリシーの経路を個別に検証してください。

Gatewayを常駐させる

Streamの配信には稼働中のGateway接続が必要です。再起動やネットワーク変更の後にメッセージが届かなくなった場合は、DingTalkアプリの設定を変更する前にGatewayの状態を確認します。

トラブルシューティング​

問題確認する項目
Streamが接続されないClient ID/Secret、外部へのネットワーク接続、Stream購読
ダイレクトメッセージが無視されるDMポリシーとペアリング/許可リスト
グループメッセージが無視されるグループポリシーと明示的なメンション
受信できるが返信に失敗するボット識別フィールドとDingTalkアプリケーションの権限
接続が繰り返し切れるGatewayの健全性、ネットワークの安定性を確認してからChannelを再読み込み