Top Banner
<Say>Hello</Say> Tuesday, June 22, 2010
50

Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

May 12, 2015

Download

Technology

minddog
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

<Say>Hello</Say>

Tuesday, June 22, 2010

Page 2: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

adam ballai

Tuesday, June 22, 2010

Page 3: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

i like...

Tuesday, June 22, 2010

Page 4: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

open source

Tuesday, June 22, 2010

Page 5: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Tuesday, June 22, 2010

Page 6: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Tuesday, June 22, 2010

Page 7: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Tuesday, June 22, 2010

Page 8: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

open source software

Tuesday, June 22, 2010

Page 9: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Tuesday, June 22, 2010

Page 10: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Tuesday, June 22, 2010

Page 11: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

community

Tuesday, June 22, 2010

Page 12: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

pluginsaka modular

Tuesday, June 22, 2010

Page 13: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

OSS in telecom

• Asterisk - Modular

• Freeswitch - Modular

• ... its probably modular

Tuesday, June 22, 2010

Page 14: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

asterisk

• fax

• audio codecs

• conferencing

• sip

• iax

• ... way more than fits on this page

Tuesday, June 22, 2010

Page 15: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

apache httpd

• userdir

• rewrite

• php

• cgi

• ...

Tuesday, June 22, 2010

Page 16: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

anatomy of a voice app

• <Gather> Digits

• <Play> or <Say> to the caller

• <Dial>

• <Sms> message

• <Conference>

Tuesday, June 22, 2010

Page 17: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

business logic

dial plan

asterisk

hardware

sip provider

bandwidth

Tuesday, June 22, 2010

Page 18: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

your web app

powered by OSS

Tuesday, June 22, 2010

Page 19: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

giving back

Tuesday, June 22, 2010

Page 20: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Tuesday, June 22, 2010

Page 21: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

openvbx

Tuesday, June 22, 2010

Page 22: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

openvbx

• Users & Groups

• Drag and Drop Call Flows

• Voicemail

Tuesday, June 22, 2010

Page 23: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

modular

Tuesday, June 22, 2010

Page 24: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

open source

Tuesday, June 22, 2010

Page 25: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

community

Tuesday, June 22, 2010

Page 26: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

built with OSS

• CodeIgniter - http://codeigniter.org

• jQuery - http://jquery.com

• YUI Grids - http://developer.yahoo.com/yui/grids/

Tuesday, June 22, 2010

Page 27: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

how it works

Tuesday, June 22, 2010

Page 28: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Demo

Tuesday, June 22, 2010

Page 29: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

developing on opevnbx

Tuesday, June 22, 2010

Page 30: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

kinda like...

Tuesday, June 22, 2010

Page 31: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

wordpress plugins

Tuesday, June 22, 2010

Page 32: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

the apis

• drag ‘n drop applets

• user and admin pages

• custom navigation

• key value store

• css theming

Tuesday, June 22, 2010

Page 33: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

applets• reusable interface widgets

• three required files

• ui.php

• twiml.php

• applet.json

Tuesday, June 22, 2010

Page 34: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

ui.php

<textarea name="msg"> <?= AppletInstance::getValue('msg') ?></textarea>

Tuesday, June 22, 2010

Page 35: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

twiml.php

<Response> <Say><?= AppletInstance::getValue("msg"); ?></Say></Response>

Tuesday, June 22, 2010

Page 36: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

applet.json

{ "name" : "Messenger", "description" : "Don't shoot the messenger", "type" : "voice"}

Tuesday, June 22, 2010

Page 37: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Pack it up

1. Make a unique directory in /plugins

2. Make the “applets” directory

3. Make a directory for your applet

4. Add ui.php, twiml.php, and applet.json

Tuesday, June 22, 2010

Page 38: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Demo

Tuesday, June 22, 2010

Page 39: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Configuration Page

• create a config.php

• enjoy :)

Tuesday, June 22, 2010

Page 40: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Tuesday, June 22, 2010

Page 41: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Create a page

• Create a script in your plugin directory

• Add a link object your plugin.json

Tuesday, June 22, 2010

Page 42: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

plugin.json

{ "name" : "Demo Plugin", "links" : [{ "script" : "my-page.php", "label" : "My Page", "menu" : "My Menu" }]}

Tuesday, June 22, 2010

Page 43: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Your menu!

Tuesday, June 22, 2010

Page 44: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Your plugin!

Tuesday, June 22, 2010

Page 45: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Demo

Tuesday, June 22, 2010

Page 46: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

http://openvbx.org

Tuesday, June 22, 2010

Page 47: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

Tuesday, June 22, 2010

Page 48: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

fix a bug?

Tuesday, June 22, 2010

Page 49: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

We’re hiring

Want to work on OpenVBX or Twilio?

http://twilio.com/jobs

Tuesday, June 22, 2010

Page 50: Developing Plugins on OpenVBX at Greater San Francisco Bay Area LAMP Group

the future

Tuesday, June 22, 2010