HTTP header パラメータ
開発者は header 内の timestamp と sign を検証し、DingTalk からの正規のリクエストであるかを判定する必要があります。これにより、第三者が DingTalk を装って開発者の HTTPS サービスを呼び出しデータを送信することを防止できます。具体的な検証ロジックは以下のとおりです。
- timestamp とシステムの現在のタイムスタンプの差が 1 時間を超える場合、不正なリクエストと見なします。
- sign が開発者自身の計算結果と一致しない場合、不正なリクエストと見なします。
sign の計算方法
header 内の timestamp + “\n” + ボットの appSecret を署名文字列とし、HmacSHA256 アルゴリズムで署名を計算し、Base64 encode を行って最終的な署名値を取得します。 署名計算のコード例(Java)HTTP Body
パラメータの説明
受信可能なチャットタイプ
ボットは現在、テキスト、音声、画像、ファイル、動画、リッチテキストタイプのチャットを受信できます。下表は、ボットが各種チャットタイプを受信する際のフィールド説明です。チャットタイプとチャット本文のフィールド以外は、上表のパラメータフィールドと同じです。重要
- グループチャット内:グループメンバーがボットを @ する場合、ボットは音声、ファイル、動画タイプを受信できません。
- 個人間のチャットでは、ボットは音声、ファイル、動画タイプを受信できません。
- 個人とボットのチャットでは、ボットは音声、ファイル、動画タイプを受信できます。