Webhook

ボット用のアカウントに対するメンションを Webhook で指定したプログラムで処理することができます。

  1. トピック編集ページから、bot (任意) という ID でボットを作成し、Webhook URL を設定してください。Basic 認証もサポートしています。(例: http://user:password@example.com/)
  2. 該当のトピックで “@bot+ こんにちは” ( 1 で作成した bot のIDの最後に + がつきます ) のように、ボットアカウント宛にメンションしてください。
  3. そうすると、Webhook URL で指定した URL に以下のようなデータが POST されます。データはリクエスト BODY から JSON 形式で取得することができます。
  4. 同じトピックにメッセージをポストしたい場合は、指定の JSON 形式のレスポンスを返してください。 サンプルも参照してください。

リクエストボディの例

{
  "topic": {
    "id": 208,
    "name": "IT Peeps",
    "suggestion": "IT Peeps",
    "lastPostedAt": "2014-12-10T09:00:29Z",
    "createdAt": "2014-06-10T02:32:29Z",
    "updatedAt": "2014-06-10T02:32:29Z"
  },
  "post": {
    "id": 333,
    "topicId": 208,
    "replyTo": null,
    "message": "Let's party like it's 1999!",
    "account": {
      "id": 100,
      "name": "jessica",
      "fullName": "Jessica Fitzherbert",
      "suggestion": "Jessica Fitzherbert",
      "imageUrl": "https://typetalk.in/accounts/100/profile_image.png?t=1403577149000",
      "createdAt": "2014-06-24T02:32:29Z",
      "updatedAt": "2014-06-24T02:32:29Z"
    },
    "mention": null,
    "attachments": [],
    "likes": [],
    "talks": [],
    "links": [],
    "createdAt": "2014-12-10T09:00:29Z",
    "updatedAt": "2014-12-10T09:00:29Z"
  }
}

レスポンスボディの例

メッセージに返信するには、以下のようなレスポンスを返してください。

{ "message": "Hello!", "replyTo": 100 }

fileKey と talkId も設定できます。メッセージの投稿APIのパラメータと同じです。

{
    "message":  "Hello!",
    "replyTo": 100,
    "fileKeys": [ "abcdef", "ghijk" ],
    "talkIds": [ 200, 300 ]
}