ヤマムギ

growing hard days.

*

LINEとAWSとTwilioとkintoneでBOTを作ってみるハンズオン (1)LambdaからSlackへ通知する1

      2017/08/18


作る部分

SlackのWebURLを確認する

Slackでチームを作成してbotから投稿出来るようにするで作成したSlackのチームセッティングページへアクセスします。

Slack team settingsにアクセスします。

ログインしていない場合は作成したチームにログインします。

[Menu] – [Configre Apps]をクリックします。

[Custom Integrations] – [Incoming WebHooks]をクリックします。

※まだIncoming WebHooksを作成していない方はSlackでチームを作成してbotから投稿出来るようにするを参照してチームを作成してください。

鉛筆のアイコン(Edit Configuration)をクリックします。

少し下にスクロールして、Webhook URLの[Copy URL]をクリックして、テキストエディタなどに貼り付けておきます。

プログラムのダウンロード

Github-yamamugi_handson_to_slack_secondにあります。

こちらのダウンロードリンクからダウンロードしてください。

プログラム解説

Incoming WebHooksのURLにrequestsモジュールを使って、投稿するテキストとチャンネルをPOSTしています。

Lambda関数の作成

AWSマネジメントコンソールでLambdaを開いて、[関数の作成]をクリックします。

何も選択せず、[一から作成]をクリックします。

何も選択せず、[次へ]をクリックします。

名前 : 3_to_slack_second
説明 : ヤマムギハンズオン Slackへメッセージ投稿
ランタイム : Python 3.6

コードエントリタイプは「.zipファイルをアップロード」でyamamugi_handson_to_slack_secondからダウンロードしたZIPファイルをアップロードします。

環境変数
* SLACK_URL : SlackのIncoming WebHooksのURLを設定します
* LOG_LEVEL : DEBUG(ログを減らしたい場合は ERRORかINFOを設定します)
* CHANNEL : #general(他のチャンネルに変えたい場合は指定します)

※LOG_LEVELとCHANNELは設定しなくても動きます。その場合、LOG_LEVELはINFO,CHANNELは#generalになります。

lambda_basic_executionロールがある場合は既存のロールからlambda_basic_executionを選択します。

lambda_basic_executionロールがない場合は、[カスタムロールの作成]をクリックします。

カスタムロールの内容です。

必要ないとは思いますが、念のためタイムアウトを5分にしておきます。
[次へ]をクリックします。

[関数の作成]をクリックします。

右上の[テスト]をクリックします。

テストイベントに以下を設定して[保存してテスト]をクリックします。

※URLはなんでもいいです。

Slackにメッセージが投稿されれば成功です。

メッセージが届かない場合、実行が失敗していないか実行結果の[詳細]を展開して確認しましょう。
もしくはSLACK_URLが間違えていないか見直しましょう。

[モニタリング] – [CloudWatchのログを表示]からもログを確認出来ます。

目次

(1)LambdaからSlackへ通知する1 ←今ここ

(2)LambdaからSlackへ通知する2

(3)Lambdaからkintoneへレコードを登録する

(4)Step Functionsで複数のLambdaを実行制御する

(5)LINEからの投稿へ返信と登録処理

(6)Twilioからの電話受付と登録処理

(7)ラッキーコンテンツ

@yamamanx

開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー1年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。

また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - event, study , , ,

ad

ad

  関連記事

「第14回RxTStudy(Redmine勉強会)」に行ってきました

土曜日の真っ昼間に半分以上が初参加者さんで80席が満席。 それだけRedmine …

「JAWS DAYSに行きたくても行けなかった人に捧ぐ!AWSユーザーが教えてくれるAWSにまつわる最新事情」で運営と発表をしました

JAWS DAYS 2017のre:Capを大阪で開催しました。 JAWS DA …

「JAWS-UG大阪 第18回勉強会 サーバーレス」の運営をしました

JAWS-UG大阪 第18回勉強会 サーバーレスを開催、運営しました〜。 事の発 …

Developers Summit 2018 「「技術内閣制度」2年間やってきて得られた事とこれから ~開発チーム横断での技術課題解決、技術力強化、エンジニア文化醸成」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

「JAWS-UG名古屋 re:Inventに行ったつもりのLT大会&忘年会」でLTしてきました

大阪から東京へ自転車で向かう初日に名古屋でJAWS-UGでLT大会に参加しようと …

Developers Summit 2018 「Kubernetesを用いた最強のマイクロサービス環境をGKEで実現しよう」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

Java SE 7 Silver 試験対策セミナーで模擬問題の解説をマークダウンでメモってみた

Java SE 7 Silver 試験対策セミナーに行って、模擬問題にチャレンジ …

Java SE 7 Silver対策勉強をしながらメモ 2015/2/5

本日は例外。 いつものごとくマークダウンで記載したのでそのままJetpack M …

IoTセミナー in おおさか「IoTで変わる!企業と働き方」に行ってきました

これからの企業と働き方 ~IoT・AIが創造する未来~ さくらインターネット株式 …

Alexa Day 2018で「Alexa はどこにでも。AVSが開くAlexa Enabled なライフスタイル」を聞きました

photo by 金春さん スピーカーはオランダから一時帰国中の伊東のともさん …