LoginSignup
6
5

More than 5 years have passed since last update.

knowledgeとRocket.Chatのwebhook連携

Last updated at Posted at 2018-10-04

前回の記事でknowledgeとRocket.Chatを導入したはいいが、knowledgeに書いただけだと普段メンバーが見てるのはRocket.Chatなので、気づいてもらえない。チャンネルにいちいち書いてもらうのも面倒なのでknowledgeの記事を書いたらknowledgeチャンネルに自動で通知して投稿に気づいてもらえるようにしました。

サービス連携用のurlをRocket.Chatから取得

管理→サービス連携→新しいサービス連携→着信WebHook
で下記の様に記入して,一旦「変更を保存」を押す。
image.png

作成した着信WebHookを選択しWebHook用URLを取得
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3235373830362f34336132643539322d326264312d353135612d376563372d6639363136653163336438642e706e67.png

knowledgeからWebHook 設定を行う

  1. 管理者ユーザーでログインし,右上メニュー→システム設定→WebHook設定
  2. URLに先程取得したRocket.ChatへのWebHook用URLを入力
  3. 今回は記事投稿とコメント投稿を通知したいので「ナレッジイベント」「コメントイベント」をチェックして「追加」
    68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3235373830362f64333363336261622d663731352d653966632d323234302d3835333534613533666638622e706e67.png

  4. WebHooksが追加されるので,それぞれjsonをカスタマイズしてsave
    68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3235373830362f66316265643530352d393935622d643132612d643831362d3861383137336437343739382e706e67.png

Knowledges Events

{"text":"knowledgeで新たな投稿がありました。","attachments":[
{
    "type": "knowledge",
    "comment_count": "{knowledge.commentCount}",
    "like_count": "{knowledge.likeCount}",
    "became_public": "{knowledge.became_public}",
    "type_id": "{knowledge.typeId}",
    "insert_date": "{knowledge.insertDatetime,format=yyyy/MM/dd HH:mm:ss.SSSZ}",
    "link": "{knowledge.link}",
    "groups": "{knowledge.groups}",
    "insert_user": "{knowledge.insertUserName}",
    "content": "{knowledge.content}",
    "update_date": "{knowledge.updateDatetime,format=yyyy/MM/dd HH:mm:ss.SSSZ}",
    "tags": "{knowledge.tags}",
    "update_user": "{knowledge.updateUserName}",
    "text": "<{knowledge.link}|{knowledge.title}> posted by {knowledge.updateUserName}",  <--投稿されるチャット内容
    "public_flag": "{knowledge.publicFlag}",
    "knowledge_id": "{knowledge.knowledgeId}",
    "status": "{knowledge.status}"
}]}

comments Events

{"text":"knowledgeで新たなコメントが投稿されました。","attachments":[
{
    "type": "comment",
    "update_user": "{comment.updateUserName}",
    "comment_no": "{comment.commentNo}",
    "insert_date": "{comment.insertDatetime,format=yyyy/MM/dd HH:mm:ss.SSSZ}",
    "comment": "{comment.comment}",
    "text": "<{knowledge.link}|{knowledge.title}>",
    "insert_user": "{comment.insertUserName}",
    "update_date": "{comment.updateDatetime,format=yyyy/MM/dd HH:mm:ss.SSSZ}",
    "knowledge": {
        "comment_count": "{knowledge.commentCount}",
        "like_count": "{knowledge.likeCount}",
        "became_public": "{knowledge.became_public}",
        "type_id": "{knowledge.typeId}",
        "insert_date": "{knowledge.insertDatetime,format=yyyy/MM/dd HH:mm:ss.SSSZ}",
        "link": "{knowledge.link}",
        "groups": "{knowledge.groups}",
        "insert_user": "{knowledge.insertUserName}",
        "title": "{knowledge.title}",
        "content": "{knowledge.content}",
        "update_date": "{knowledge.updateDatetime,format=yyyy/MM/dd HH:mm:ss.SSSZ}",
        "tags": "{knowledge.tags}",
        "update_user": "{knowledge.updateUserName}",
        "text": "<{knowledge.link}|{knowledge.title}> posted by {knowledge.updateUserName}",  <--投稿されるチャット内容
        "public_flag": "{knowledge.publicFlag}",
        "knowledge_id": "{knowledge.knowledgeId}"
    }
}
]}

新たに記事を投稿したり記事にコメントをつけるとrocket.catちゃんがお知らせしてくれるようになります。
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3235373830362f39633562306263392d306333372d636337352d633532652d3866663132333537633062642e706e67.png

※ただし即時通知ではなく,5分以内くらいのタイムラグが有ります。

6
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5