VoIP Drupal
How to build an SMS service
using a local phone number
Tamer Zoubi
Technical Lead at TerraVoz
[email protected]
• 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
VoIP Drupal
sms framework
How things work
VoIP script commands
Dial number
Say text or audio file
Record audio from phone
GetInput from keypad
SendText number, message
RunIvrMenu options
– Goto label
– GotoIf label, condition
– Gosub script name
Hello world
$script = new VoipScript('hello_world');
$script->addSay('hello world');
$script = new VoipScript('voipscript_small_office_ivr');
$script->addSay(t('Welcome to our office hotline.’));
Office hotline
$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->addSay(‘Sales department’);
$script->addGoto(‘hang up’);
$script->addLabel(‘customer support’);
$script->addSay(t(‘Customer support department’));
$script->addGoto(‘hang up’);
$script->addSay(t(‘Our office is open Monday to Friday from 9am to 5pm.’));
$script->addLabel(‘hang up’);
$script->addSay(t(‘Thanks so much for calling our office. Bye bye.'));
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
• Enables the expansion of “community plumbing” beyond the
• 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.
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
VoIP Drupal and SMS Framework
• Build an SMS service
• Use a local phone number in ANY country in
the world, including Croatia.
• Send and receive text messages with your
customers, employees, beneficiaries, or
anyone else
• Drupal 7 (http://drupal.org/download)
• SMS Framework
• Envaya SMS
• VoIP Drupal
• Envaya Android App
Configuring EnvayaSMS
Configuring Drupal side
• TerraVoz is looking for highly energetic parttime developers to join our team.
• Telecommute from your home.
• Apply at http://terravoz.org/careers
Useful links
• Source code:
• General documentation:
• API information:
• Sandbox: http://voipdrupal.org
• Discussion group:
Thank you!