Autumn has been a busy time at Twilio, and we’ve launched lots of great new features like Twilio Connect for Tenants, Client Presence and International Phone Numbers.
OpenVBX 1.1 adds support for these features plus a host of other changes and fixes around TwiML features, user management, API communications and overall usability. We’ll touch on some of the major points here.
International Number Support
With the launch of International Number support at Twilio you can now purchase Local & Toll Free/Freephone numbers from all of Twilio’s supported countries, currently the US, UK and Canada. Poland, France, Portugal, Austria and Denmark are also launching in Beta and 11 more countries are planned for launch before the end of the year.
SMS is not yet supported with international numbers, but once it becomes available OpenVBX will automatically allow you to text out using your UK telephone numbers.
You can set your default country for purchasing numbers from Settings > System Config. This controls the initial country selected when clicking the “Add Number” button in the Numbers section.
When the 1.1 Preview first started we included support for Twilio Connect & Client Presence. This support has been tested and refined and is ready for use.
With Twilio Connect you can now provide hosted multitenant OpenVBX for your clients but have their Twilio account usage be billed directly by Twilio. This frees you up to build your app, not a billing solution. Twilio Connect is modeled on OAuth: New tenants are directed to sign into or create a Twilio account and authorize your OpenVBX instance to use it. Once they’ve done so, OpenVBX will make all API calls on behalf of that tenant using the tenant’s Twilio account rather than your account. At any time the client can revoke access to OpenVBX, which puts their OpenVBX account on hold until they come back and reauthorize it through Connect.
To enable Twilio Connect for your OpenVBX install, you’ll need to set up a Connect Application in your Twilio Account. Log in to your Twilio Account, click on Apps in the menu bar, then click on the Connect Apps tab.
When creating your application use these settings:
- Friendly Name
App name shown to the tenant when they are asked to authorize the App.
- Company Name & Description
Optional. Description shown to the tenant when they are asked to authorize the App.
- Homepage URL & Authorize URL
The full url to your web-root. ie: http://example.org
These will be updated during the install process.
- Deauthorize URL
This will be updated during the install process.
- Access Required
Select “Read all account data” & “Charge account for usage”
Once the Connect App is created, copy the App Sid (the number starting with “CN”) and enter it in to the Connect Settings in the OpenVBX Settings > Twilio Account section of your OpenVBX install. New tenants can now be set up to use Twilio Connect.
The changes to the Dialer that started in the Preview have now been updated to be more compact and make it easier to place calls quickly.
The preferences for choosing the caller-id and the device used for the call have moved to drawer that can be minimized when not needed. OpenVBX now remembers those settings, even if you log out or log in from a different browser.
If you have more than one user in OpenVBX, the dialer shows you the other users to provide a fast method to dial other people in your organization. When dialing other users, the information gathered from Twilio Presence determines whether to try to contact that user in their browser or via a traditional phone.
Per Tenant Preferences
Some of the most requested feature requests we’ve gotten have been around adding the ability to control TwiML features in OpenVBX. Open VBX 1.1 now allows each tenant control over the following features via the Settings > System Config section:
- Default Country for Purchasing Numbers: The default country that will be selected when opening the purchase number dialog.
- Voice: The voice which text is converted to speech. Choices are either Man or Woman.
- Voice Language: The voice language that is used in text to speech conversion. Choices are British English, English, French, German and Spanish.
- Voicemail Transcriptions: Transcription of voicemails can now be turned on and off on a per tenant basis.
These settings are per tenant and effect all TwiML generated by OpenVBX.
Though relatively minor in scope, the changes made to the Users screen help make OpenVBX much easier to configure. For starters users are now listed alphabetically by last name to make finding the user you’re looking for much easier. Administrators are also labeled as such in the list for easy identification.
Groups are now sortable. Since the order of the group determines who gets called first the ability to order the group makes it very easy to rotate the primary group contact without having to add or remove users from the group. Simply drag the users to reorder them and the new order will be automatically saved.
Using Minify for Asset Delivery
With Minify we lose a bit of the optimization we got by using Google’s Closure tool to compile the assets, but in return we get an easier way to manage the header delivery that allows us to control how browsers receive and cache OpenVBX’s assets.
For custom development, the assets config file located at
assets/min/groupsConfig.php will look for a config file at
Caches are cleared automatically whenever the upgrade routine is run and also when the system settings are saved.
Other Updates & Fixes
- UPGRADE INSTRUCTIONS! Upgrade instructions are also included with the OpenVBX install. You can find the file
UPGRADE.markdownin the root level of the OpenVBX download.
- OpenVBX now uses the updated Services Twilio API Library. More information on this change can be found in our blog post about the new library.
- OpenVBX now uses the native
sequential="true"for dialing multiple numbers or users in sequence.
- OpenVBX now requires PHP 5.2 and will not install/upgrade unless this requirement is met.
- OpenVBX now detects the availability and uses the PHP MySQLi driver. Database debug is now turned off by default.
- Added Gravatar support in theme options. Why enable Gravatars? Why not?
- Various CSS compatibility tweaks for better CSS standards compatibility.
- Various performance and security fixes and updates.