Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AmazonConnectで作るサーバレス電話確認システム
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
inamuu
July 12, 2019
Technology
1.2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AmazonConnectで作るサーバレス電話確認システム
社内LTで発表した資料です。
inamuu
July 12, 2019
More Decks by inamuu
See All by inamuu
TechBullLT_気軽にはじめる自宅サーバーを支える技術
kzm0211
4
670
メインサービスのDBを1年でAurora1から段階的にAurora3へアップグレードした話
kzm0211
1
250
エンジニアの副業のすゝめ / engineer-sidejob-20200130
kzm0211
0
960
ランサーズのSendGrid活用事例
kzm0211
0
1.6k
元ドラッグストア店員の転職LT
kzm0211
0
1.7k
さよならBIND
kzm0211
3
310
Other Decks in Technology
See All in Technology
Android の公式 Skill / Android skills
yanzm
0
150
Bedrock AgentCore RuntimeでAuth0 Changelog調査AIをアップグレードした話
t5u8a5a
1
160
マルチアカウント環境での コーディングエージェントを使った障害調査が大変なので AIエージェントにReadOnly権限を付与してみた / ReadOnly AI Agents for Multi-Account AWS Incident Response
yamaguchitk333
2
110
気軽に使える"情報のハブ"としてのNotion活用 〜フロー情報の集積点 と、 Claude Code × Notion AI〜
syucream
1
140
あなたの知らないPDFのアクセシビリティ
lycorptech_jp
PRO
0
200
やさしいA2A入門
minorun365
PRO
12
1.9k
白金鉱業Meetup_Vol.24_「AIエージェントは分けるほど良い」は本当か? / Is it true that “the more you divide AI agents, the better”?
brainpadpr
1
400
機械学習を「社会実装」するということ 2026年夏版 / Social Implementation of Machine Learning June 2026 Version
moepy_stats
6
2.4k
フィジカル版Github Onshapeの紹介
shiba_8ro
0
270
MUSUBI 田中裕一『AIと共に行う「しごとのリデザイン」- スモールバックオフィス編』AI Ops Lab #4
musubi
0
200
【Snowflake Summit 2026 Recap!!】Snowflake Summit Deep Dive: Security & Governance
civitaspo
1
230
AI駆動開発を通して感じた、 AI時代のデザイナーの役割変化
whisaiyo
3
2.2k
Featured
See All Featured
Exploring anti-patterns in Rails
aemeredith
3
410
How to Think Like a Performance Engineer
csswizardry
28
2.7k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Side Projects
sachag
455
43k
The Language of Interfaces
destraynor
162
27k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Why Our Code Smells
bkeepers
PRO
340
58k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
200
Mobile First: as difficult as doing things right
swwweet
225
10k
The World Runs on Bad Software
bkeepers
PRO
72
12k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Fireside Chat
paigeccino
42
4k
Transcript
Amazon Connect で作る サーバーレス電話確認システム ランサーズSREチーム 稲村 2019.7.12(金) \#dev_tech_friday LT vol.1/
ランサーズSREチーム 稲村一真 https://inamuu.com @kzm0211
ランサーズの電話確認システムを 刷新した話をします!✋
電話確認システムとは クライアント様とランサー様それぞれの存在証明の 一つとして電話確認の実施を推奨 プロフィール画面で番号登録した電話から、 弊社指定の番号へ電話をかけていただくことで 電話確認が行われるシステム
移行前の構成 &$͕ 1ZUIPOίʔυαʔόʔʹ͔͠ͳ ͍͔͠Πϯελϯεߏ ཧ͞Εͯͳ͍
移行することになった背景 電話確認を行うサーバーが1台のSPOFだった インフラと一部アプリケーションソースが構成管理されていなかっ た 検証環境が無かった 構築時のドキュメントが古くなり、新規での構築が容易では 無かった
\同じ環境を構築するのたいへん/ LambdaとAmazon Connect連携できるのでは どうやらぜんぶサーバーレスで できるらしいので ぜんぶ作り直ししよう!!
Amazon Connect
AmazonConnectとは マネージドのコールセンターサービス Webベースで電話の受電、架電がおこなえる上 に、東京リージョンに対応 日本語で書いた漢字を含むテキストをそのまま読 み上げてくれる 問い合わせフローを作成できる専用のエディターが ある Lambda連携ができる!
問い合わせフローエディタ
デモ
移行後の構成
移行後の構成 Amazon Connectでフローを作成 Lambda(in VPC)でDBへメールアドレスの確認&更 新&メール送信を実施 Lambdaの返り値に、メールアドレスの確認結果から 判断したアナウンスの文字列を渡す Amazon Connectでは渡された文字列を動的にテキス
ト読み上げさせる メールの配信はSendGridのAPIを使って行う
ちょっと工夫した所 VPCに配置したLambdaは起動に時間がかかる 定期的に実行していれば停止せずに再利用されるが、 しばらくすると停止してしまう Lambdaが起動するまでの間、電話の確認処理で止 まってしまう ClowdWatch Ruleで10分おきにただLambdaを実 行するだけのCronを追加
Lambda Functionのmain関数 def lambda_handler(event, context): '''cloudwatch rulesで引数なしに定期実行することでLambdaを停止し ないための処理を最初に追加''' if 'Details'
not in event: print('keys does not exist') return else: result = phoneCheck(event) return { 'data' : result }
10分おきに実行するCloudWatchRule ただし何も処理しない
まとめ
検証から本番移行まで 短期間でできた \AWSすごい!/
SPOFでレガシーだった環境を サーバーレスな今風な環境に 移行できた \だいぶイケてるのでは/
Amazon ConnectやLambda, SendGridへの理解が深まった \理解できるとぜんぶたのしい!/
マネージドにまかせられるところは どんどんやってきましょう
おしまい☘