SlideShare a Scribd company logo
TechCamp Memphis 2013

TWILIO VOICE / SMS API:
TEACH YOUR APPS TO SPEAK
Post-session with extra slides, notes and
annotations.

Stewart Whaley, Esq.
whaleysa@archildrens.org
stewart@logicurrent.com
@stewartwhaley => Twitter, LinkedIn

Arkansas Children‟s Hospital
LogiCurrent, LLC
NON-PROFITS
Missed appointments/court dates, etc. can have
VERY negative impact on these populations.

(> 1,000 outpatient clinic appointments / day.)

Mission:
Needs:

Improve children‟s health.
Decrease appointment “No Show” rate
Improve patient engagement
(drug compliance, other protocols, pre-MRI prep, etc.)

Mission:
Needs:

Access to justice
Decrease “No Show” rate
and improve/accelerate
document procurement
Clients at/below 125% federal poverty level!
http://www.youtube.com/watc
h?v=Fb8sKFTGNhY
Post session note:
• This is a humorous example for a developer session. It is NOT intended to
make light of the client/patient situations discussed.
• Most of us can relate to the PowToon and „recover‟ from a mistake due to
insurance, finances, etc.
• Missing appointments can be devastating for the population we are
discussing.
What the fox say?
Call:

501-xyz-abcd
Post session note:
The demo at this number didn‟t stick around, but slide 11 has
the Twimlbin URL‟s with code you can clone to replicate.
Place the URL‟s in your Twilio account‟s Voice Request and
Message Request URLs.
As discussed in the session, this solution doesn‟t actually
record the response text. You can easily add with a web
handler executing the same TWIml and logging POST params
to your db of choice. Ton of examples online.
Awesome!
vs.

So What?
ACH PHONE SYSTEM 2005

It‟s alive, but…

Post session: Initially a very good solution, however, degraded significantly over time
and became a support and scalability nightmare with no redundancy/replacement.
We did NOT want to deal with telephony internals or hardware again. Ever.
Seriously. Period.
FOUND TWILIO
Too good to be true? Where‟s the catch…?

<?php
require_once('/path/to/twiliophp/Services/Twilio.php');
$sid = "AC3094732a3c49700934481addd5ce1659";
$token = "{{ auth_token }}";
$client = new Services_Twilio($sid, $token);
$call = $client->account->calls>create("+14158675309", "+14155551212",
"http://demo/voice.xml", array());
echo $call->sid;

<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Say>Hello TechCamp.</Say>
</Response>
TIME TO CONVINCE THE BRASS

<Response>
<Say>Not a problem.</Say>
</Response>
Post session slide
• No hardware! YES!
• No telecom knowledge!
• We already have a team of web and back-end developers
Twilio API perfect match for our skills.
• Fast to market!
• Massive ROI compared to vendor solutions!
• Same platform for adding planned SMS projects.
• Leverages most of the non-Twilio business rules, code,
architecture of phone system application. The issues with old
system were hardware, software compatiblity, 3rd party
libraries, etc.
• 3rd party solutions amazingly expensive.
• We could hire a full-time developer devoted to ONLY voice
and SMS for the cost of many 3rd party solutions pitched to
us. Of course, very little systems integration, flexiblity, etc.
if use vendor.
TWIML

https://www.twilio.com/docs/api/twiml

Say -

Read text to the caller

Play -

Play an audio file for the caller

Dial -

Add another party to the call

Record -

Record the caller's voice

Gather -

Collect digits the caller types on their
keypad

Sms -

DEPRECATED see Message
Send an SMS message during a phone
call

PS: You can‟t beat the Twilio.com docs/quickstarts and tutorials.
Easy to use, code in variety of languages, etc.
Development / testing tools are great: test API, logging, usage info, etc.
TWIML continued
Message – sends a message to a phone number.

Hangup -

Hang up the call

Queue -

Add the caller to a queue of callers.

Redirect - Redirect call flow to a different TwiML
document.

Pause -

Wait before executing more instructions

Reject Decline an incoming call without being
billed.
TWIMLETS +
TWIMBIN
501-xyz-abcd
Voice public link:
http://twimlbin.com/external/01e3526628c6bc7c

SMS public link:
http://twimlbin.com/external/1aa2aac5a65de8d5

