Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
サーバーレスアーキテクチャで Twilioを安全に運用しよう!
Search
Kiminari Homma
December 08, 2015
Technology
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
サーバーレスアーキテクチャで Twilioを安全に運用しよう!
https://twiliojp-ug.doorkeeper.jp/events/35301
での登壇資料です。
Kiminari Homma
December 08, 2015
More Decks by Kiminari Homma
See All by Kiminari Homma
Twilio Meetup 東京 2022/11/11
honkimi
0
83
Twilio iOS 徹底攻略
honkimi
1
1.4k
2021年 Twilio Voice 報告
honkimi
0
380
WebRTC ビジネスの失敗と成功
honkimi
2
1.9k
最近の Twilio トレンド報告
honkimi
0
450
Twilio Meet Up
honkimi
0
100
利用ユーザーからみた Twilio の紹介
honkimi
0
120
Zendesk App を Heroku で作ってみた話
honkimi
0
190
国内における Twilio x Alexa
honkimi
0
820
Other Decks in Technology
See All in Technology
Redmine 7.0で私が開発した新機能の狙いと背景
vividtone
1
160
Deploying a Full-Stack Bun-Native Framework on Cloudflare Workers
7nohe
0
140
Slack上でインフラをトラブルシュートする! Agentic Platform Engineeringの第一歩
teru0x1
4
1.3k
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
8
7.9k
Code4Lib JAPANカンファレンス2026 開会挨拶 / Code4Lib JAPAN Conference 2026: Opening Remarks
ykiyota
0
340
安心して変更できるWebフロントエンドの作り方
pirosikick
4
1.3k
[2026-09-11]SREは誰のもの?運用エンジニアが始める 「SRE領域への越境」とチームの進化の軌跡 〜Road to NEXT CRE
tosite
0
160
NW運用でNWトポロジ可視化ツールに期待すること/shumoku-meetup1
corestate55
2
120
Multica × 長期記憶:40個のミニプロジェクト管理
eiei114
1
250
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
3
470
AIに丸投げしないトイル削減 / Eliminating Toil Without Leaving It All to AI
kohbis
4
1.1k
『止めない』を設計する — 制約の中で、事業の根幹を支える判断
hiroyaterui
0
270
Featured
See All Featured
Un-Boring Meetings
codingconduct
0
410
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
270
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
GraphQLとの向き合い方2022年版
quramy
50
15k
[SF Ruby Conf 2025] Rails X
palkan
2
1.4k
New Earth Scene 8
popppiees
3
2.5k
A Tale of Four Properties
chriscoyier
163
24k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
Building the Perfect Custom Keyboard
takai
2
870
Are puppies a ranking factor?
jonoalderson
2
3.9k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
290
Transcript
5XJMJP"1*ษڧձ7PM αʔόʔϨεΞʔΩςΫνϟ Ͱ5XJMJPΛ҆શʹӡ༻͠Α͏ʂ TFMGSFF MMD ,JNJOBSJ)PNNB
ࣗݾհ
ຊؒ ߖ @kimihom ϘΫίί ӡӦऀ http://www.bokukoko.info/ CTO at selfree,llc Ruby
on Rails, AWS, Heroku, Android, iOS TwilioJP-UG ϝϯόʔ
ίʔϧίωΫτ as a Service ސ٬ใͱ࿈ಈͨ͠ίʔϧηϯλʔΛߏங Webϒϥβ͕ిΘΓ ֨҆ɾຊ֨ػೳɾଈಋೖ ̎िؒແྉτϥΠΞϧ࣮ࢪத αʔϏεհ https://www.callconnect.jp/
$POUFOUT w 5XJMJPͷ෮श w ϑΥʔϧόοΫ63- w αʔόʔϨεΞʔΩςΫνϟ w ٳܜ w
ϋϯζΦϯ
ͷ෮श
Voice Client ిͷड৴ ԻϑΝΠϧ࠶ੜ௨Ի μΠϠϧૢ࡞ʹԠͨ͡ಈ࡞ସ ௨தͷిͷ੍ޚ ిͷൃ৴ ϒϥβɾεϚϗͰి Voice ͱ࿈ಈͯ͋͠ΒΏΔ௨Λૢ࡞
and More.. →ࣗ༝ʹΈ߹ΘͤՄʂ
TwiML Twilio ͰిΛड৴ɾൃ৴͢Δͱ͖ͳͲɺ Twilio ಈ࡞໋ྩΛग़ͨ͢ΊͷXML Ͳ͏͢Ε͍͍ʁ ͜͏͠Ζ(TwiML) Webαʔόʔ <?xml version="1.0"
encoding="UTF-8"?> <Response> <Gather action=“https://www.myapp.com/action”> <Play loop=“5”>https://www.myasset.com/voice.wav</Play> </Gather> </Response> αϯϓϧ
REST API HTTP ௨৴Ͱ Twilio ͷใͷऔಘɾ࡞ɾߋ৽ɾআͳͲΛߦ͏ ֤ݴޠʹରԠ (PHP, Ruby, Python,
Node.js etc) Webαʔόʔ ͜Εͬͯ ͜͏ͳΓ·ͨ͠ ྫ͑ ɾి൪߸ͷऔಘɺߪೖɺআ ɾిΛ͔͚Δɺ௨ͷߋ৽ ɾSMS ૹ৴ ɾͦͷଞɺTwilio ϚΠϖʔδʹ͋Δૢ࡞ΛࣗલͰ࣮
ϑΥʔϧόοΫ63-
ϦΫΤετURL ͱ ϑΥʔϧόοΫURL ి͕͔͔͖ͬͯͨͱ͖ʹɺ࠷ॳʹ Twilo ͕ฉ͖ʹߦ͘ URL Ͳ͏͢Ε͍͍ʁ Error! Webαʔόʔ
ϦΫΤετURL ϦΫΤετ URL ͰTwiMLΛղੳͰ͖ͳ͔ͬͨ߹ʹฉ͖ʹߦ͘URL ϑΥʔϧόοΫ URL ϦΫΤετ URL Ͳ͏͢Ε͍͍ʁ ϑΥʔϧόοΫ URL ͜͏͠Ζ(TwiML)
ʮΞϓϦέʔγϣϯͷΤϥʔ͕ൃੜ͠·ͨ͠ɻʯ 4BZ
1SPCMFN w ిΛ͔͚ͨਓ͔͕͙͢͠ʹΘ͔Βͳ͍ w ΞϥʔττϦΨʔ࠷ͯ͘ w 5XJMJPμογϡϘʔυͷϩάΛຖճݟΔͷେม w ΞϓϦέʔγϣϯͷ͍ͤʹͳͬͯ͠·͏ ͦͷ௨Γ͕ͩ
ϦΫΤετURL ͱ ϑΥʔϧόοΫURL ి͕͔͔͖ͬͯͨͱ͖ʹɺ࠷ॳʹ Twilo ͕ฉ͖ʹߦ͘ URL Ͳ͏͢Ε͍͍ʁ Error! Webαʔόʔ
ϦΫΤετURL ϦΫΤετ URL ͰTwiMLΛղੳͰ͖ͳ͔ͬͨ߹ʹฉ͖ʹߦ͘URL ϑΥʔϧόοΫ URL ϦΫΤετ URL Ͳ͏͢Ε͍͍ʁ ϑΥʔϧόοΫ URL ͜͏͠Ζ(TwiML) ?
ϑΥʔϧόοΫ63-ઌͷ݅ w ϦΫΤετ63-ͱҧ͏αʔόʔͰ͋Δ w ·ͣམͪΔ͜ͱ͕ͳ͍ w ΤϥʔΛݕͰ͖ΔΑ͏ʹ͢ΔͨΊɺ੩తͳϑΝΠ ϧͰͳ͘ɺϓϩάϥϜΛಈ͔͍ͨ͠
ͦ͜Ͱ lαʔόʔϨεΞʔΩςΫνϟz 1)1ͳͲͷαʔόʔΛ͜ͷͨΊʹΘ͟Θ ͟ݐͯΔͷ࡞Δͷཧ͢Δͷ໘ɻ ͓͔͔ͦͯۚ͠Δɻ
"84-BNCEB "NB[PO"1*(BUFXBZ lαʔόʔϨεΞʔΩςΫνϟz
ɾ"84ͷΠϕϯτΛτϦΨʹɺҙͷ ίʔυΛ࣮ߦ ɾ/PEFKT+BWB1ZUIPO ɾ-JOVYڥʹ"844%, *NBHF.BHJDL ͕ଂ ɾOPEF@NPEVMFTͳͲΛ;JQʹݻΊͯΞοϓ ϩʔυՄ ɾ͔݄ʹສ݅ͷϦΫΤετ͓Αͼ
(#ඵͷίϯϐϡʔςΟϯά࣌ؒ ͕ແྉ ɾϩά$MPVE8BUDIͰӾཡ "84-BNCEB
w "NB[PO4ʹը૾͕Ξοϓϩʔυ͞ΕͨλΠϛϯά Ͱɺը૾ΛϦαΠζ w "NB[PO%ZOBNP%#ʹσʔλ͕ೖ͞ΕͨλΠϛϯά ͰɺσʔλΛܗ w $SPOͷΑ͏ʹҰճͷλΠϛϯάͰɺόονॲཧΛ ࣮ߦ w
όοΫάϥϯυδϣϒΛ"84-BNCEBԽ &YBNQMFTPG"84-BNCEB
"NB[PO"1*(BUFXBZ ɾ֎෦"1*Λެ։͢Δͷʹཱͭ ɾ"84-BNCEBΛΤϯυϙΠϯτͱ ͯ͠ࢦఆՄೳ ɾಠࣗ63-ͷൃߦ ɾ"1*ͷόʔδϣϯཧɾ࣮ߦ੍ݶ ɾJ04"OESPJE͚4%,ൃߦ ɾ4XBHHFSରԠ ࠓͷ݄ϦϦʔεʂ ݄ʹ౦ژϦʔδϣϯ։ઃ
ͣͬͱಈ͍͍ͯΔzαʔόʔzͷ֓೦͕ͳ͘ͳΓɺ ඞཁʹͳͬͨͱ͖ʹىಈͯ͠αʔόʔͷΑ͏ʹৼΔ͏ ίετɺߴՄ༻ੑΛ࣮ݱ
:PVS 4FSWFS Ϧ Ϋ Τ ε τ 6 3- Τ
ϥ ʔ ʂ ి ᶃ ᶄ ᶅ "1* (BUFXBZ -BNCEB ϑ Υ ʔ ϧ ό ο Ϋ 6 3 - 5X J. -
5XJMJPϦΫΤετ63-Λ αʔόʔϨεΞʔΩςΫνϟԽʁ ͦΕ (PPE4PMVUJPO
ࠓճͷϋϯζΦϯ w "84-BNCEBͷίʔυ࡞ w "NB[PO"1*(BUFXBZͷઃఆͱσϓϩΠ w ϑΥʔϧόοΫ63-Λ"NB[PO"1*(BUFXBZ w 5XJMJPͷϦΫΤετ63-Λଘࡏ͠ͳ͍63- w
ಈ࡞֬ೝ
ϋϯζΦϯखॱ݄ͷ 5XJMJP"EWFOU$BMFOEBSʹͯ