Slack,Teams,LINE botの作り方の違いとか

229 Views

December 17, 18

スライド概要

トレノケ雲の会 mod3のLT資料。
各チャットツールのWebhooksのリクエストレスポンスの違いについて

profile-image

 開発ベンダーに5年、ユーザ企業システム部門通算9年を経て、2018年よりトレノケート株式会社でAWS Authorized InstructorとしてAWSトレーニングコースを担当し、毎年1500名以上に受講いただいている。プロトタイプビルダーとして社内の課題を内製開発による解決もしている。 AWS認定インストラクターアワード2018・2019・2020の3年連続受賞により殿堂入りを果たした。 APN AWS Top Engineers、APN ALL AWS Certifications Engineers、AWS Community Buildersに数年にわたり選出。 個人活動としてヤマムギ名義で執筆、勉強会、ブログ、YouTubeで情報発信している。 その他コミュニティ勉強会やセミナーにて参加、運営、スピーカーや、ご質問ご相談についてアドバイスなどをしている。

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

Slack,Teams,LINE botの作り方の違いとか トレノケ雲の会 #kumonokai mod.3 2018/12/17 #kumonokai 山下 光洋

2.

自己紹介 山下光洋 @yamamanx Blog : www.yamamanx.com ・ソフトウェア開発会社でIBMさんのBP ・ナイトレジャー会社,エネルギー会社で情シス ・AAI(AWS認定インストラクター)、 IT Terchnical Training Engineer@Trainocate ヤマムギ(勉強会) , JAWS-UG, JAWS-UG IoT関西支部, kintone Cafe大阪, JP_Stripes, MasterCloud The八番街ベース 緑のLv16 LvLv39

3.

bot 大きく分けると Incoming Webhooks Outgoing Webhooks #kumonokai

4.

Incoming #kumonokai Incoming Webhooks ・プログラムからの通知(完了、異常発生) ・Feed情報 ・パブリックなSNSの情報 ・他システムからの連携

5.

Incoming Incoming Webhooks プログラムからの 通知(完了、異常発生) #kumonokai

6.

Incoming Incoming Webhooks Feed情報 #kumonokai

7.

Incoming Incoming Webhooks パブリックなSNSの情報 #kumonokai

8.

Incoming Incoming Webhooks 他システムからの連携 #kumonokai

9.

Incoming Incoming Webhooks #kumonokai

10.

Outgoing #kumonokai Outgoing Webhooks ・投稿をトリガーとしてイベント起動 ・bot を呼び出す ・コマンド実行

11.

Outgoing Outgoing Webhooks ・bot を呼び出す #kumonokai

12.

Outgoing Outgoing Webhooks ・bot ・とれのCAT #kumonokai

13.

Outgoing Outgoing Webhooks #kumonokai

14.

Outgoing Outgoing Webhooks #kumonokai

15.

リクエストの違い #kumonokai Teams user_name = event['from']['name'] text = event['text'] Slack (API Gatewayマッピングテンプレートで変換) user_name = event['user_name'] text = event['text'] LINE from_id = event['events'][0]['source']['userId'] text = event['events'][0]['message']['text'] reply_token = event['events'][0]['replyToken']

16.

レスポンスの違い Teams Requests user_name = event['from']['name'] text = event['text'] Response { 'type': 'message', 'text': msg } #kumonokai

17.

レスポンスの違い Slack Requests (API Gatewayマッピングテンプレートで変換) user_name = event['user_name'] text = event['text'] Response { 'text': msg } #kumonokai

18.
[beta]
レスポンスの違い

#kumonokai

LINE
Requests (API Gatewayマッピングテンプレートで変換)
from_id = event['events'][0]['source']['userId']
text = event['events'][0]['message']['text']
reply_token = event['events'][0]['replyToken']

POST (https://api.line.me/v2/bot/message/reply)
{
"replyToken": reply_token,
"messages": msg
}

19.

コアな処理は同じ #kumonokai AWS Lambda Layers ・共通ロジックを各Lambda関数から呼び出す ・一つ一つのLambdaに含む必要がなくなった

20.

今日はまったこと #kumonokai TeamsのOutgoing Webhooksは5秒以内にレスポン スを返さないとエラーになる。 Sorry, there was a problem encountered with your request

21.

まとめ #kumonokai ・リクエストとレスポンスが違うぐらいなので、 だいたいどこでもbotとして動かせるかと。 ・コアの処理はAWS Lambda Layers。 ・とれのCATをよろしくお願いします。

22.

ご清聴ありがとうございました。 Special Thanx to…..