Incoming Webhooks
在側邊欄找到 Integrations > Incoming Webhooks > Add Incoming Webhook,
填入 Title、Description 並選擇 Channel 後按 save,
就會獲得一串 URL 類似:https://mattermost.your.domain/hooks/xxxxtokenxxxx
最簡單的 Incoming Webhooks 範例:
data 要 json.dumps 沒注意會遇到像下面的錯誤:
{"id":"model.incoming_hook.parse_data.app_error","message":"Unable to parse incoming data","detailed_error":"","request_id":"xxxxxxxxx","status_code":400}
或是 import slackweb:
Outgoing Webhooks
在側邊欄找到 Integrations > Incoming Webhooks > Add Outgoing Webhook,
填入 Title、Description、選擇 Content Type(推薦選擇 application/json)、
Trigger Words(觸發的關鍵詞)、選擇 Trigger When(推薦 First word matches a trigger word exactly)、最後填入Callback URLs 後按 save。
簡單的 Outgoing Webhooks 範例:
執行上面的 code 之後,127.0.0.1:8888 就會出現 'Home Page' 了。
Outgoing Webhook 只要去 post 我們設定的 127.0.0.1:8888/mattermose 就行了。
但 Outgoing Webhooks 需要 public ip,這部分可以用看看 ngrok,裝了 ngrok 之後下command:
ngrok http 8888
就會有的 public URL,像這樣:
Forwarding http://xxxxxx.ngrok.io -> http://localhost:8888
Forwarding https://xxxxxx.ngrok.io -> http://localhost:8888
上面範例中的 Callback URL 填入 xxxxxx.ngrok.io/mattermost 就可以了。
Slash Command
在側邊欄找到 Integrations > Slash Commands > Add Slash Command,
填入 Title、Description、Command Trigger Word、Request URL、Request Method、Response Username、Response Icon(不填就是預設)、可以打勾 Autocomplete(能自動補完 command),最後按 save。
Slash command 有點類似 Outgoing Webhooks,Request URL 就是一樣去 post 我們設定的 127.0.0.1:8888/mattermose:
(下面的 code 同 Outgoing Webhooks)
使用 Slash Command 就是在 Trigger Word 前加 slash: '/yourtriggerword'
這時如果出現錯誤:
command with a trigger of ‘xxxx’ failed
可以試試允許使用 localhost:
側邊欄 > System Console > Developer 在 Allow untrusted internal connections to 中填入 localhost。
但我允許後還是不行,這時一樣可以用 ngrok。
沒有留言:
張貼留言