Combine to create a free, hosted:
a. conference line
b. with call recording
c. two-level SMS send/receive plus bit.ly link to Twitter.
d. Google analytics (provided by Twimlbin – can be set at Private link)
Basic start on lead generation/conversion tracking …
ACH PHONE DIALER 2013
<Say>Thanks, Twilio!</Say>
Dramatic improvement.
• Virtually no support time;
• Scalability; redundancy.
• 2% decrease in “No Shows” first 3 months!

Internals:
• Architecture / rules / Gotchas /lessons learned
• 4CHAN rule – protect against hijacking, don‟t let it
become evil SPAM machine.
• Triggers in API for monitoring real-time.
• The “press 1” on voicemail incident.
• Static TWIml versus web handler.
• READ IT: https://www.twilio.com/docs/security
PS: With 1,000 visits/day a 2% decrease is a major increase in utilization, health outcomes and lost
revenue.
PS: Some interesting Twilio use-cases. The Parkinson‟s project is an excellent
example of thinking outside the “this is for phone or text reminders” box!
All three have “case studies” at Twilio.com and plenty of other pub online.

http://bumblephone.com
Protect kid‟s online / phone

http://www.wix.com/
CRM/Call center integration

http://parkinsonsvoice.org/ (Wow!)
Watch their TED video on homepage. Amazing.
http://bumblephone.com
http://www.wix.com/
http://parkinsonsvoice.org/
Twilio CookBook ($18 on Kindle, Amazon ~ $29)
• Examples are PHP + MySQL +PDO. Should be easy enough for non-PHP
devs to port.
• PHP code is elementary for experienced PHP‟ers, but check it out for Twilio
ideas. At least the table o‟ contents.

Pluralsight 2 hour .NET Twilio course.
Good stuff, even for non-.NET folks. Free-trial account can download the MVC
code (3 projects worth).
Twilio.com: Best source. Go to API docs, Quickstarts, How-To‟s
Google: “devin rader twilio for .NET developers” = 7 part series covering
libraries, Webforms, MVC, building an IVR…
http://offlineclassroom.com/welcome/
• Examples and simple apps that can be extended.
• Main page offers OpenVBX training for $20.
• Seems like a bargain if you need a kickstart.
• If you want to white-label OpenVBX this is a great place to start.
OpenVBX - openvbx.org
POST SESSION SLIDE
• Twilio started, open-source PHP using CodeIgniter.
• Mod it, create your own plugins, install community plugins, etc.
• Not supported by Twilio, recent development slowed down (GitHub) but
being used by a lot of devs as basis for white-labeled customer solutions
and you can find support/forum help if work at it.
• This is a great place to learn more: PHP, CodeIgniter, Twilio. Search
Freelancer.com, etc. you‟ll find requests for paid dev help with OpenVBX
and for requests to port the “work flow” features from OpenVBX to other
types of applications.
My OpenVBX running on Windows Azure Ubuntu VM
Make calls, SMS in the browser.
Set up IVRs, Conference lines, VOICE/SMS routing, etc.
Small business with “big boy” telecom features for customers,
employees, etc.
Remember offlineclassroom.com training offer.
OpenVBX continued:

POST SESSION SLIDE

Call flows like above can be voice/sms and include routing to individual users
or groups in OpenVBX. For example: (step 2) “Call Sales and connect” could ring
everyone in group and connect this call to first sales rep that answers.
Contact me here if:
• You build something (love to hear about it )
• Need help / have questions
• Want to hire
LinkedIn / Twitter
@stewartwhaley

Twitter
@LogiCurrent
stewart@logicurrent.com
whaleysa@archildrens.org
stewartwhaley@hotmail.com
https://www.twilio.com/doers/stewart-whaley

More Related Content

PDF
Getting hands dirty with php7
PDF
A Perfect Launch, Every Time
PDF
My Site Was Hacked!
PDF
Decouple your framework now, thank me later
PPT
Smarr Oscon 2007
PDF
HTML5@电子商务.com
PDF
Progressive Web Apps - Goto Chicago 2017
PPTX
How Asp.Net Developers Can Leverage Share Point
Getting hands dirty with php7
A Perfect Launch, Every Time
My Site Was Hacked!
Decouple your framework now, thank me later
Smarr Oscon 2007
HTML5@电子商务.com
Progressive Web Apps - Goto Chicago 2017
How Asp.Net Developers Can Leverage Share Point

