0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ダンボールロボットでslackに投稿する

Last updated at Posted at 2019-12-18

概要

ダンボールロボットから、Slackの指定したワークスペースに投稿をします
ダンボールロボットのhttp.postコマンドと、slack APIのwebhooksを使います

slackbotの設定が分かる場合は、「ダンボールロボットのスクリプトを書く」まで飛ばしてください

注1: 記事の中では、Slackの設定画面が英語になっていますが、設定によっては英語でない可能性があるので、適宜読み替えてください

手順

slackbotの準備をする

ダンボールロボットが投稿するslackのチャンネルを指定します
テスト用のslackがない場合は、自分だけいるslackのワークスペースを作るのがおすすめです

Slack App を作る

ここのURLに行きます
https://api.slack.com/bot-users

ページの途中に、"Create your Slack app"という緑のボタンがあるので押します
image.png

slackbot の設定をする

このような画面が出るので

  • bot の名前
  • bot を使うワークスペース

を入力します

image.png

設定ができたら、今つくったslackbotの名前をクリックして、設定画面に行きますslackbotをクリックする

image.png

slackbot の Incoming Webhooks の設定をする

webhookを有効にすると、ダンボールロボットからhttp.post/<webhookのURL>とするだけでslackに投稿できます

下の画面で緑のチェックがついている "Incoming Webhooks"をクリックして設定画面に行きます

image.png

設定画面でやることは、

  1. webhookを有効にする
  2. 新しいwebhookのURLを取得する

の2つです

1つ目は、下の画像のようにスイッチをオンにします

image.png

2つめは、"Add New Webhook to Workspace"をクリック
--> slackbotを投稿するチャンネルを指定します

image.png

URLをメモっとく

このWebhook URLをダンボールロボットで使うので、メモっておいてください

image.png

ダンボールロボットのスクリプトを書く

シナリオエディタを開く

<ラズパイのIPアドレス>:3090/scenario-editor
に行きます

slackに投稿するDoraScriptを書く

/.payload.text/おはようボット
/http.post/<さっきのWebhookURL>

以上です

解説すると、/http.post/<URL>payloadに入っているオブジェクトを<URL>で指定したURLにPOSTします
slack APIは、 { "text": "投稿したいメッセージ" } の形式のデータだけ受け付けてくれます
なので、.payload.text/おはようボットと書きます
これは、「payloadオブジェクトのtextプロパティに「おはようボット」を入れる」と言っています
この時点のpayloadはこうなっています↓

payload: {
  "text": おはようボット
}

よくわからなかったら、 /log/{{payload.text}}とすると見れます

おまけ: 音声認識結果をslackの投稿する

例えば、こんなかんじでslackと連携させるとか

注2: これは Google Cloud Speech APIの設定をしてないと動きません
ここを見てね
https://yamagame.github.io/dora-engine-doc/speech-to-text

/speech-to-text // 音声認識; 結果はpayloadに入る
/.input/{{payload}} // payloadの値をinputに代入
/log/{{input}} // inputの中身を確認

/.payload.text/{{input}} // payloadにslackbotにわたす値を入れる
/http.post/<slackbotのwebhook URL> // slackbotに音声認識結果をPOSTする
0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?