View Source

<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[{zone-template-instance:ZFPROP:Proposal Zone Template}

{zone-data:component-name}
Zend_Service_DeveloperGarden
{zone-data}

{zone-data:proposer-list}
[Marco Kaiser|mailto:bate@php.net]
{zone-data}

{zone-data:liaison}
[~matthew]
{zone-data}

{zone-data:revision}
1.0 - May 2009: Initial Draft.
1.1 - Sep 2009: Ready for Review
1.2 - Okt 2009: Completed Code, Ready for Recommendation
1.3 - Nov 2009: Renamed, and fixed some Requirements
Released with zf-1.10.0
{zone-data}

{zone-data:overview}
Zend_Service_DeveloperGarden is a component to access the open development services of the german telekom.
Its called DeveloperGarden.com
{zone-data}

{zone-data:references}
* [Telekom Open API|http://www.developergarden.com/openapi]
{zone-data}

{zone-data:requirements}
* Developergarden.com account and specific credentials
{zone-data}

{zone-data:dependencies}
* Zend_Soap
* Zend_Exception
* Zend_Service
{zone-data}

{zone-data:operation}
You can instanciate one of the components (SMS,VoiceCall etc) to use the requested api.
{zone-data}

{zone-data:milestones}
* Milestone 1: \[DONE\] Finish base implementation of STS - Soap Features
* Milestone 2: \[DONE\] Finish base implementation of all services
* Milestone 3: \[DONE\] Finish Unit Tests
* Milestone 4: [DONE] Build Documentation
{zone-data}

{zone-data:class-list}
* Zend_Service_DeveloperGarden_BaseUserService
* Zend_Service_DeveloperGarden_ConferenceCall
* Zend_Service_DeveloperGarden_Credential
* Zend_Service_DeveloperGarden_Exception
* Zend_Service_DeveloperGarden_IpLocation
* Zend_Service_DeveloperGarden_LocalSearch
* Zend_Service_DeveloperGarden_SecurityTokenServer
* Zend_Service_DeveloperGarden_SecurityTokenServer_Cache
* Zend_Service_DeveloperGarden_SendSms
* Zend_Service_DeveloperGarden_VoiceCall

* Zend_Service_DeveloperGarden_Client_ClientAbstract
* Zend_Service_DeveloperGarden_Client_Exception
* Zend_Service_DeveloperGarden_Client_Soap

* Zend_Service_DeveloperGarden_IpLocation_IpAddress

* Zend_Service_DeveloperGarden_LocalSearch_Exception extends Zend_Service_DeveloperGarden_Exception
* Zend_Service_DeveloperGarden_LocalSearch_SearchParameters

* Zend_Service_DeveloperGarden_Request_<Service>_<Request>

* Zend_Service_DeveloperGarden_Response_<Service>_<Response>
* Zend_Service_DeveloperGarden_Response_BaseType
* Zend_Service_DeveloperGarden_Response_Exception
* Zend_Service_DeveloperGarden_Response_ResponseAbstract
...

{zone-data}

{zone-data:use-cases}
{composition-setup}
{deck:id=Usecases}
{card:label=UC-01}
{code}
/**
* Send an SMS
*/
$client = new Zend_Service_DeveloperGarden_SendSms(
array(
'username' => 'UserName',
'password' => 'Password',
'environment' => Zend_Service_DeveloperGarden_SendSms::ENV_PRODUCTION
)
);
$sms = $client->createSms('+49-171-1234567', 'This is a Testmessage', 'MyOwnName');
$client->send($sms);
{code}
{card}
{card:label=UC-02}
{code}
/**
* Send an FlashSMS
*/
$client = new Zend_Service_DeveloperGarden_SendSms(
array(
'username' => 'UserName',
'password' => 'Password',
'environment' => Zend_Service_DeveloperGarden_SendSms::ENV_PRODUCTION
)
);
$sms = $client->createFlashSms('+49-171-1234567', 'This is a Testmessage', 'MyOwnName');
$client->send($sms);
{code}
{card}
{card:label=UC-03}
{code}
/**
* VoiceCall
*/
$client = new Zend_Service_DeveloperGarden_VoiceCall(
array(
'username' => 'UserName',
'password' => 'Password',
'environment' => Zend_Service_DeveloperGarden_VoiceCall::ENV_PRODUCTION
)
);
$expiration = 10;
$maxDuration = 60;
// call both parts, wait 10s for first numbers response an keep call 60s alive
$session = $client->newCall('+49-30-111111', '+49-30-222222', $expiration, $maxDuration);
// get the session id
$sessionId = $session->getSessionId();
// call for call status and extend the maxDuration
$client->callStatus($sessionId, $maxDuration);
// tear down the call
$client->tearDownCall($sessionId);
{code}
{card}
{deck}
{zone-data}

{zone-data:skeletons}
* see Attachment [Zend_Service_DeveloperGarden - Marco Kaiser^Zend_Service_DeveloperGarden-PR3.zip]
{zone-data}

{zone-template-instance}]]></ac:plain-text-body></ac:macro>