Viewers also liked (18)

PDF
Báo cáo tìm hiểu quy trình
PDF
Italcementi diffida a aia italcementi tavolo tecnico d'angelo giorgio
DOCX
Hola pekeños artistas
PDF
Diffida a aia italcementi tavolo tecnico d'angelo giorgio
PDF
AREEBA Profile NEW
PDF
Toolkit by ness
PPTX
TEEMA2015 TOK Antti Sippola
PDF
Diffida a aia italcementi tavolo tecnico d'angelo giorgio
PDF
isbs_Double Spread ad AD-51X68cms_new
PPS
O bhagavad gita muitissimo simplificado
PDF
Diffida a aia italcementi tavolo tecnico d'angelo giorgio
PDF
Diffida a aia italcementi tavolo tecnico d'angelo giorgio
PDF
Rhonda Linn Excellence in Education Award
PDF
Plano de conjunto
PPTX
Institution research
PPT
Leishmaniasis. haris bela
PPTX
Kelompok 3 fiks
Báo cáo tìm hiểu quy trình
Italcementi diffida a aia italcementi tavolo tecnico d'angelo giorgio
Hola pekeños artistas
Diffida a aia italcementi tavolo tecnico d'angelo giorgio
AREEBA Profile NEW
Toolkit by ness
TEEMA2015 TOK Antti Sippola
Diffida a aia italcementi tavolo tecnico d'angelo giorgio
isbs_Double Spread ad AD-51X68cms_new
O bhagavad gita muitissimo simplificado
Diffida a aia italcementi tavolo tecnico d'angelo giorgio
Diffida a aia italcementi tavolo tecnico d'angelo giorgio
Rhonda Linn Excellence in Education Award
Plano de conjunto
Institution research
Leishmaniasis. haris bela
Kelompok 3 fiks
Ad

Similar to Tech campmemphis slides_post_session (20)

PPTX
Mobile devices and SharePoint
PPTX
Mobile Devices and SharePoint - Sahil Malik
PPTX
The Lean Startup at Code for America fellows
PPTX
How To Start Your InfoSec Career
PPTX
From Duke of DevOps to Queen of Chaos - Api days 2018
PDF
Patron Power Platform Community November 2021 Webinar
PPTX
Microsoft Teams and Planner Global Azure Bootcamp
PPTX
The Lean Startup EA edition
PPTX
The Lean Startup fbFund Edition
PDF
Building products people actually can use – why all developers need to unders...
KEY
Twin Redheaded Stepchildren of a Different Mother: The Usability of Accessibi...
PDF
HP Helion European Webinar Series ,Webinar #3
PPTX
DevOps - Understanding Core Concepts
PDF
Getting started in app sec
PPTX
2009 10 28 The Lean Startup In Paris
PDF
Lublin Startup Festival - Mobile Architecture Design Patterns
PDF
How Collaboration and Communication Tie Your Tech Stack Together
PPT
061203_futurewebapps_tempo
PPTX
Webinar: Creative Ways to Compensate for an Old Intranet
PPTX
10 Things I Hate about DevOps
Mobile devices and SharePoint
Mobile Devices and SharePoint - Sahil Malik
The Lean Startup at Code for America fellows
How To Start Your InfoSec Career
From Duke of DevOps to Queen of Chaos - Api days 2018
Patron Power Platform Community November 2021 Webinar
Microsoft Teams and Planner Global Azure Bootcamp
The Lean Startup EA edition
The Lean Startup fbFund Edition
Building products people actually can use – why all developers need to unders...
Twin Redheaded Stepchildren of a Different Mother: The Usability of Accessibi...
HP Helion European Webinar Series ,Webinar #3
DevOps - Understanding Core Concepts
Getting started in app sec
2009 10 28 The Lean Startup In Paris
Lublin Startup Festival - Mobile Architecture Design Patterns
How Collaboration and Communication Tie Your Tech Stack Together
061203_futurewebapps_tempo
Webinar: Creative Ways to Compensate for an Old Intranet
10 Things I Hate about DevOps
Ad

Recently uploaded (20)

PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPT
Teaching material agriculture food technology
PDF
cuic standard and advanced reporting.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Machine learning based COVID-19 study performance prediction
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
KodekX | Application Modernization Development
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
Diabetes mellitus diagnosis method based random forest with bat algorithm
Review of recent advances in non-invasive hemoglobin estimation
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Teaching material agriculture food technology
cuic standard and advanced reporting.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Machine learning based COVID-19 study performance prediction
Mobile App Security Testing_ A Comprehensive Guide.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Network Security Unit 5.pdf for BCA BBA.
Spectral efficient network and resource selection model in 5G networks
The Rise and Fall of 3GPP – Time for a Sabbatical?
Per capita expenditure prediction using model stacking based on satellite ima...
KodekX | Application Modernization Development
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Advanced methodologies resolving dimensionality complications for autism neur...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....

Tech campmemphis slides_post_session

  • 1. TechCamp Memphis 2013 TWILIO VOICE / SMS API: TEACH YOUR APPS TO SPEAK Post-session with extra slides, notes and annotations. Stewart Whaley, Esq. whaleysa@archildrens.org stewart@logicurrent.com @stewartwhaley => Twitter, LinkedIn Arkansas Children‟s Hospital LogiCurrent, LLC
  • 2. NON-PROFITS Missed appointments/court dates, etc. can have VERY negative impact on these populations. (> 1,000 outpatient clinic appointments / day.) Mission: Needs: Improve children‟s health. Decrease appointment “No Show” rate Improve patient engagement (drug compliance, other protocols, pre-MRI prep, etc.) Mission: Needs: Access to justice Decrease “No Show” rate and improve/accelerate document procurement Clients at/below 125% federal poverty level!
  • 3. http://www.youtube.com/watc h?v=Fb8sKFTGNhY Post session note: • This is a humorous example for a developer session. It is NOT intended to make light of the client/patient situations discussed. • Most of us can relate to the PowToon and „recover‟ from a mistake due to insurance, finances, etc. • Missing appointments can be devastating for the population we are discussing.
  • 4. What the fox say? Call: 501-xyz-abcd Post session note: The demo at this number didn‟t stick around, but slide 11 has the Twimlbin URL‟s with code you can clone to replicate. Place the URL‟s in your Twilio account‟s Voice Request and Message Request URLs. As discussed in the session, this solution doesn‟t actually record the response text. You can easily add with a web handler executing the same TWIml and logging POST params to your db of choice. Ton of examples online.
  • 6. ACH PHONE SYSTEM 2005 It‟s alive, but… Post session: Initially a very good solution, however, degraded significantly over time and became a support and scalability nightmare with no redundancy/replacement. We did NOT want to deal with telephony internals or hardware again. Ever. Seriously. Period.
  • 7. FOUND TWILIO Too good to be true? Where‟s the catch…? <?php require_once('/path/to/twiliophp/Services/Twilio.php'); $sid = "AC3094732a3c49700934481addd5ce1659"; $token = "{{ auth_token }}"; $client = new Services_Twilio($sid, $token); $call = $client->account->calls>create("+14158675309", "+14155551212", "http://demo/voice.xml", array()); echo $call->sid; <?xml version="1.0" encoding="UTF-8"?> <Response> <Say>Hello TechCamp.</Say> </Response>
  • 8. TIME TO CONVINCE THE BRASS <Response> <Say>Not a problem.</Say> </Response>
  • 9. Post session slide • No hardware! YES! • No telecom knowledge! • We already have a team of web and back-end developers Twilio API perfect match for our skills. • Fast to market! • Massive ROI compared to vendor solutions! • Same platform for adding planned SMS projects. • Leverages most of the non-Twilio business rules, code, architecture of phone system application. The issues with old system were hardware, software compatiblity, 3rd party libraries, etc. • 3rd party solutions amazingly expensive. • We could hire a full-time developer devoted to ONLY voice and SMS for the cost of many 3rd party solutions pitched to us. Of course, very little systems integration, flexiblity, etc. if use vendor.
  • 10. TWIML https://www.twilio.com/docs/api/twiml Say - Read text to the caller Play - Play an audio file for the caller Dial - Add another party to the call Record - Record the caller's voice Gather - Collect digits the caller types on their keypad Sms - DEPRECATED see Message Send an SMS message during a phone call PS: You can‟t beat the Twilio.com docs/quickstarts and tutorials. Easy to use, code in variety of languages, etc. Development / testing tools are great: test API, logging, usage info, etc.
  • 11. TWIML continued Message – sends a message to a phone number. Hangup - Hang up the call Queue - Add the caller to a queue of callers. Redirect - Redirect call flow to a different TwiML document. Pause - Wait before executing more instructions Reject Decline an incoming call without being billed.
  • 12. TWIMLETS + TWIMBIN 501-xyz-abcd Voice public link: http://twimlbin.com/external/01e3526628c6bc7c SMS public link: http://twimlbin.com/external/1aa2aac5a65de8d5 Combine to create a free, hosted: a. conference line b. with call recording c. two-level SMS send/receive plus bit.ly link to Twitter. d. Google analytics (provided by Twimlbin – can be set at Private link) Basic start on lead generation/conversion tracking …
  • 13. ACH PHONE DIALER 2013 <Say>Thanks, Twilio!</Say> Dramatic improvement. • Virtually no support time; • Scalability; redundancy. • 2% decrease in “No Shows” first 3 months! Internals: • Architecture / rules / Gotchas /lessons learned • 4CHAN rule – protect against hijacking, don‟t let it become evil SPAM machine. • Triggers in API for monitoring real-time. • The “press 1” on voicemail incident. • Static TWIml versus web handler. • READ IT: https://www.twilio.com/docs/security PS: With 1,000 visits/day a 2% decrease is a major increase in utilization, health outcomes and lost revenue.
  • 14. PS: Some interesting Twilio use-cases. The Parkinson‟s project is an excellent example of thinking outside the “this is for phone or text reminders” box! All three have “case studies” at Twilio.com and plenty of other pub online. http://bumblephone.com Protect kid‟s online / phone http://www.wix.com/ CRM/Call center integration http://parkinsonsvoice.org/ (Wow!) Watch their TED video on homepage. Amazing. http://bumblephone.com http://www.wix.com/ http://parkinsonsvoice.org/
  • 15. Twilio CookBook ($18 on Kindle, Amazon ~ $29) • Examples are PHP + MySQL +PDO. Should be easy enough for non-PHP devs to port. • PHP code is elementary for experienced PHP‟ers, but check it out for Twilio ideas. At least the table o‟ contents. Pluralsight 2 hour .NET Twilio course. Good stuff, even for non-.NET folks. Free-trial account can download the MVC code (3 projects worth). Twilio.com: Best source. Go to API docs, Quickstarts, How-To‟s Google: “devin rader twilio for .NET developers” = 7 part series covering libraries, Webforms, MVC, building an IVR… http://offlineclassroom.com/welcome/ • Examples and simple apps that can be extended. • Main page offers OpenVBX training for $20. • Seems like a bargain if you need a kickstart. • If you want to white-label OpenVBX this is a great place to start.
  • 16. OpenVBX - openvbx.org POST SESSION SLIDE • Twilio started, open-source PHP using CodeIgniter. • Mod it, create your own plugins, install community plugins, etc. • Not supported by Twilio, recent development slowed down (GitHub) but being used by a lot of devs as basis for white-labeled customer solutions and you can find support/forum help if work at it. • This is a great place to learn more: PHP, CodeIgniter, Twilio. Search Freelancer.com, etc. you‟ll find requests for paid dev help with OpenVBX and for requests to port the “work flow” features from OpenVBX to other types of applications. My OpenVBX running on Windows Azure Ubuntu VM Make calls, SMS in the browser. Set up IVRs, Conference lines, VOICE/SMS routing, etc. Small business with “big boy” telecom features for customers, employees, etc. Remember offlineclassroom.com training offer.
  • 17. OpenVBX continued: POST SESSION SLIDE Call flows like above can be voice/sms and include routing to individual users or groups in OpenVBX. For example: (step 2) “Call Sales and connect” could ring everyone in group and connect this call to first sales rep that answers.
  • 18. Contact me here if: • You build something (love to hear about it ) • Need help / have questions • Want to hire LinkedIn / Twitter @stewartwhaley Twitter @LogiCurrent stewart@logicurrent.com whaleysa@archildrens.org stewartwhaley@hotmail.com https://www.twilio.com/doers/stewart-whaley