Our firm is looking for an ADVANCED Asterisk developer, preferably with some experience in the Fonality PBXtra phone switch. We are looking to develop and application that will bill callers for prepaid minutes of technical expert talk time and route the callers to the appropriate at-home agent.
We have a detailed call flow that we are willing to share with the winning bidders. We are looking for a quote to do the requirements listed below and then an hourly rate for additional features. We anticipate that this will be a long term relationship as our needs will continue to grow and mature with our business. Bidders must have the ability to communicate effectively in English with our project team (Phone or Skype).
All code must be thoroughly documented in addition to well commented. Bidders MUST submit:
1. A description of projects previously worked on (indicating Asterisk or Fonality)
2. A small sample of well commented code (can be for any Asterisk project)
3. A sample of function or feature documentation (MS Word format)
A. Toll free numbers need to be assigned in the database to specific client companies.
B. Each client company will have their own version of these IVRs, but the format will be similar.
C. All calls must be recorded and the filename must be the switch call ID
D. Call recordings must be stored on a separate file server in a defined directory structure (company / year / month / day)
E. Each call record must be written out to a Call History table in our database residing on a different server in addition to any used by the phone switch.
F. Call History table must track detailed elements of each call far greater than the similar table used by the phone switch (talk minutes, connected minutes, billable minutes, agent ID, etc)
G. Each step of the phone call needs to be written to an external Call Steps database
a. Each IVR played, customer disconnects, calls answered, transfers, AGIs called, etc)
H. Web service created that logs users on and off the switch
I. Web service created that adds and removes users from queues
J. Web service created to allow a customer to go online and request a call back at a specific time
K. Web service created to suspend billable minutes while keeping the connected minutes running
L. Web service created to check the external Profile table to determine how many minutes the caller has available at the start of each call.
M. AGI created that generates a tone 1 minute prior to the expiration of those minutes.
N. AGI created that routes the caller to a queue at the conclusion of the call
O. Create 4-6 custom IVRs that perform data capture to our external tables
P. IVRs need to be able to invoke additional web services and retain passed back information for the life of the call.
Q. AGI created to capture touch tone data and read it back to the caller and write it to our external database tables.
R. Distribute calls in queue to agents with the highest score in the external Staff table
S. AGI created that logs a particular agent out of all queues if more than X rings go unanswered
T. AGI created that routes that caller to the next best available agent if in the above example “S”
U. Feature created to require remote agents to hear an announcement and press “1” to accept the call, otherwise the call is routed to the next best available agent.
V. Create custom screens to enter and update some of the data above (Items A, B & S)