looking for a way to do appointment reminders
Hello, I am in the research phase for the following project and am researching what options are available. My health care organization is looking for a way to do appointment reminders. We currently have staff members who spend part of each day manually calling patients to remind them of their upcoming appointments, and we would like to automate this process. Our electronic health record software would provide such information as the patient's name, phone number, and day and time of the appointment, and FreeSWITCH could take this information and place an automated call to the patient. We would like the reminder call to use text-to-speech to personalize the call, such as "We have an appointment reminder for [first name]. The appointment is on [date] at [time]. I am wondering if anyone has experience with using FreeSWITCH for this type of application, and would be willing to share any details of how you implemented it? I am interested in any ideas, from very simple to feature-rich. We would be doing a new installation of FreeSWITCH for this purpose, so we could use any version of FreeSWITCH or any operating system you would recommend. Thank you! Brandon
Hi Brandon, This is totally doable with FreeSWITCH. For you I recommend starting small and working your way up. What I mean by that is that you should probably get the basics down first, like learning how to do a simple dialplan entry in FreeSWITCH, how to set up a SIP provider, how to set up a TTS engine like svox/pico or a commercial one like Cepstral, how to do an originate on the command line and then how to script that using something simple (like fs_cli -x 'originate foo/bar') or more in depth (like ESL)... Then there are the other questions, like: How do you get the patient information out of the software? Is there an API? Will you be keeping track of the results of your automated outbound calls? If so, how will you get the results back into the software? Will you auto-reschedule busy/no answer calls? Do you want to leave a simple message with the called party even if a human answers? Or do you want to have a simple IVR that says something like: "you have an appointment at [date/time]. press 1 to confirm. if you need to reschedule, press 2."? Will you want answering machine detection? If so you'll need to contact FreeSWITCH Solutions about purchasing a license since this is not a free module. Last question: what programming skills do you have on staff there? If you have basic shell scripting skills and/or Perl/PHP/Python/etc. skills then you can probably build something yourself. If you don't have someone with some programming skills then I strongly recommend that you find or hire someone to assist. It's not impossible for a determined person to learn all the skills required, however it will be a challenge. Hope this helps! -Michael P.S. here is a really, really simple example of how to make an outbound call from a shell script: #!/bin/bash # simple dialout script, assumes a gateway named 'flowroute' # and syntax: dialout.sh <phonenumber> <firstname> <lastname> <appt_ timestamp> res=`fs_cli -x '{ignore_early_media=true,fname=$2,lname=$3,appt_timestamp=$4}sofia/gateway/flowroute/$1 reminder` Call that script from shell using a Unix timestamp for the appointment date/time, like this: ./dialout.sh 18005551212 brandon coale 1368077828 Then have a simple dialplan (assumes you've built one of the TTS engines): <extension name="dial out reminder"> <condition field="destination_number" expression="^reminder$"> <action application="answer"/> <action application="sleep" data="1000"/> <!-- pause for a sec, let media kick in --> <action application="playback" data="this_is_a_message_for.wav"/> <action application="speak" data="${fname} ${lname}"/> <action application="playback" data="you_have_an_appointment_on.wav"/> <action application="say" data="en short_date_time pronounced ${appt_timestamp}"/> <action application="playback" data="please_dont_miss_or_we_charge_obnoxious_fee.wav"/> <action application="hangup"/> </condition> </extension> On Wed, May 8, 2013 at 5:21 PM, Brandon Coale <brandoncoale@sbcglobal.net>wrote:
Hello,
I am in the research phase for the following project and am researching what options are available.
My health care organization is looking for a way to do appointment reminders. We currently have staff members who spend part of each day manually calling patients to remind them of their upcoming appointments, and we would like to automate this process.
Our electronic health record software would provide such information as the patient's name, phone number, and day and time of the appointment, and FreeSWITCH could take this information and place an automated call to the patient. We would like the reminder call to use text-to-speech to personalize the call, such as "We have an appointment reminder for [first name]. The appointment is on [date] at [time].
I am wondering if anyone has experience with using FreeSWITCH for this type of application, and would be willing to share any details of how you implemented it? I am interested in any ideas, from very simple to feature-rich. We would be doing a new installation of FreeSWITCH for this purpose, so we could use any version of FreeSWITCH or any operating system you would recommend.
Thank you! Brandon
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Michael S Collins Twitter: @mercutioviz http://www.FreeSWITCH.org http://www.ClueCon.com http://www.OSTAG.org
*Sidebar* Possible recordings for the next session with Callie? Like: 1. "This is an important reminder for..." 2. "This is a reminder for your appointment scheduled for..." ...or something similar. I think it would get some usage with those in the medical field. On May 8, 2013 11:09 PM, "Michael Collins" <msc@freeswitch.org> wrote:
Hi Brandon,
This is totally doable with FreeSWITCH. For you I recommend starting
small and working your way up. What I mean by that is that you should probably get the basics down first, like learning how to do a simple dialplan entry in FreeSWITCH, how to set up a SIP provider, how to set up a TTS engine like svox/pico or a commercial one like Cepstral, how to do an originate on the command line and then how to script that using something simple (like fs_cli -x 'originate foo/bar') or more in depth (like ESL)...
Then there are the other questions, like: How do you get the patient information out of the software? Is there an
API?
Will you be keeping track of the results of your automated outbound calls? If so, how will you get the results back into the software? Will you auto-reschedule busy/no answer calls? Do you want to leave a simple message with the called party even if a human answers? Or do you want to have a simple IVR that says something like: "you have an appointment at [date/time]. press 1 to confirm. if you need to reschedule, press 2."? Will you want answering machine detection? If so you'll need to contact FreeSWITCH Solutions about purchasing a license since this is not a free module.
Last question: what programming skills do you have on staff there? If you have basic shell scripting skills and/or Perl/PHP/Python/etc. skills then you can probably build something yourself. If you don't have someone with some programming skills then I strongly recommend that you find or hire someone to assist. It's not impossible for a determined person to learn all the skills required, however it will be a challenge.
Hope this helps! -Michael
P.S. here is a really, really simple example of how to make an outbound call from a shell script:
#!/bin/bash # simple dialout script, assumes a gateway named 'flowroute' # and syntax: dialout.sh <phonenumber> <firstname> <lastname> <appt_timestamp> res=`fs_cli -x '{ignore_early_media=true,fname=$2,lname=$3,appt_timestamp=$4}sofia/gateway/flowroute/$1 reminder`
Call that script from shell using a Unix timestamp for the appointment date/time, like this: ./dialout.sh 18005551212 brandon coale 1368077828
Then have a simple dialplan (assumes you've built one of the TTS engines):
<extension name="dial out reminder"> <condition field="destination_number" expression="^reminder$"> <action application="answer"/> <action application="sleep" data="1000"/> <!-- pause for a sec, let media kick in --> <action application="playback" data="this_is_a_message_for.wav"/> <action application="speak" data="${fname} ${lname}"/> <action application="playback" data="you_have_an_appointment_on.wav"/> <action application="say" data="en short_date_time pronounced ${appt_timestamp}"/> <action application="playback" data="please_dont_miss_or_we_charge_obnoxious_fee.wav"/> <action application="hangup"/> </condition> </extension>
On Wed, May 8, 2013 at 5:21 PM, Brandon Coale <brandoncoale@sbcglobal.net> wrote:
Hello,
I am in the research phase for the following project and am researching what options are available.
My health care organization is looking for a way to do appointment reminders. We currently have staff members who spend part of each day manually calling patients to remind them of their upcoming appointments, and we would like to automate this process.
Our electronic health record software would provide such information as the patient's name, phone number, and day and time of the appointment, and FreeSWITCH could take this information and place an automated call to the patient. We would like the reminder call to use text-to-speech to personalize the call, such as "We have an appointment reminder for [first name]. The appointment is on [date] at [time].
I am wondering if anyone has experience with using FreeSWITCH for this type of application, and would be willing to share any details of how you implemented it? I am interested in any ideas, from very simple to feature-rich. We would be doing a new installation of FreeSWITCH for this purpose, so we could use any version of FreeSWITCH or any operating system you would recommend.
Thank you! Brandon
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Michael S Collins Twitter: @mercutioviz http://www.FreeSWITCH.org http://www.ClueCon.com http://www.OSTAG.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Since I'm getting ready to submit another order I'll put these on the list. Reminders have a wide range of applications. -MC On Thu, May 9, 2013 at 3:49 AM, Avi Marcus <avi@avimarcus.net> wrote:
Medical isn't the only industry with appointments.
-Avi
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Michael S Collins Twitter: @mercutioviz http://www.FreeSWITCH.org http://www.ClueCon.com http://www.OSTAG.org
That's probably not the only prompts that could be recorded for reminders, but it's a start. I personally dont have a use for them so I haven't thought long and hard about what prompts are needed. Back to the OP's question, there are many ways to to accomplish what you're trying to do. One thing to take in consideration are the interfaces available on the records system, which could make your life easier. A possible solution might be to use the event socket along with a web service. The latest version of v1.2.stable is recommended right now I believe but you can check http://wiki.freeswitch.org 's main page for the details. I personally recommended Debian 6 for your operating system. A few of the developers recommend it too, but we all have our opinions on what an operating system should look like :) Welcome to FreeSWITCH. You're gonna love it. -BDF On May 9, 2013 1:29 PM, "Michael Collins" <msc@freeswitch.org> wrote:
Since I'm getting ready to submit another order I'll put these on the list. Reminders have a wide range of applications. -MC
On Thu, May 9, 2013 at 3:49 AM, Avi Marcus <avi@avimarcus.net> wrote:
Medical isn't the only industry with appointments.
-Avi
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Michael S Collins Twitter: @mercutioviz http://www.FreeSWITCH.org http://www.ClueCon.com http://www.OSTAG.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
I personally recommended Debian 6 for your operating system
Debian 7 'Wheezy' was released this weekend just gone, and is now the new 'stable' release. Debian 6 is 'Squeeze', which is now 'oldstable'. That said it's far from EOL yet and will continue to receive updates for some time (> 1 year). If you're wanting to roll out a new production system *now* Squeeze *may* still be the best option, just because most people will only have been running Wheezy for a few days so there may be some initial teething problems. That said it's been in release freeze for about 11 months while preparing the release, tracking down and fixing the major bugs so it should be pretty stable. Any new development you're doing that's not for immediate rollout should probably target Wheezy, since you'd have to upgrade to it when Squeeze goes EOL anyway. -Steve On 9 May 2013 20:51, Brian Foster <bdfoster@davri.com> wrote:
That's probably not the only prompts that could be recorded for reminders, but it's a start. I personally dont have a use for them so I haven't thought long and hard about what prompts are needed.
Back to the OP's question, there are many ways to to accomplish what you're trying to do. One thing to take in consideration are the interfaces available on the records system, which could make your life easier. A possible solution might be to use the event socket along with a web service. The latest version of v1.2.stable is recommended right now I believe but you can check http://wiki.freeswitch.org 's main page for the details. I personally recommended Debian 6 for your operating system. A few of the developers recommend it too, but we all have our opinions on what an operating system should look like :)
Welcome to FreeSWITCH. You're gonna love it.
-BDF
On May 9, 2013 1:29 PM, "Michael Collins" <msc@freeswitch.org> wrote:
Since I'm getting ready to submit another order I'll put these on the list. Reminders have a wide range of applications. -MC
On Thu, May 9, 2013 at 3:49 AM, Avi Marcus <avi@avimarcus.net> wrote:
Medical isn't the only industry with appointments.
-Avi
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Michael S Collins Twitter: @mercutioviz http://www.FreeSWITCH.org http://www.ClueCon.com http://www.OSTAG.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
On Fri, May 10, 2013 at 2:22 AM, Steven Ayre <steveayre@gmail.com> wrote:
I personally recommended Debian 6 for your operating system
Debian 7 'Wheezy' was released this weekend just gone, and is now the new 'stable' release.
Debian 6 is 'Squeeze', which is now 'oldstable'. That said it's far from EOL yet and will continue to receive updates for some time (> 1 year).
If you're wanting to roll out a new production system *now* Squeeze *may* still be the best option, just because most people will only have been running Wheezy for a few days so there may be some initial teething problems. That said it's been in release freeze for about 11 months while preparing the release, tracking down and fixing the major bugs so it should be pretty stable.
Any new development you're doing that's not for immediate rollout should probably target Wheezy, since you'd have to upgrade to it when Squeeze goes EOL anyway.
-Steve
Steve, Thanks for the heads up on Deb7. One of these days I will get around to installing it and trying it out. -MC
participants (5)
-
Avi Marcus
-
Brandon Coale
-
Brian Foster
-
Michael Collins
-
Steven Ayre