際際滷

際際滷Share a Scribd company logo
VoIP Drupal
building sites that answer calls,
send SMS, and more
Tamer Zoubi
tamerzg@gmail.com
History
 The first beta version of VoIP Drupal was
launched in March 2011.
 20+ contrib modules until now
 We are currently promoting the platform and
building more systems on top of it.
 Supported by TerraVoz, a spin-off from the
MIT Media Lab
VoIP Drupal is
A software platform that enables Drupal sites to
Make and answer phone calls
Play and record audio messages
Send and receive SMS
Organize conference calls
Implement voice menus and call routing
Run polls, surveys, and many more things
 The goal of VoIP Drupal is to provide a
common API and scripting system that
interoperate with popular Internet-telephony
servers (Asterisk, FreeSwitch, Tropo, Twilio,
etc)
 Dramatically reduces the learning and
development costs associated with the
construction of unified communication
systems that combine voice and text
technologies together.
VoIP Drupal
modules
How things work
VoIP script commands
addSay() , to play audio from URL or read text-to-speech text
addRecord(), to record audio input from user
addGetInput(), to read input from the telephone keypad
addRunIvrMenu(), to execute interactive voice response menu
addBeep(), to play beep sound
addJoinConference(), to connect the current call to the specified
conference room
addGoto(), addGotoIf(), addGoSub(), to control flow of script
Further modules can easily extend script commands like Tropos
addGetVoiceInput() to read input using speech recognition.
$script = new VoipScript('hello_world');
$script->addSay('hello world');
$script->addHangup();
Hello world
$script = new VoipScript('voipscript_small_office_ivr');
$script->addSay(t('Welcome to our office hotline.));
$script->addLabel(office_menu);
$options_menu = t(For sales, dial 1. For customer support, dial 2. For hours of operation, dial 3. To hang up, dial
the star key.);
$input_options = array(
1 => sales,
2 => customer support,
3 => hours,
* => hang up,
I => hang up,
t => hang up
);
$invalid_msg = t(Invalid option selected.);
$script->addRunIvrMenu($options_menu, $input_options, $invalid_msg);
$script->addGoto(%ivr_option_selected);
$script->addLabel(sales);
$script->addSay(Sales department);
$script->addGoto(hang up);
$script->addLabel(customer support);
$script->addSay(t(Customer support department));
$script->addGoto(hang up);
$script->addLabel(hours);
$script->addSay(t(Our office is open Monday to Friday from 9am to 5pm.));
$script->addGoto(office_menu);
$script->addLabel(hang up);
$script->addSay(t(Thanks so much for calling our office. Bye bye.'));
$script->addHangup();
Office hotline
Visual VoIP Drupal
Key benefits of the platform
 Facilitates the construction of unified communications systems
integrating SMS, email, web, and voice
 Makes Drupal accessible from any phone  no data plan
required!
 Enables the expansion of community plumbing beyond the
web
 Is open source and free  you are in control
Benefits for administrators
 Easy installation and configuration  no programming required
 Fully customizable  enable only the features you need
 Run as part of the Drupal system itself
 Enable access to VoIP Drupal features using roles and permissions
 Assign Rules, Actions and Triggers
 Enhance user interaction with ready-to-use audio blogs, click-to-call fields,
phone recorders, audio announcements, etc.
 Visual programming language for non-coders.
(http://drupal.org/project/vvd)
Benefits for developers
 Well defined API that can be extended to other VoIP services
 20+ sample scripts that can be customized
 20+ modules that already implement common functionality 
no need to reinvent the wheel
 Simple, yet powerful PHP-like scripting language with a short
learning curve
 Easily switch to another VoIP provider without porting your
applications.
Demo
 How to configure VoIP Drupal with one of
VoIP providers (Twilio)
 How to write your first VoIP Script
 How to receive your first VoIP Drupal call
Ideas
 Go Out to Vote campaigns
 2-1-1 and 3-1-1 community hotlines
 Call centers
 Phone- and SMS-based surveys
 Group communication
 Story recording / playback
 Audio speed dating services
 Language training
 Audio tours
 Adventure games
 Interactive community radio programs
 Emergency announcements
 And much more!
How to contribute
 Migrate VoIP Drupal to 8.x
 Many of contrib modules are still 6.x
https://drupal.org/node/1078790
 Come up with new out of box solutions
 Explore and spread the word
VoIP Drupal Framework DrupalCon Prague
 Source code:
http://drupal.org/project/voipdrupal
 General documentation:
http://drupal.org/node/1078710
 API information:
http://drupal.org/node/1155572
 Sandbox: http://voipdrupal.org
 Discussion group:
http://groups.drupal.org/voip-drupal
Useful links
Thank you for listening!

More Related Content

Similar to VoIP Drupal Framework DrupalCon Prague (20)

Promo Voip Drupal Hands On Experience Webinar
Promo Voip Drupal Hands On Experience WebinarPromo Voip Drupal Hands On Experience Webinar
Promo Voip Drupal Hands On Experience Webinar
Micky Metts
#1 Basic VoIP Drupal Hands On Experience Webinar
#1 Basic VoIP Drupal Hands On Experience Webinar#1 Basic VoIP Drupal Hands On Experience Webinar
#1 Basic VoIP Drupal Hands On Experience Webinar
Micky Metts
Short VoIP Drupal Introduction - What is it?
Short VoIP Drupal Introduction - What is it?Short VoIP Drupal Introduction - What is it?
Short VoIP Drupal Introduction - What is it?
Micky Metts
Getting Started with Twilio
Getting Started with TwilioGetting Started with Twilio
Getting Started with Twilio
Michael Kimsal
Globe Labs - Voice API (Developer Preview)
Globe Labs - Voice API (Developer Preview)Globe Labs - Voice API (Developer Preview)
Globe Labs - Voice API (Developer Preview)
globelabs
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
Cisco DevNet
Tropo Presentation
Tropo PresentationTropo Presentation
Tropo Presentation
Mark Headd
Otra forma de hacer aplicaciones de telefon鱈a
Otra forma de hacer aplicaciones de telefon鱈aOtra forma de hacer aplicaciones de telefon鱈a
Otra forma de hacer aplicaciones de telefon鱈a
Martin Perez
UC Expo 2018 - Microsoft Theatre 17/05/18 - Cloud Video Interop for Microsoft...
UC Expo 2018 - Microsoft Theatre 17/05/18 - Cloud Video Interop for Microsoft...UC Expo 2018 - Microsoft Theatre 17/05/18 - Cloud Video Interop for Microsoft...
UC Expo 2018 - Microsoft Theatre 17/05/18 - Cloud Video Interop for Microsoft...
Graham Walsh
Greach 2011 - Building Telephony Apps with Groovy and Grails
Greach 2011 - Building Telephony Apps with Groovy and GrailsGreach 2011 - Building Telephony Apps with Groovy and Grails
Greach 2011 - Building Telephony Apps with Groovy and Grails
greach_es
Pwning Your Phone with Adhearsion and Asterisk
Pwning Your Phone with Adhearsion and AsteriskPwning Your Phone with Adhearsion and Asterisk
Pwning Your Phone with Adhearsion and Asterisk
jicksta
Call Center Software for Telesales & Customer Service
Call Center Software for Telesales & Customer ServiceCall Center Software for Telesales & Customer Service
Call Center Software for Telesales & Customer Service
LeadDesk
Tropo Presentation at the Telecom API Workshop
Tropo Presentation at the Telecom API WorkshopTropo Presentation at the Telecom API Workshop
Tropo Presentation at the Telecom API Workshop
Alan Quayle
Real time voice call integration - Confoo 2012
Real time voice call integration - Confoo 2012Real time voice call integration - Confoo 2012
Real time voice call integration - Confoo 2012
Michael Peacock
[Carius] Skype Online, Teams, and PSTN
[Carius] Skype Online, Teams, and PSTN[Carius] Skype Online, Teams, and PSTN
[Carius] Skype Online, Teams, and PSTN
European Collaboration Summit
Internationalizing The New York Times
Internationalizing The New York TimesInternationalizing The New York Times
Internationalizing The New York Times
Scott Taylor
Benefits of VoIP
Benefits of VoIPBenefits of VoIP
Benefits of VoIP
pascom
Hackathon Poste Mobile 2016 Cisco Roma @TAG TalentGardenIT
Hackathon Poste Mobile 2016 Cisco Roma @TAG TalentGardenIT Hackathon Poste Mobile 2016 Cisco Roma @TAG TalentGardenIT
Hackathon Poste Mobile 2016 Cisco Roma @TAG TalentGardenIT
Cisco DevNet
Twilio connector
Twilio connectorTwilio connector
Twilio connector
Madhu Dileep
Twilio using Groovy Grails
Twilio using Groovy GrailsTwilio using Groovy Grails
Twilio using Groovy Grails
Ali Tanwir
Promo Voip Drupal Hands On Experience Webinar
Promo Voip Drupal Hands On Experience WebinarPromo Voip Drupal Hands On Experience Webinar
Promo Voip Drupal Hands On Experience Webinar
Micky Metts
#1 Basic VoIP Drupal Hands On Experience Webinar
#1 Basic VoIP Drupal Hands On Experience Webinar#1 Basic VoIP Drupal Hands On Experience Webinar
#1 Basic VoIP Drupal Hands On Experience Webinar
Micky Metts
Short VoIP Drupal Introduction - What is it?
Short VoIP Drupal Introduction - What is it?Short VoIP Drupal Introduction - What is it?
Short VoIP Drupal Introduction - What is it?
Micky Metts
Getting Started with Twilio
Getting Started with TwilioGetting Started with Twilio
Getting Started with Twilio
Michael Kimsal
Globe Labs - Voice API (Developer Preview)
Globe Labs - Voice API (Developer Preview)Globe Labs - Voice API (Developer Preview)
Globe Labs - Voice API (Developer Preview)
globelabs
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
Cisco DevNet
Tropo Presentation
Tropo PresentationTropo Presentation
Tropo Presentation
Mark Headd
Otra forma de hacer aplicaciones de telefon鱈a
Otra forma de hacer aplicaciones de telefon鱈aOtra forma de hacer aplicaciones de telefon鱈a
Otra forma de hacer aplicaciones de telefon鱈a
Martin Perez
UC Expo 2018 - Microsoft Theatre 17/05/18 - Cloud Video Interop for Microsoft...
UC Expo 2018 - Microsoft Theatre 17/05/18 - Cloud Video Interop for Microsoft...UC Expo 2018 - Microsoft Theatre 17/05/18 - Cloud Video Interop for Microsoft...
UC Expo 2018 - Microsoft Theatre 17/05/18 - Cloud Video Interop for Microsoft...
Graham Walsh
Greach 2011 - Building Telephony Apps with Groovy and Grails
Greach 2011 - Building Telephony Apps with Groovy and GrailsGreach 2011 - Building Telephony Apps with Groovy and Grails
Greach 2011 - Building Telephony Apps with Groovy and Grails
greach_es
Pwning Your Phone with Adhearsion and Asterisk
Pwning Your Phone with Adhearsion and AsteriskPwning Your Phone with Adhearsion and Asterisk
Pwning Your Phone with Adhearsion and Asterisk
jicksta
Call Center Software for Telesales & Customer Service
Call Center Software for Telesales & Customer ServiceCall Center Software for Telesales & Customer Service
Call Center Software for Telesales & Customer Service
LeadDesk
Tropo Presentation at the Telecom API Workshop
Tropo Presentation at the Telecom API WorkshopTropo Presentation at the Telecom API Workshop
Tropo Presentation at the Telecom API Workshop
Alan Quayle
Real time voice call integration - Confoo 2012
Real time voice call integration - Confoo 2012Real time voice call integration - Confoo 2012
Real time voice call integration - Confoo 2012
Michael Peacock
Internationalizing The New York Times
Internationalizing The New York TimesInternationalizing The New York Times
Internationalizing The New York Times
Scott Taylor
Benefits of VoIP
Benefits of VoIPBenefits of VoIP
Benefits of VoIP
pascom
Hackathon Poste Mobile 2016 Cisco Roma @TAG TalentGardenIT
Hackathon Poste Mobile 2016 Cisco Roma @TAG TalentGardenIT Hackathon Poste Mobile 2016 Cisco Roma @TAG TalentGardenIT
Hackathon Poste Mobile 2016 Cisco Roma @TAG TalentGardenIT
Cisco DevNet
Twilio connector
Twilio connectorTwilio connector
Twilio connector
Madhu Dileep
Twilio using Groovy Grails
Twilio using Groovy GrailsTwilio using Groovy Grails
Twilio using Groovy Grails
Ali Tanwir

Recently uploaded (20)

Large Language Models vs Small Language Models
Large Language Models vs Small Language ModelsLarge Language Models vs Small Language Models
Large Language Models vs Small Language Models
Nathan Bijnens
Redefining Efficiency in AI: The Impact of 1.58-bit LLMs on the Future of Com...
Redefining Efficiency in AI: The Impact of 1.58-bit LLMs on the Future of Com...Redefining Efficiency in AI: The Impact of 1.58-bit LLMs on the Future of Com...
Redefining Efficiency in AI: The Impact of 1.58-bit LLMs on the Future of Com...
Gregor Lyttek
AI and developer obsolescence - BCS 2025.pdf
AI and developer obsolescence - BCS 2025.pdfAI and developer obsolescence - BCS 2025.pdf
AI and developer obsolescence - BCS 2025.pdf
Seb Rose
Global AI Bootcamp 2025 - Sydney - Model Agnostic AI Implementation
Global  AI Bootcamp 2025 - Sydney - Model Agnostic AI ImplementationGlobal  AI Bootcamp 2025 - Sydney - Model Agnostic AI Implementation
Global AI Bootcamp 2025 - Sydney - Model Agnostic AI Implementation
Anupam Ranku
UiPath Automation Developer Associate Training Series 2025 - Session 6
UiPath Automation Developer Associate Training Series 2025 - Session 6UiPath Automation Developer Associate Training Series 2025 - Session 6
UiPath Automation Developer Associate Training Series 2025 - Session 6
DianaGray10
AIs Transformative Role in Cloud Computing
AIs Transformative Role in Cloud ComputingAIs Transformative Role in Cloud Computing
AIs Transformative Role in Cloud Computing
Expeed Software
UiPath NY AI Series: Session 2: UiPath Generative AI Capabilities
UiPath NY AI Series: Session 2: UiPath Generative AI CapabilitiesUiPath NY AI Series: Session 2: UiPath Generative AI Capabilities
UiPath NY AI Series: Session 2: UiPath Generative AI Capabilities
DianaGray10
Ensuring AI Trust and Transparency with Inclusive Design
Ensuring AI Trust and Transparency with Inclusive Design Ensuring AI Trust and Transparency with Inclusive Design
Ensuring AI Trust and Transparency with Inclusive Design
Ted Drake
Salesforce Welly March 2025User Group Meeting
Salesforce Welly March 2025User Group MeetingSalesforce Welly March 2025User Group Meeting
Salesforce Welly March 2025User Group Meeting
Anna Loughnan Colquhoun
Best Crane Manufacturers in India Industry Leaders & Innovations.pdf
Best Crane Manufacturers in India Industry Leaders & Innovations.pdfBest Crane Manufacturers in India Industry Leaders & Innovations.pdf
Best Crane Manufacturers in India Industry Leaders & Innovations.pdf
Hercules Hoists
Let's Build a House Price Predictor with Google Cloud!.pdf
Let's Build a House Price Predictor with Google Cloud!.pdfLet's Build a House Price Predictor with Google Cloud!.pdf
Let's Build a House Price Predictor with Google Cloud!.pdf
infogdgmi
Ultra Accelerator Link (UALink): Accelerator Scale-up Network
Ultra Accelerator Link (UALink): Accelerator Scale-up NetworkUltra Accelerator Link (UALink): Accelerator Scale-up Network
Ultra Accelerator Link (UALink): Accelerator Scale-up Network
AI Infra Forum
Raport-trendy-technologia-FTSG_2025_TR_FINAL_LINKED
Raport-trendy-technologia-FTSG_2025_TR_FINAL_LINKEDRaport-trendy-technologia-FTSG_2025_TR_FINAL_LINKED
Raport-trendy-technologia-FTSG_2025_TR_FINAL_LINKED
agatadrynko
Fran巽ais Patch Tuesday - Mars
Fran巽ais Patch Tuesday - MarsFran巽ais Patch Tuesday - Mars
Fran巽ais Patch Tuesday - Mars
Ivanti
UIUX Design Course in Coimbatore with Internship
UIUX Design Course in Coimbatore with InternshipUIUX Design Course in Coimbatore with Internship
UIUX Design Course in Coimbatore with Internship
Nextskill Technologies
[QUICK TALK] "Why Some Teams Grow Better Under Pressure", Oleksandr Marchenko...
[QUICK TALK] "Why Some Teams Grow Better Under Pressure", Oleksandr Marchenko...[QUICK TALK] "Why Some Teams Grow Better Under Pressure", Oleksandr Marchenko...
[QUICK TALK] "Why Some Teams Grow Better Under Pressure", Oleksandr Marchenko...
Fwdays
"Conflicts within a Team: Not an Enemy, But an Opportunity for Growth", Orest...
"Conflicts within a Team: Not an Enemy, But an Opportunity for Growth", Orest..."Conflicts within a Team: Not an Enemy, But an Opportunity for Growth", Orest...
"Conflicts within a Team: Not an Enemy, But an Opportunity for Growth", Orest...
Fwdays
Unified Observability - Alkin Tezuysal - FOSSASIA Summit March 2025 .pdf
Unified Observability - Alkin Tezuysal - FOSSASIA Summit  March 2025 .pdfUnified Observability - Alkin Tezuysal - FOSSASIA Summit  March 2025 .pdf
Unified Observability - Alkin Tezuysal - FOSSASIA Summit March 2025 .pdf
Alkin Tezuysal
The Memory Wall in AI - A Crisis We Must Solve
The Memory Wall in AI - A Crisis We Must SolveThe Memory Wall in AI - A Crisis We Must Solve
The Memory Wall in AI - A Crisis We Must Solve
AI Infra Forum
Comprehensive Guide to Ansible Roles - RHCE
Comprehensive Guide to Ansible Roles - RHCEComprehensive Guide to Ansible Roles - RHCE
Comprehensive Guide to Ansible Roles - RHCE
RHCSA Guru
Large Language Models vs Small Language Models
Large Language Models vs Small Language ModelsLarge Language Models vs Small Language Models
Large Language Models vs Small Language Models
Nathan Bijnens
Redefining Efficiency in AI: The Impact of 1.58-bit LLMs on the Future of Com...
Redefining Efficiency in AI: The Impact of 1.58-bit LLMs on the Future of Com...Redefining Efficiency in AI: The Impact of 1.58-bit LLMs on the Future of Com...
Redefining Efficiency in AI: The Impact of 1.58-bit LLMs on the Future of Com...
Gregor Lyttek
AI and developer obsolescence - BCS 2025.pdf
AI and developer obsolescence - BCS 2025.pdfAI and developer obsolescence - BCS 2025.pdf
AI and developer obsolescence - BCS 2025.pdf
Seb Rose
Global AI Bootcamp 2025 - Sydney - Model Agnostic AI Implementation
Global  AI Bootcamp 2025 - Sydney - Model Agnostic AI ImplementationGlobal  AI Bootcamp 2025 - Sydney - Model Agnostic AI Implementation
Global AI Bootcamp 2025 - Sydney - Model Agnostic AI Implementation
Anupam Ranku
UiPath Automation Developer Associate Training Series 2025 - Session 6
UiPath Automation Developer Associate Training Series 2025 - Session 6UiPath Automation Developer Associate Training Series 2025 - Session 6
UiPath Automation Developer Associate Training Series 2025 - Session 6
DianaGray10
AIs Transformative Role in Cloud Computing
AIs Transformative Role in Cloud ComputingAIs Transformative Role in Cloud Computing
AIs Transformative Role in Cloud Computing
Expeed Software
UiPath NY AI Series: Session 2: UiPath Generative AI Capabilities
UiPath NY AI Series: Session 2: UiPath Generative AI CapabilitiesUiPath NY AI Series: Session 2: UiPath Generative AI Capabilities
UiPath NY AI Series: Session 2: UiPath Generative AI Capabilities
DianaGray10
Ensuring AI Trust and Transparency with Inclusive Design
Ensuring AI Trust and Transparency with Inclusive Design Ensuring AI Trust and Transparency with Inclusive Design
Ensuring AI Trust and Transparency with Inclusive Design
Ted Drake
Salesforce Welly March 2025User Group Meeting
Salesforce Welly March 2025User Group MeetingSalesforce Welly March 2025User Group Meeting
Salesforce Welly March 2025User Group Meeting
Anna Loughnan Colquhoun
Best Crane Manufacturers in India Industry Leaders & Innovations.pdf
Best Crane Manufacturers in India Industry Leaders & Innovations.pdfBest Crane Manufacturers in India Industry Leaders & Innovations.pdf
Best Crane Manufacturers in India Industry Leaders & Innovations.pdf
Hercules Hoists
Let's Build a House Price Predictor with Google Cloud!.pdf
Let's Build a House Price Predictor with Google Cloud!.pdfLet's Build a House Price Predictor with Google Cloud!.pdf
Let's Build a House Price Predictor with Google Cloud!.pdf
infogdgmi
Ultra Accelerator Link (UALink): Accelerator Scale-up Network
Ultra Accelerator Link (UALink): Accelerator Scale-up NetworkUltra Accelerator Link (UALink): Accelerator Scale-up Network
Ultra Accelerator Link (UALink): Accelerator Scale-up Network
AI Infra Forum
Raport-trendy-technologia-FTSG_2025_TR_FINAL_LINKED
Raport-trendy-technologia-FTSG_2025_TR_FINAL_LINKEDRaport-trendy-technologia-FTSG_2025_TR_FINAL_LINKED
Raport-trendy-technologia-FTSG_2025_TR_FINAL_LINKED
agatadrynko
Fran巽ais Patch Tuesday - Mars
Fran巽ais Patch Tuesday - MarsFran巽ais Patch Tuesday - Mars
Fran巽ais Patch Tuesday - Mars
Ivanti
UIUX Design Course in Coimbatore with Internship
UIUX Design Course in Coimbatore with InternshipUIUX Design Course in Coimbatore with Internship
UIUX Design Course in Coimbatore with Internship
Nextskill Technologies
[QUICK TALK] "Why Some Teams Grow Better Under Pressure", Oleksandr Marchenko...
[QUICK TALK] "Why Some Teams Grow Better Under Pressure", Oleksandr Marchenko...[QUICK TALK] "Why Some Teams Grow Better Under Pressure", Oleksandr Marchenko...
[QUICK TALK] "Why Some Teams Grow Better Under Pressure", Oleksandr Marchenko...
Fwdays
"Conflicts within a Team: Not an Enemy, But an Opportunity for Growth", Orest...
"Conflicts within a Team: Not an Enemy, But an Opportunity for Growth", Orest..."Conflicts within a Team: Not an Enemy, But an Opportunity for Growth", Orest...
"Conflicts within a Team: Not an Enemy, But an Opportunity for Growth", Orest...
Fwdays
Unified Observability - Alkin Tezuysal - FOSSASIA Summit March 2025 .pdf
Unified Observability - Alkin Tezuysal - FOSSASIA Summit  March 2025 .pdfUnified Observability - Alkin Tezuysal - FOSSASIA Summit  March 2025 .pdf
Unified Observability - Alkin Tezuysal - FOSSASIA Summit March 2025 .pdf
Alkin Tezuysal
The Memory Wall in AI - A Crisis We Must Solve
The Memory Wall in AI - A Crisis We Must SolveThe Memory Wall in AI - A Crisis We Must Solve
The Memory Wall in AI - A Crisis We Must Solve
AI Infra Forum
Comprehensive Guide to Ansible Roles - RHCE
Comprehensive Guide to Ansible Roles - RHCEComprehensive Guide to Ansible Roles - RHCE
Comprehensive Guide to Ansible Roles - RHCE
RHCSA Guru

VoIP Drupal Framework DrupalCon Prague

  • 1. VoIP Drupal building sites that answer calls, send SMS, and more Tamer Zoubi tamerzg@gmail.com
  • 2. History The first beta version of VoIP Drupal was launched in March 2011. 20+ contrib modules until now We are currently promoting the platform and building more systems on top of it. Supported by TerraVoz, a spin-off from the MIT Media Lab
  • 3. VoIP Drupal is A software platform that enables Drupal sites to Make and answer phone calls Play and record audio messages Send and receive SMS Organize conference calls Implement voice menus and call routing Run polls, surveys, and many more things
  • 4. The goal of VoIP Drupal is to provide a common API and scripting system that interoperate with popular Internet-telephony servers (Asterisk, FreeSwitch, Tropo, Twilio, etc) Dramatically reduces the learning and development costs associated with the construction of unified communication systems that combine voice and text technologies together.
  • 7. VoIP script commands addSay() , to play audio from URL or read text-to-speech text addRecord(), to record audio input from user addGetInput(), to read input from the telephone keypad addRunIvrMenu(), to execute interactive voice response menu addBeep(), to play beep sound addJoinConference(), to connect the current call to the specified conference room addGoto(), addGotoIf(), addGoSub(), to control flow of script Further modules can easily extend script commands like Tropos addGetVoiceInput() to read input using speech recognition.
  • 8. $script = new VoipScript('hello_world'); $script->addSay('hello world'); $script->addHangup(); Hello world
  • 9. $script = new VoipScript('voipscript_small_office_ivr'); $script->addSay(t('Welcome to our office hotline.)); $script->addLabel(office_menu); $options_menu = t(For sales, dial 1. For customer support, dial 2. For hours of operation, dial 3. To hang up, dial the star key.); $input_options = array( 1 => sales, 2 => customer support, 3 => hours, * => hang up, I => hang up, t => hang up ); $invalid_msg = t(Invalid option selected.); $script->addRunIvrMenu($options_menu, $input_options, $invalid_msg); $script->addGoto(%ivr_option_selected); $script->addLabel(sales); $script->addSay(Sales department); $script->addGoto(hang up); $script->addLabel(customer support); $script->addSay(t(Customer support department)); $script->addGoto(hang up); $script->addLabel(hours); $script->addSay(t(Our office is open Monday to Friday from 9am to 5pm.)); $script->addGoto(office_menu); $script->addLabel(hang up); $script->addSay(t(Thanks so much for calling our office. Bye bye.')); $script->addHangup(); Office hotline
  • 11. Key benefits of the platform Facilitates the construction of unified communications systems integrating SMS, email, web, and voice Makes Drupal accessible from any phone no data plan required! Enables the expansion of community plumbing beyond the web Is open source and free you are in control
  • 12. Benefits for administrators Easy installation and configuration no programming required Fully customizable enable only the features you need Run as part of the Drupal system itself Enable access to VoIP Drupal features using roles and permissions Assign Rules, Actions and Triggers Enhance user interaction with ready-to-use audio blogs, click-to-call fields, phone recorders, audio announcements, etc. Visual programming language for non-coders. (http://drupal.org/project/vvd)
  • 13. Benefits for developers Well defined API that can be extended to other VoIP services 20+ sample scripts that can be customized 20+ modules that already implement common functionality no need to reinvent the wheel Simple, yet powerful PHP-like scripting language with a short learning curve Easily switch to another VoIP provider without porting your applications.
  • 14. Demo How to configure VoIP Drupal with one of VoIP providers (Twilio) How to write your first VoIP Script How to receive your first VoIP Drupal call
  • 15. Ideas Go Out to Vote campaigns 2-1-1 and 3-1-1 community hotlines Call centers Phone- and SMS-based surveys Group communication Story recording / playback Audio speed dating services Language training Audio tours Adventure games Interactive community radio programs Emergency announcements And much more!
  • 16. How to contribute Migrate VoIP Drupal to 8.x Many of contrib modules are still 6.x https://drupal.org/node/1078790 Come up with new out of box solutions Explore and spread the word
  • 18. Source code: http://drupal.org/project/voipdrupal General documentation: http://drupal.org/node/1078710 API information: http://drupal.org/node/1155572 Sandbox: http://voipdrupal.org Discussion group: http://groups.drupal.org/voip-drupal Useful links
  • 19. Thank you for listening!

Editor's Notes

  • #3: First of all let me introduce you a bit history behind Voip drupal framework. In march 2011. we issued first D6 beta version. Even if it is a beta its stable to use on production servers. 2012. Until now there are 20+ contrib modules that integrate with VoIP Drupal framework. Recently D7 version released. Voip drupal framework is sponsored by MIT media lab and since couple of months ago it got its own spin off company called TerraVoz.
  • #6: Here we can see Voip drupal modular structure. On the lowest levels there are implementations of different VoIP providers. Currently we support Twilio/Tropo /Plivo Cloud and recently we added support for KooKoo which gives you voip services in cloud. Calls starts from 1c/min, dedicated numbers from $1/month, and you can get local numbers in more than 30 countries. Fourth provider we support is Plivo Framework, which is open source framework between PHP and Freeswitch, which you install on your server. In the middle we have voip module which is the unified API between providers and contributed modules. At top we have contributed modules which is actual implementation of different use cases using the VoIP drupal framework. As a developer when you write a module, you dont need to know individual specifications of different VoIP providers.
  • #7: Here we have our web server with Drupal + Voip drupal framework installed. Usually users access our server through web browser from their computer, tablet or smart phone. VoIP Drupal enables access to other users through regular telephone line or mobile phone without browser or internet. That happens through Voip provider like Twilio/Tropo, which provides us with outbound/inbound voice calls, dedicated numbers and SMS. Voip drupal framework serves content to user via voip scripts. So that you know, some of these services cost $1/line/month get a line in a couple of seconds For the countries that are not covered, there are several alternatives. One of them is Plivo/FreeSWITCH
  • #8: VoIP script is set of elements and commands which developer can use to decide what will user hear through the phone or see in text message. With 10-15 commands we can do all sorts of cool things.
  • #9: Example of simple scriptHello world Similar to PHP Developer needs just couple of hours to learn the syntax. Dont expect developers to have to spend more than a couple of hours to get a good sense of how things work
  • #10: More advanced example of what we can do, such as this Voice menu. VoIP Drupal comes with about 20 sample scripts Inside those commands you can call any Drupal or PHP function
  • #11: VVD module: http://drupal.org/project/vvd For beginners
  • #14: For programmers no need to know individual Voip provider APIs.
  • #16: Some of the ideas what we can build with VoIP Drupal framework Lets discuss some ideas for VoIP Drupal. How do you see VoIP Drupal helps you in your project? What features would you like to see in next version?
  • #17: We need your help
  • #19: I ask you to join voip drupal group, so you could get all latest news and invitations to many free webinars related to this framework. On voipdrupal.org you can try everything we talked about, without the need to install at your own server.