Twitter to Call

This mashup application is a Twitter (http://twitter.com) follower that uses updates and/or direct
messages to place BroadWorks-specific commands over the Xsi.  Twitter publishes its own API which applications may use.  The Twitter to Call application listens for updates, recognizes certain
keywords in the text and then issues Xsi commands.  For example, a twitter message, “Call
7034057285”, will issue a Xsi new call command to a BroadWorks-based VoIP system.

Benefits

Twitter is a free, internet-based messaging system widely used for social networking and/or to power social networking applications.  A twitter message/status change, aka ‘tweet’ can be sent via a SMS from umpteen websites, such as Facebook, etc, and many desktop applications as well.  Using this internet-based system as a way to access and/or control BroadWorks subscriber services demonstrates how simply someone can use the Xtended Services Interface via a quintessential Web 2.0 system.

The possibilities of this concept are huge; imagine every available Xsi command that can be invoked via a SMS or a quick post on a website.  This opens up possibilities where subscribers can change their service settings where and when they choose.  A call can be placed via a SMS.

Design

The Twitter to Call application is a Java application, written to periodically check Twitter accounts for messages.  This periodic checking is done via the Twitter RESTful API.  Once the application reads the “Call” keyword in a message, it takes the number or userid given and issues a click-to-dial Xsi command to BroadWorks.  When used in conjunction with either the BroadWorks Anywhere or Remote Office functionality offered by BroadWorks, this click-to-dial command causes BroadWorks to call a configured mobile number (in this example, the mobile phone sending the SMS is also configured as a BroadWorks Anywhere location).  Answering this incoming call from BroadWorks tells BroadWorks to place the call to the number/userid identified in the ‘tweet’.

There is no visual page/GUI for this application; it is a mashup running behind in the scenes.  It listens to Twitter accounts and places the corresponding Xsi command.

Most of the work in this application went into determining how to interface with Twitter and threading the application to listen for updates (which, unless one is on a Twitter whitelist, can only be checked once a minute).  The code required to issue the Xsi new call was very minor, it’s a simple Java Http request to issue a POST.

Technical Specifications




Name

Twitter
to Call

Version

1.0

License

TBD

Cost

TBD

Interfaces Used

BroadSoft
Xtended Services Interface: Calls

Commands Used

http://<server>/com.broadsoft.xsi-actions/v1.0/user/<userid>/calls/new/<number>

Protocols Supported

http(s)

Servers Used

BroadWorks
Xtended Services Platform (Xsp)

Development Duration

12
Days