Zend Framework: Zend_Asterisk Component Proposal
| Proposed Component Name | Zend_Asterisk |
|---|---|
| Developer Notes | http://framework.zend.com/wiki/display/ZFDEV/Zend_Asterisk |
| Proposers | Emanuele Deserti |
| Revision | 1.2 - 21 February 2008: Second draft 1.1 - 10 October 2007: First draft (wiki revision: 5) |
Table of Contents
1. Overview
Zend_Asterisk is a component that contain two main components: Zend_Asterisk_Manager and Zend_Asterisk_Agi
Zend_Asterisk_Manager will connect with the Asterisk Manager interfaces and can send and load data with the local Asterisk server.
Zend_Asterisk_Agi implements a Asterisk Gateway Interface which can be used to control and interact with a call in progress.
2. References
3. Component Requirements, Constraints, and Acceptance Criteria
- This component will connect with the Asterisk Manager and can write and read to Asterisk socket.
- This component will answer to Asterisk call and hangup an active call.
- This component will detect DTMF digits (single or collect digits) and play specific audio files.
- This component will read and write Asterisk global variables (like extensions) and call variables (like callerid).
4. Dependencies on Other Framework Components
- Zend_Exception
5. Theory of Operation
The component can be used in two way:
- As Asterisk Manager, who can send command directly to the server and read it's output
- As Asterisk Gateway Interfaces, who can answer to a call, process user input, interact with others services (like a database) and return results or informations to user.
6. Milestones / Tasks
- Milestone 1: design notes will be published here
- Milestone 2: Asterisk Gateway Interface: write to socket and read from socket.
- Milestone 3: Asterisk Gateway Interface: parse callerid, collect digits, play audio files.
- Milestone 4: Asterisk Manager: connect to Asterisk Server, send commands and read outputs.
7. Class Index
- Zend_Asterisk_Exception
- Zend_Asterisk (factory class)
- Zend_Asterisk_Manager
- Zend_Asterisk_Agi
8. Use Cases
| MANAGER:send command and read output |
|---|
| MANAGER:originate dial |
|---|
9. Class Skeletons
Thanks for help.
Actually this project is "On Hold" but the development of the classes still continue... ![]()
I'm in rather a similar position as Jed, I'd love to see this component mature. I'd also be keen on testing if you're after more test subjects ![]()
Looking forward to more additions!
Regards,
Craig
Sorry for long delay...
I have just upload a VERY draft version of Zend_Asterisk_Manager (this is in use in one of our web application).
Of course, all comment, critic and contribute of code are welcome ![]()
This class is heavily based on PHP-AGI http://phpagi.sourceforge.net
Take a look to this AGI class for php 5
http://wisedonkey.livejournal.com/98142.html
Works quite well and you can adapt it easily to Zend Framework
Cheers !
I will you manager class asap. I'm interested to build a click on dial using you class.
Could you give me any clue ?
Regards
ZF Home Page
Code Browser
Wiki Dashboard
We have an asterisk voip network at my place of employment and have been asked to look into possible solutions for a web based front end and ways to integrate our intranet site with Asterisk. I'd be very interested in testing, assisting with this component, regardless of whether or not it makes it into Zend Core.