ヤマムギ

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トレーナー2年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

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

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

 - event, study , , ,

ad

ad

  関連記事

Developers Summit 2018 「夢は正夢〜「野球エンジニア」になるまでの歩み」を聞きました

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

DevLove関西 「プロジェクトマネジメントの勘所」に行ってきました

DevLove関西 「プロジェクトマネジメントの勘所」に行ってきました。 サイボ …

「XP祭り in 関西 2016 〜アジャイル15周年ふりかえり〜」に行ってきました

「XP祭り in 関西 2016 〜アジャイル15周年ふりかえり〜」に行ってきま …

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

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

「GitLab Meetup Tokyo #7: 新年度応援&GitLab 11.0」にSNS & ブログ枠で参加しました

GitLabのミートアップがあるのか!さすが大東京! GitLabのもとユーザと …

業を営む(To engage in business)

この記事は、クラウド営業 Advent Calendar 2018に参加した記事 …

Agile Japan 2015 大阪サテライト「アジャイル開発への架け橋」に行ってきました

Agile Japan 2015 大阪サテライトに行ってきました。 具体的な目的 …

Pepper 開発 ワークショップ初級~中級~番外編に1日で一気に参加した

Pepperの開発方法が知りたかったので、Pepperアトリエ秋葉原 with …

JAWS-UG Osaka 第14回勉強会 「DIY」 〜自社内システムを作る側からの物申す〜に参加、運営、登壇しました

先日、JAWS-UG Osaka 第14回勉強会 「DIY」 〜自社内システムを …

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

本日は繰り返し処理。 配列や演算でひっかけてくる問題に苦戦。 繰り返しだけに頭を …