Closed

Outbound Recurring Autodialler (Rev. Nov. 27, 2009)

This project received 11 bids from talented freelancers with an average bid price of $3177 USD.

Get free quotes for a project like this
Employer working
Skills Required
Project Budget
N/A
Total Bids
11
Project Description

Summary:
1. The app is designed to primarily contact an outbound Primary and if needed, a Secondary, Phone Number attached to a Worksite. The addition of functionality for inbound calls through a toll-free number is possible in future and should be planned for when coding.
2. For the outbound calls, some phone numbers will have extensions.
3. The Worksite will have 1-XX Respondents who may pick up the phone. The app will call the Worksite at defined intervals (most will be 60 minutes, but plan for every 10 minutes to every 24 hours), and this interval will be configured in advance, but the interval may vary depending on the day of the week.
4. If the Respondent at the Worksite picks up the phone, they will hear 1-2 messages, then must acknowledge the call, enter their 3-10 digit ID number (app must authenticate this number against database of all Respondents; app must be able to manage 3-10 digit ID numbers), the Respondent will be prompted to leave a brief verbal recording (to be saved as a wav file), and then will be prompted to hang up.
5. If the Respondent at the Worksite does not pick up, the app will repeat the call up to X times, with up to XX minutes between calls (e.g., max 3 retries, 1 retry every 2 minutes). If still no pickup, the app will retry on the Secondary Phone Number, same protocol for retries. If still no pickup by the Respondent, the app will generate alerts through one or more of: phone (play 1-3 wav files), email, fax and SMS. Audible and Visual Alerts will also be generated on the local server hosting the app. The Alert will indicate i) follow up action is required, ii) the worksite, iii) the last Respondent who acknowledged the call. For the phone alert, wav files will be played, these will be recorded by the Admin, however the option to use a TTS is ‘nice to have’, if a relatively clear TTS (US English, male voice, open-source preferred) is available.
6. The app will have strong functionality to enter Call Schedules for each Worksite, with Start Dates/Times and End Dates/Times, based on a recurring Weekly schedule, with option to choose 1 or more Call Windows for each Day of the Week, e.g., 1 Outbound call schedule from 0800-1700 with 1 call every 2 hours; a second outbound call schedule from 1701-0759 with 1 call every 60 minutes, etc. The app will allow the Operator to choose “Random” calls that will generate X random calls during the Call Schedule. The app will allow the Operator to view all scheduled calls for the next 24 hours, and select any scheduled call and make changes to the scheduled Call Time if needed. The app will have built-in functions to set up Notifications for Alerts, and will have Report functions for the Admin to review call logs, activities, alerts, etc. by Worksite, Respondent, etc. and also descriptive reports to show all tombstone information for Worksites (including Call Schedules, Primary and Secondary Phones set up for that worksite, etc.), Respondents (Name, ID number, etc.).
7. The app will include some functionality to allow for testing and to confirm ongoing proper functioning, e.g., ability to click on “Call Now” to any Worksite and automated internal diagnostic functions that will notify i) if the app is not functional and ii) generate internal testing to confirm that the app is functional. This app will be generating many calls during the day, perhaps simultaneous calls, so the solution must be able to manage multiple outbound calls simultaneously, or if this entails too high a cost, please describe how your proposed solution will manage multiple outbound calls scheduled for the same time.
Detailed Requirements:
1. The preference is that the app will contain a built-in recording function to record wav files to be used by the app, and this function must record wav files at the appropriate Hz, Bit, Mono parameters to work with the open-source telephony app (e.g. Freeswitch). If the app cannot contain this function (or if too expensive) then at minimum the app will allow the Admin to easily organize, store and retrieve wav files that have been recorded. In the description that follows, it is assumed for simplicity that the recording function can be built-in.
2. The app will require Admin and Operator roles. The app will allow data entry for Admin and Operator data (e.g., name, address, phone numbers).
3. The app will require data entry screens for XXX Worksites and each Worksite will have screens for data entry of 1 Calling Schedule (which will involve choosing call intervals, during call windows during each day of the week, based on a recurring weekly call template) at that Worksite and XX Respondents at that Worksite.
4. The app will have screens to capture or store/retrieve wav files to be used by the app.
5. The app will allow the Admin or Operator to enter XXX Worksites, each worksite will be assigned a Primary Telephone Number and Secondary Telephone Number. The Primary and Secondary Phone numbers may have Extension Numbers which the app must be able to manage. The app will have a built-in feature to allow the Admin to record a short wav file for each Worksite’s name, e.g., “Worksite name: ABC Site” and “ABC [url removed, login to view]” and the names of all Respondents at that worksite, e.g., “
6. Each Worksite will be assigned a defined Calling Template. The app will have strong functionality to enter Call Schedules for each Worksite, with Start Dates/Times and End Dates/Times, based on a recurring Weekly schedule, with option to choose 1 or more Call Windows for each Day of the Week, e.g., 1 Outbound call schedule from 0800-1700 with 1 call every 2 hours; a second outbound call schedule from 1701-0759 with 1 call every 60 minutes, etc. The Calling Schedule will cover one weekly cycle. Each Calling Schedule must have flexible recurrence options, like meeting recurrence feature in MS Outlook, e.g., 1 automated call to Worksite every XX minutes with a Start Time 0800 and and End Time, e.g., 2200 for weekdays, e.g., 1200 and 1800 weekends and stat holidays, with ability to suspend calls from a Start Date/Time to and End Date/Time, etc.). The Calling Schedule will allow calls to start at XX:00, or XX:15, or XX:30, or XX:45 and repeat calls every XX minutes will be based on the Start Time. The app will also allow the Admin to select XX “Random” calls from the Start Time to the End Time. If 12 random calls are selected, the app will use a randomizing function to pick 12 random calls from the Start Time to the End Time. The app will allow the Operator to view all scheduled calls for the next 24 hours, and select any scheduled call and make changes to the scheduled Call Time if needed.
7. Each worksite will be assigned X-XX Respondents who will work at separate times. Each Respondent will have a 6-digit unique identifier. The app will have built-in feature to allow the Admin/Operator to record a short wav file for each Respondent’s name, e.g., “Mary Smith” as well as enter various information about the Respondent.
8. Based on the Calling Template, the app will trigger a call to the Primary Telephone Number of the Worksite. If the Respondent answers, they will hear one or more introductory wav files and will have to enter their 6-digit ID. The app will play a standard wav file, then prompt the Respondent to enter their ID, and the app will authenticate the ID (i.e., must be equal to one of the IDs for Respondents assigned to that Worksite), then the app will prompt the Respondent to record a brief XX second message e.g., “This is Henry, I am available”. The app will then play a wav file “If you want to speak to the Operator, press X”, and if the Respondent presses X, the call will be transferred to the Operator. The app will store this recording, will log the call, store the Respondent ID and play a wav file “Thank you, good bye” and will hangup. The app will store the Respondent ID for the last Respondent who received a call at that Worksite. The next call to the Worksite will take place according to the Calling Template (i.e., in XX minutes). If the Respondent does not answer a scheduled call, the application will allow X retries every X-XX minutes, e.g., 1 retry every 2 minutes, up to 3 retries. If no answer after X retries, the app will then call the Secondary Phone Number (if there is a Secondary Phone Number) for that Worksite. If no answer on the Secondary Phone Number after X retries, the app will generate audible and visual alerts on local desktop and then immediately send notification through email, sms, phone call (plays a generic alert wav file “Supervisor action is required at” and plays the wav file of the name of the Worksite “ABC Site” and then plays a generic wav file “the last Respondent was” and then plays a specific wav file for the last Respondent who received a call at that Worksite, e.g., “Mary Smith”). All wav files will be recorded through the app by the Admin.
9. Alert Notification features will allow Admin to set up simultaneous Default Notification for up to 3 emails, 3 phones, 3 faxes and and 3 sms recipients. But app will also allow a Temporary Emergency Notification procedure that will override Default Notification based on a Start Date/Time and End Date/Time. Temporary Emergency Notification will also allow up to 3 emails, 3 phones, 3 faxes, 3 sms recipients.
10. If an Alert Notification occurs, the app will be designed to expect Alert Resolution to occur or a repeat notification will take place in XX minutes. Alert Resolution will be based on a Operator logging into the app, selecting the Alert, entering notes about actions they took to follow up, and then ‘closes out’ that alert, therefore suspending any repeat Alert Notifications for that Alert. If the Operator does not log in to do this within XX minutes, the app will send out repeat Alert Notification every XX minutes indefinitely until the Operator closes out the alert.
11. The app will also allow the Admin to view all scheduled calls for the next 48 hours, and sort these by Worksite. The Operator will be able to click on any scheduled call in the next 24 hours and make a change to the date, hour and minute of that scheduled call if wanted.
12. The app will email to the Admin a daily report of changes made like this.
13. The app will also allow the Admin to force a short Special Message to be played at the beginning of ALL calls across all Worksites, and/or ALL calls one or more selected Worksites, starting on a selected Start Date/Time and ending on a selected End Date/Time. This recording will be made by the Admin through the app.
14. The app will allow user-friendly navigation to record, store and retrieve all wav files in an organized manner.
15. The app will allow the Operator to click on any Worksite and click on a “Call Now” button, which will schedule a call immediately when clicked.
16. The app will have reporting capabilities to allow the Admin/Operator to view reports and export them as Excel or pdf files. Based on Start Date and End Date, the app will allow the Admin/Operator to view all outgoing calls, and sort them by Worksite, Date/Time, Call Outcome (answered, not answered; if answered, can see if a wav file was recorded and can play the recording by the Respondent) . App will also allow Operator to produce Alert Reports, i.e., list of all Alerts generated, what date and time and notes taken by Operator (and date and time these notes were entered) to ‘close out’ the report. App will also produce reports showing listing of all Worksites, all first/last names of Respondents at each Worksite and Calling Schedule at each Worksite.
17. The app will include some functionality to allow for testing and to confirm ongoing proper functioning, e.g., ability to click on “Call Now” to any Worksite and automated internal diagnostic functions that will notify i) if the app is not functional (exception reporting if any process is not working) and ii) generate periodic (e.g., every XX mins) internal testing to confirm that the app is functional (non-exception validation) from an end-to-end perspective.

Looking to make some money?

  • Set your budget and the timeframe
  • Outline your proposal
  • Get paid for your work

Hire Freelancers who also bid on this project

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online