Submit Search
Upload
SESとLambdaでメールをSlackに通知してみよう
•
Download as PPT, PDF
•
4 likes
•
6,462 views
K
Ken'ichirou Kimura
Follow
2016年3月21日にJAWS-UG福岡で発表した内容です。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 27
Download now
Recommended
Serverless時代のJavaについて
Serverless時代のJavaについて
Amazon Web Services Japan
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
Amazon Web Services Japan
次世代Webコンテナ Undertowについて
次世代Webコンテナ Undertowについて
Yoshimasa Tanabe
zabbixを使ったクラウド環境の監視とツール連携
zabbixを使ったクラウド環境の監視とツール連携
NHN テコラス株式会社
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager
Amazon Web Services Japan
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
シスコシステムズ合同会社
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
Recommended
Serverless時代のJavaについて
Serverless時代のJavaについて
Amazon Web Services Japan
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
Amazon Web Services Japan
次世代Webコンテナ Undertowについて
次世代Webコンテナ Undertowについて
Yoshimasa Tanabe
zabbixを使ったクラウド環境の監視とツール連携
zabbixを使ったクラウド環境の監視とツール連携
NHN テコラス株式会社
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager
Amazon Web Services Japan
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
シスコシステムズ合同会社
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話
Yoshinori Matsunobu
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
AdvancedTechNight
AWS初心者向けWebinar AWSとのネットワーク接続入門
AWS初心者向けWebinar AWSとのネットワーク接続入門
Amazon Web Services Japan
Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Web Services Japan
ニワトリでもわかるECS入門
ニワトリでもわかるECS入門
Yoshiki Kobayashi
AWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormation
Amazon Web Services Japan
Apache OpenWhiskで実現するプライベートFaaS環境 #tjdev
Apache OpenWhiskで実現するプライベートFaaS環境 #tjdev
Yahoo!デベロッパーネットワーク
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon Web Services Japan
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
Amazon Web Services
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
JustSystems Corporation
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(2)-セッション
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(2)-セッション
Enpel
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
脱RESTful API設計の提案
脱RESTful API設計の提案
樽八 仲川
CloudFormation/SAMのススメ
CloudFormation/SAMのススメ
Eiji KOMINAMI
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
NTT DATA Technology & Innovation
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
Takahiro Moteki
AWS初心者向けWebinar RDBのAWSへの移行方法(Oracleを例に)
AWS初心者向けWebinar RDBのAWSへの移行方法(Oracleを例に)
Amazon Web Services Japan
AWS Black Belt Online Seminar Amazon Redshift
AWS Black Belt Online Seminar Amazon Redshift
Amazon Web Services Japan
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
Amazon Web Services Japan
Serverlessでサイト監視
Serverlessでサイト監視
shigeyuki azuchi
AWSで自作CGIをサーバレス実装してみた ~その2~
AWSで自作CGIをサーバレス実装してみた ~その2~
祐樹 夏目
More Related Content
What's hot
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話
Yoshinori Matsunobu
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
AdvancedTechNight
AWS初心者向けWebinar AWSとのネットワーク接続入門
AWS初心者向けWebinar AWSとのネットワーク接続入門
Amazon Web Services Japan
Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Web Services Japan
ニワトリでもわかるECS入門
ニワトリでもわかるECS入門
Yoshiki Kobayashi
AWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormation
Amazon Web Services Japan
Apache OpenWhiskで実現するプライベートFaaS環境 #tjdev
Apache OpenWhiskで実現するプライベートFaaS環境 #tjdev
Yahoo!デベロッパーネットワーク
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon Web Services Japan
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
Amazon Web Services
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
JustSystems Corporation
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(2)-セッション
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(2)-セッション
Enpel
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
脱RESTful API設計の提案
脱RESTful API設計の提案
樽八 仲川
CloudFormation/SAMのススメ
CloudFormation/SAMのススメ
Eiji KOMINAMI
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
NTT DATA Technology & Innovation
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
Takahiro Moteki
AWS初心者向けWebinar RDBのAWSへの移行方法(Oracleを例に)
AWS初心者向けWebinar RDBのAWSへの移行方法(Oracleを例に)
Amazon Web Services Japan
AWS Black Belt Online Seminar Amazon Redshift
AWS Black Belt Online Seminar Amazon Redshift
Amazon Web Services Japan
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
Amazon Web Services Japan
What's hot
(20)
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
AWS初心者向けWebinar AWSとのネットワーク接続入門
AWS初心者向けWebinar AWSとのネットワーク接続入門
Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Aurora - Auroraの止まらない進化とその中身
ニワトリでもわかるECS入門
ニワトリでもわかるECS入門
AWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormation
Apache OpenWhiskで実現するプライベートFaaS環境 #tjdev
Apache OpenWhiskで実現するプライベートFaaS環境 #tjdev
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(2)-セッション
2 TomcatによるWebアプリケーションサーバ構築 第2章 Tomcat概要(2)-セッション
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
脱RESTful API設計の提案
脱RESTful API設計の提案
CloudFormation/SAMのススメ
CloudFormation/SAMのススメ
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
AWS初心者向けWebinar RDBのAWSへの移行方法(Oracleを例に)
AWS初心者向けWebinar RDBのAWSへの移行方法(Oracleを例に)
AWS Black Belt Online Seminar Amazon Redshift
AWS Black Belt Online Seminar Amazon Redshift
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
Viewers also liked
Serverlessでサイト監視
Serverlessでサイト監視
shigeyuki azuchi
AWSで自作CGIをサーバレス実装してみた ~その2~
AWSで自作CGIをサーバレス実装してみた ~その2~
祐樹 夏目
Visual StudioでAWS開発してみよう
Visual StudioでAWS開発してみよう
Yutaka Fujisaki
AWS x MLB
AWS x MLB
Yuta Matsumura
Amazon SESのメール受信対応でサーバー減らせた話
Amazon SESのメール受信対応でサーバー減らせた話
civic Sasaki
第43回NDS NetBeansを使ったJavaプロファイリングの紹介
第43回NDS NetBeansを使ったJavaプロファイリングの紹介
civic Sasaki
Shell入門
Shell入門
nasa9084
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編
Masayuki KaToH
エンジニアが Webを学ぶために やっててよかったこと
エンジニアが Webを学ぶために やっててよかったこと
Hirata Tomoko
PHPという概念が存在しない退屈な世界 - AWS LambdaでWebAPP編
PHPという概念が存在しない退屈な世界 - AWS LambdaでWebAPP編
Yoshihiro Ohsuka
CTOが仕事に対する新しい考え方を教えてくれた話
CTOが仕事に対する新しい考え方を教えてくれた話
Yuki Maeto
Androidを中心に紐解くIoT
Androidを中心に紐解くIoT
Keisuke Nishitani
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
Alex Smith
TdX#01 RubyKaigiの作り方
TdX#01 RubyKaigiの作り方
masayoshi takahashi
Ruby on railsでlinebotを試した記録
Ruby on railsでlinebotを試した記録
Fumiya Sakai
エバを弄る会 LT
エバを弄る会 LT
安隆 沖
Cocos2d-x ver.3 開発の効率化
Cocos2d-x ver.3 開発の効率化
Akihiro Matsuura
20150425 JAWS-UG Okinawa
20150425 JAWS-UG Okinawa
Toshiyuki Konparu
Lambdaについて
Lambdaについて
Ara Jo
LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係
Hiraku Komuro
Viewers also liked
(20)
Serverlessでサイト監視
Serverlessでサイト監視
AWSで自作CGIをサーバレス実装してみた ~その2~
AWSで自作CGIをサーバレス実装してみた ~その2~
Visual StudioでAWS開発してみよう
Visual StudioでAWS開発してみよう
AWS x MLB
AWS x MLB
Amazon SESのメール受信対応でサーバー減らせた話
Amazon SESのメール受信対応でサーバー減らせた話
第43回NDS NetBeansを使ったJavaプロファイリングの紹介
第43回NDS NetBeansを使ったJavaプロファイリングの紹介
Shell入門
Shell入門
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編
エンジニアが Webを学ぶために やっててよかったこと
エンジニアが Webを学ぶために やっててよかったこと
PHPという概念が存在しない退屈な世界 - AWS LambdaでWebAPP編
PHPという概念が存在しない退屈な世界 - AWS LambdaでWebAPP編
CTOが仕事に対する新しい考え方を教えてくれた話
CTOが仕事に対する新しい考え方を教えてくれた話
Androidを中心に紐解くIoT
Androidを中心に紐解くIoT
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
TdX#01 RubyKaigiの作り方
TdX#01 RubyKaigiの作り方
Ruby on railsでlinebotを試した記録
Ruby on railsでlinebotを試した記録
エバを弄る会 LT
エバを弄る会 LT
Cocos2d-x ver.3 開発の効率化
Cocos2d-x ver.3 開発の効率化
20150425 JAWS-UG Okinawa
20150425 JAWS-UG Okinawa
Lambdaについて
Lambdaについて
LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係
Similar to SESとLambdaでメールをSlackに通知してみよう
Inside mobage platform
Inside mobage platform
Toru Yamaguchi
Enable Skype to favorite the messages
Enable Skype to favorite the messages
daipanchi
C++ lecture-0
C++ lecture-0
sunaemon
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~
Takeuchi Yuichi
.NETの自作ツール公開手段
.NETの自作ツール公開手段
Pierre3 小林
node+socket.io+enchant.jsでチャットゲーを作る
node+socket.io+enchant.jsでチャットゲーを作る
Kiyoshi SATOH
MongoDB〜その性質と利用場面〜
MongoDB〜その性質と利用場面〜
Naruhiko Ogasawara
"Hello World!" から始める Calc で LibreOffice Basic
"Hello World!" から始める Calc で LibreOffice Basic
78tch
第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)
Masanori Machii
2008.10.18 L4u Tech Talk
2008.10.18 L4u Tech Talk
mitamex4u
文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?
Hiroshi Tokumaru
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
Kazuhiro Sera
DEV-011_TypeScript ~Any browser. Any host. Any OS. Open Source~
DEV-011_TypeScript ~Any browser. Any host. Any OS. Open Source~
decode2016
[東京] JapanSharePointGroup 勉強会 #2
[東京] JapanSharePointGroup 勉強会 #2
Atsuo Yamasaki
COBOL技術者のためのJava勉強会
COBOL技術者のためのJava勉強会
naka hide
AWS as MBaaS 〜APIキーとかの話〜
AWS as MBaaS 〜APIキーとかの話〜
Yuki Hirai
Couchbase MeetUP Tokyo - #11 Omoidenote
Couchbase MeetUP Tokyo - #11 Omoidenote
kitsugi
TypeScript と Visual Studio Code
TypeScript と Visual Studio Code
Akira Inoue
1MB
1MB
arase_utagoe
BBBBB
BBBBB
arase_utagoe
Similar to SESとLambdaでメールをSlackに通知してみよう
(20)
Inside mobage platform
Inside mobage platform
Enable Skype to favorite the messages
Enable Skype to favorite the messages
C++ lecture-0
C++ lecture-0
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~
.NETの自作ツール公開手段
.NETの自作ツール公開手段
node+socket.io+enchant.jsでチャットゲーを作る
node+socket.io+enchant.jsでチャットゲーを作る
MongoDB〜その性質と利用場面〜
MongoDB〜その性質と利用場面〜
"Hello World!" から始める Calc で LibreOffice Basic
"Hello World!" から始める Calc で LibreOffice Basic
第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)
2008.10.18 L4u Tech Talk
2008.10.18 L4u Tech Talk
文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
DEV-011_TypeScript ~Any browser. Any host. Any OS. Open Source~
DEV-011_TypeScript ~Any browser. Any host. Any OS. Open Source~
[東京] JapanSharePointGroup 勉強会 #2
[東京] JapanSharePointGroup 勉強会 #2
COBOL技術者のためのJava勉強会
COBOL技術者のためのJava勉強会
AWS as MBaaS 〜APIキーとかの話〜
AWS as MBaaS 〜APIキーとかの話〜
Couchbase MeetUP Tokyo - #11 Omoidenote
Couchbase MeetUP Tokyo - #11 Omoidenote
TypeScript と Visual Studio Code
TypeScript と Visual Studio Code
1MB
1MB
BBBBB
BBBBB
More from Ken'ichirou Kimura
SORACOM UG紹介
SORACOM UG紹介
Ken'ichirou Kimura
SORACOM UGの運営メンバーになってみませんか?
SORACOM UGの運営メンバーになってみませんか?
Ken'ichirou Kimura
SORACOM LTE-M Buttonならびにシミュレータについて
SORACOM LTE-M Buttonならびにシミュレータについて
Ken'ichirou Kimura
SORACOM LTE-M Button for Enterpriseシミュレータについて
SORACOM LTE-M Button for Enterpriseシミュレータについて
Ken'ichirou Kimura
スマートフォンでもSORACOM Arc!
スマートフォンでもSORACOM Arc!
Ken'ichirou Kimura
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた
Ken'ichirou Kimura
ひげボタンをAzure IoT Centralにつないでみる
ひげボタンをAzure IoT Centralにつないでみる
Ken'ichirou Kimura
Fukuoka Engineers Day 2021 SORACOM UG紹介
Fukuoka Engineers Day 2021 SORACOM UG紹介
Ken'ichirou Kimura
Cloudshell 20201229
Cloudshell 20201229
Ken'ichirou Kimura
AWS IoT Eventsで遊んでみた
AWS IoT Eventsで遊んでみた
Ken'ichirou Kimura
Soracomug 20200701
Soracomug 20200701
Ken'ichirou Kimura
AWSで画像認識をやってみる~DL3分クッキング~
AWSで画像認識をやってみる~DL3分クッキング~
Ken'ichirou Kimura
Fukuten 20200117 up
Fukuten 20200117 up
Ken'ichirou Kimura
Amazon Forecastで未来を予測しよう
Amazon Forecastで未来を予測しよう
Ken'ichirou Kimura
SORACOM-UG岡山 LT資料 2019-08-17
SORACOM-UG岡山 LT資料 2019-08-17
Ken'ichirou Kimura
Serverless meetuplt 201903_up
Serverless meetuplt 201903_up
Ken'ichirou Kimura
あのボタンで子育て支援!
あのボタンで子育て支援!
Ken'ichirou Kimura
LogicAppsでお天気ボットを作ろう
LogicAppsでお天気ボットを作ろう
Ken'ichirou Kimura
API Gateway + LambdaでLINE通知サービス構築
API Gateway + LambdaでLINE通知サービス構築
Ken'ichirou Kimura
Jawsug福岡 201606 up
Jawsug福岡 201606 up
Ken'ichirou Kimura
More from Ken'ichirou Kimura
(20)
SORACOM UG紹介
SORACOM UG紹介
SORACOM UGの運営メンバーになってみませんか?
SORACOM UGの運営メンバーになってみませんか?
SORACOM LTE-M Buttonならびにシミュレータについて
SORACOM LTE-M Buttonならびにシミュレータについて
SORACOM LTE-M Button for Enterpriseシミュレータについて
SORACOM LTE-M Button for Enterpriseシミュレータについて
スマートフォンでもSORACOM Arc!
スマートフォンでもSORACOM Arc!
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた
AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた
ひげボタンをAzure IoT Centralにつないでみる
ひげボタンをAzure IoT Centralにつないでみる
Fukuoka Engineers Day 2021 SORACOM UG紹介
Fukuoka Engineers Day 2021 SORACOM UG紹介
Cloudshell 20201229
Cloudshell 20201229
AWS IoT Eventsで遊んでみた
AWS IoT Eventsで遊んでみた
Soracomug 20200701
Soracomug 20200701
AWSで画像認識をやってみる~DL3分クッキング~
AWSで画像認識をやってみる~DL3分クッキング~
Fukuten 20200117 up
Fukuten 20200117 up
Amazon Forecastで未来を予測しよう
Amazon Forecastで未来を予測しよう
SORACOM-UG岡山 LT資料 2019-08-17
SORACOM-UG岡山 LT資料 2019-08-17
Serverless meetuplt 201903_up
Serverless meetuplt 201903_up
あのボタンで子育て支援!
あのボタンで子育て支援!
LogicAppsでお天気ボットを作ろう
LogicAppsでお天気ボットを作ろう
API Gateway + LambdaでLINE通知サービス構築
API Gateway + LambdaでLINE通知サービス構築
Jawsug福岡 201606 up
Jawsug福岡 201606 up
Recently uploaded
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Recently uploaded
(12)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
SESとLambdaでメールをSlackに通知してみよう
1.
SES と Lambda
でメールを Slack に 通知してみよう 2016 年 3 月 21 日 木村健一郎
2.
名前:木村健一郎 所属:株式会社コム・アンド・コム お仕事:技術に関することはなんでも 好きな言語: perl 好きな DB
: PostgreSQL
3.
今日のお題: SES と
Lambda でメールを Slack に通知してみよう
4.
Slack 使ってますか? • チャットツールです •
WEB ブラウザ、 iOS/Android/Windows/Mac アプリで使えます • API あります • 詳しくは http://slack.com/ へ
5.
メール使ってますか? • なんだかんだで使わざるを得ない 重要なメールを携帯に飛ばすとかよくあるよね? • 監視システムからの通知もメールが基本 最近は
API 叩けたり、 slack プラグインがあることも • できれば通知系は slack にまとめたいよね?
6.
メールの内容を slack に飛ばそう! ぱっと思いつくレガシーなやり方 1.SMTP
サーバを作る。例えば postfix 。 2.受信するメールアドレスを作って、そこ宛のメールをコマン ドに渡す 3.コマンドにはメールが標準入力経由で渡されるので、頑張っ てパースして slack に飛ばす hoge: “ | /path/to/command” /etc/aliases にこんな感じで書く
7.
・・・超めんどくさい (´ ・
ω ・ `) ( 特にサーバのお守りなんてしたくない )
8.
やっぱ時代はサーバレスでしょ! ( `・
ω ・ ´) ( 言ってみたかった )
9.
構成 インターネット SES メール S3 S3 に保存 イベント通知 メール読み込み API 呼び出し
10.
1. S3 を設定する 受信したメールを保存する
S3 を設定します。 適当な名前でバケット作りましょう。 ( )S3※ オブジェクトは Lambda に渡すためにしか使わないから 、期限を設定して自動で消しましょう!
11.
{ "Version": "2008-10-17", "Statement": [ { "Sid":
"GiveSESPermissionToWriteEmail", "Effect": "Allow", "Principal": { "Service": [ "ses.amazonaws.com" ] }, "Action": [ "s3:PutObjectAcl", "s3:PutObject" ], "Resource": "arn:aws:s3:::BUCKET_NAME/*", "Condition": { "StringEquals": { "aws:Referer": "ACCOUNT_NO" } } } ] } Policy はこんな感じで。
12.
2. SES を設定する 受信するドメインを決めます。 自分で持ってるドメインでサブドメイン作るなり、新しいド メイン取るなりでまず準備しましょう。 手順 1.メールアドレスを登録する 2.ドメインの
verify をする (Route53 なら早いです ) 3.アクションを追加する S3 に保存するので、先ほどのバケット名を設定します
13.
今更ですが、なんで S3 ? なんで
S3 経由?アクションに Lambda ってあるやん? S3 使わないと、本文や添付ファイルが取れないから (多分理由は、 Lanbda 呼び出すときに渡すデータがでかいと嫌ってことかと思います)
14.
3. Lambda ファンクション書くぜ! 今回は
Python で書きます。理由は以下の通り。 1.メールを取り扱うライブラリが標準である 2.Slack 連携のライブラリがある 3.新しく使えるようになったから試してみたい 4.matetsu さんの記事を参考にしたから
15.
下準備 Python2.7 のインストールは適当に。 ワークディレクトリを作って、 slack
用のライブラリ をインストールします。 %mkdir ses-slack %cd ses-slack %pip install slackweb -t ./
16.
コード書くぜ(1) lambda_function.py というファイルで作ります。 utf-8 で書きます。 #
coding: utf-8 from __future__ import print_function import boto3 import json import ConfigParser import email from email.parser import FeedParser from email.header import decode_header import slackweb 出だしはこんな感じで。
17.
コード書くぜ(2) ハンドラーの前半。 S3 からメールを取得。 def
lambda_handler(event, context): try: record = event["Records"][0] bucket_region = record["awsRegion"] bucket_name = record["s3"]["bucket"]["name"] mail_object_key = record["s3"]["object"]["key"] s3 = boto3.client('s3', region_name=bucket_region) mail_object = s3.get_object(Bucket = bucket_name, Key = mail_object_key) mail_body = '' try: mail_body = mail_object["Body"].read().decode('utf-8') except: try: mail_body = mail_object["Body"].read().decode('iso-2022-jp') except: mail_body = mail_object["Body"].read() msg_object = email.message_from_string(mail_body)
18.
コード書くぜ(3) ハンドラーの中盤。本文、サブジェクト、送信元を取得します。 if msg_object.is_multipart(): body =
msg_object.get_payload()[0] else: body = msg_object try: body = body.get_payload(decode=True).decode(body.get_content_charset()) except: #iso-2022-jp なのに丸文字があるとき code = 'iso-2022-jp-2004' body = body.get_payload(decode=True).replace('033$B', '033$(Q').decode(code) (d_sub, sub_charset) = decode_header(msg_object['Subject'])[0] if sub_charset == None: subject = d_sub else: subject = d_sub.decode(sub_charset) (d_from, from_charset) = decode_header(msg_object['From'])[0] if from_charset == None: mfrom = d_from else: mfrom = d_from.decode(from_charset)
19.
コード書くぜ( 4 ) ハンドラーの後半。エラーハンドリングします。 except:
subject = u"Error!" body = u" メールを受信しましたが、エラーが発生しました。 " mfrom = u" 送信元不明 " どうしてもおかしな形式のメールというのはあるものでして・・・
20.
コード書くぜ( 5 ) ハンドラーの終盤。いよいよ
slack に流します。 inifile = ConfigParser.SafeConfigParser() inifile.read("./config.ini") attachments = [] attachment = { "fallback": u"From:%snSub:%s" % (mfrom,subject), "pretext": u“From:%snSub:%s" % (mfrom,subject), "color": "#aaaaaa", "text": body } attachments.append(attachment) slack = slackweb.Slack(url=inifile.get('slack', 'hook_url')) slack.notify(attachments=attachments, channel=inifile.get('slack', 'channel'), username=inifile.get('slack', 'username'), icon_emoji=inifile.get('slack', 'icon_emoji')) return "CONTINUE"
21.
コード書くぜ( 6 ) 設定ファイルを
config.ini という名前で準備します。 [slack] hook_url = https://hooks.slack.com/services/*** username = alert_bot channel = 流す先のチャンネル名 icon_emoji = :guardsman: hook_url は slack の設定から取得します。 Web ブラウザでアクセスし、設定の「 Apps & Custom Integrations 」→「 Incoming WebHooks 」です。
22.
アップロードするよ! zip でまとめます。 %zip -r
ses-s3-lambda-slack.zip config.ini lambda_function.py slackweb で、これを管理コンソールからアップします
23.
S3 のイベント設定するよ! 先ほどの S3
バケットに更新イベントを追加します。 Lambda の管理コンソールだけでなく、以下のように S3 の管理コンソール からも追加できます。
24.
先ほど設定したメールアドレスにメールを送ってみましょう。 動かないときは以下のようにちょっと修正してローカルで動かしてみる ( 引数にテ キストファイルとして保存したメールを渡す
) とデバッグしやすいです。 もしくは、 print すると CloudWatch のログに出力されるので print デバッグで。 import sys def lambda_handler(m): try: mail_object = email.message_from_string(m) …… return "CONTINUE" if __name__ == "__main__": if len(sys.argv)>1: raw=open(sys.argv[1]).read() else: print "no args" exit lambda_handler(raw) 5 .試験するよ!
25.
6 .応用するよ! ここまでできたら色々遊べますね。 •キーワードをハイライトしたり色を変える •本文に応じて通知するメールを取捨選択する •Slack から返信もできるようにしてみる •添付ファイルも見れるようにしてみる •Twilio
と連携して SMS も送ってみる 色々遊んでみましょう!
26.
7 .感想 • Lambda
超便利 (^o^) • SES はウィルスメールフィルタなどもあって便利 • この組み合わせ、スロッティングとか考えなくていいし楽 ちん • もっと楽にデバッグできない? • Perl on Lambda マダー? たぶん永久に来ない? (´ ・ ω ・ `) • Qiita にまとめてますのでコードはこちらを参考に http://goo.gl/2m0dqK
Download now