Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History

<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[

Zend Framework: Zend_Service_OrangeApi Component Proposal

Proposed Component Name Zend_Service_OrangeApi
Developer Notes http://framework.zend.com/wiki/display/ZFDEV/Zend_Service_OrangeApi
Proposers Laurent ARTUSIO
Julien FILLIARD
Zend Liaison TBD
Revision 0.1 - 23 June 2010 : Draft. (wiki revision: 29)

Table of Contents

1. Overview

Orange API provide to web developers and integrators, a set of web services allowing to easily integrate telecom services into web sites and applications.
The Orange APIs, available on Orange APIs, are currently the following :

  • sending and receiving text messages services (Send SMS) to any operator worldwide and multimedia messages (send MMS) to Orange mobile phones.
  • get the location of Orange mobile phones, for any device
  • call-control service
  • conference management
  • interactive vocal services

The Zend_Service_OrangeApi components provides a clean and simple interface to the » Orange APIs and additionally offers functionality
to improve handling and performance.

In order to make such APIs easy to use for Zend developers, Orange supplies a core Zend component.

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

  • This component wraps Orange APis in a raw manner (i.e parameters names, methods names, returned values)
  • This component is as exhaustive as possible, regarding APIs functionalities.
  • This component does not include parameters validity control, it will be done on the server side.
  • This component relay server-side returned errors by throwing exceptions, containing errors codes and errors messages.
  • This component allow subclassing, for any useful purpose.

4. Dependencies on Other Framework Components

  • Zend_Http_Client_Adapter_Proxy
  • Zend_Rest_Client
  • Zend_Service_Exception

5. Theory of Operation

Every Orange API is accessed through a single class which inherits the common Zend_Service_OrangeApi_Client class.
Each API class is named after the official Orange API denomination.
Each API class instanciation is done by passing the mandatory Orange access key ("id" parameter) to the constructor.

6. Milestones / Tasks

  • Milestone 1: [DONE] Set a common architecture for all APIs
  • Milestone 2: [DONE] Working prototype checked into the incubator supporting use cases.
  • Milestone 4: [DONE] Initial documentation exists.

7. Class Index

  • Zend_Service_OrangeApi_ClientAbstract
  • Zend_Service_OrangeApi_Exception
  • Zend_Service_OrangeApi_ClickToCall
  • Zend_Service_OrangeApi_ClickToConf
  • Zend_Service_OrangeApi_History
  • Zend_Service_OrangeApi_Mms
  • Zend_Service_OrangeApi_Sms
  • Zend_Service_OrangeApi_Location
  • Zend_Service_OrangeApi_VoiceMashup

8. Use Cases

UC-01
Send an SMS using Zend Orange API
sendSms sample
UC-02
Ask a mobile user to accept geolocation using Zend Orange API
Location authorization sample
UC-03
Get a mobile device coordinates using Zend Orange API
Get Location sample
UC-04
Make a phone call using Zend Orange API
Click-to-call sample
UC-05
Create a phone conference using Zend Orange API
Click-to-conf createConference sample
UC-06
Add a caller to a phone conference using Zend Orange API
Click-to-conf addCaller sample
UC-07
Call a conference using Zend Orange API
Click-to-conf createCall sample
UC-08
Get your history using Zend Orange API
getHistory sample
UC-09
Send a MMS using Zend Orange API
sendMMS sample
UC-10
Make generated voice call using Zend Orange API
VoiceMashup sample

9. Class Skeletons

Zend_Service_OrangeApi_ClientAbstract

Zend_Service_OrangeApi_Exception

Zend_Service_OrangeApi_Sms

Zend_Service_OrangeApi_ClickToCall

Zend_Service_OrangeApi_ClickToConf

Zend_Service_OrangeApi_Location

]]></ac:plain-text-body></ac:macro>

Labels:
None
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.