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

Post on 12-May-2015

1978 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

Transcript

<Say>Hello</Say>

Tuesday, June 22, 2010

adam ballai

Tuesday, June 22, 2010

i like...

Tuesday, June 22, 2010

open source

Tuesday, June 22, 2010

Tuesday, June 22, 2010

Tuesday, June 22, 2010

Tuesday, June 22, 2010

open source software

Tuesday, June 22, 2010

Tuesday, June 22, 2010

Tuesday, June 22, 2010

community

Tuesday, June 22, 2010

pluginsaka modular

Tuesday, June 22, 2010

OSS in telecom

• Asterisk - Modular

• Freeswitch - Modular

• ... its probably modular

Tuesday, June 22, 2010

asterisk

• fax

• audio codecs

• conferencing

• sip

• iax

• ... way more than fits on this page

Tuesday, June 22, 2010

apache httpd

• userdir

• rewrite

• php

• cgi

• ...

Tuesday, June 22, 2010

anatomy of a voice app

• <Gather> Digits

• <Play> or <Say> to the caller

• <Dial>

• <Sms> message

• <Conference>

Tuesday, June 22, 2010

business logic

dial plan

asterisk

hardware

sip provider

bandwidth

Tuesday, June 22, 2010

your web app

powered by OSS

Tuesday, June 22, 2010

giving back

Tuesday, June 22, 2010

Tuesday, June 22, 2010

openvbx

Tuesday, June 22, 2010

openvbx

• Users & Groups

• Drag and Drop Call Flows

• Voicemail

Tuesday, June 22, 2010

modular

Tuesday, June 22, 2010

open source

Tuesday, June 22, 2010

community

Tuesday, June 22, 2010

built with OSS

• CodeIgniter - http://codeigniter.org

• jQuery - http://jquery.com

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

Tuesday, June 22, 2010

how it works

Tuesday, June 22, 2010

Demo

Tuesday, June 22, 2010

developing on opevnbx

Tuesday, June 22, 2010

kinda like...

Tuesday, June 22, 2010

wordpress plugins

Tuesday, June 22, 2010

the apis

• drag ‘n drop applets

• user and admin pages

• custom navigation

• key value store

• css theming

Tuesday, June 22, 2010

applets• reusable interface widgets

• three required files

• ui.php

• twiml.php

• applet.json

Tuesday, June 22, 2010

ui.php

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

Tuesday, June 22, 2010

twiml.php

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

Tuesday, June 22, 2010

applet.json

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

Tuesday, June 22, 2010

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

Demo

Tuesday, June 22, 2010

Configuration Page

• create a config.php

• enjoy :)

Tuesday, June 22, 2010

Tuesday, June 22, 2010

Create a page

• Create a script in your plugin directory

• Add a link object your plugin.json

Tuesday, June 22, 2010

plugin.json

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

Tuesday, June 22, 2010

Your menu!

Tuesday, June 22, 2010

Your plugin!

Tuesday, June 22, 2010

Demo

Tuesday, June 22, 2010

http://openvbx.org

Tuesday, June 22, 2010

Tuesday, June 22, 2010

fix a bug?

Tuesday, June 22, 2010

We’re hiring

Want to work on OpenVBX or Twilio?

http://twilio.com/jobs

Tuesday, June 22, 2010

the future

Tuesday, June 22, 2010

top related