Automated SMS for missed calls

Status
Not open for further replies.

Kenny Riley

Active Member
Nov 1, 2017
243
39
28
36
We currently have a working SMS solution with Skyetel in place on our system. However, we have a customer of ours asking for a feature where if a call is missed and goes to voicemail, that the system sends an automated SMS message to the caller essentially letting them know that they are currently assisting other patients and are available via text message.

As a FusionPBX purple member, I have reached out to the development team to request assistance in getting this implemented and have even offered to pay for the labor and coding required to do so, but it seems as though their requests are backlogged and they do not have the time to respond to such requests in a timely manner.

I would think this should be easy enough to implement since we already have SMS up and running on our system -- however, I don't possess the coding skills needed to get this done.

Has anyone ever gotten something like this working on their system? Or does anyone here possess the coding knowledge to tackle this? I'm more than happy to pay for the assistance.

Thank you.
 

yukon

Member
Oct 3, 2016
138
14
18
This was something that the SMS app _used_ to be able to do. It would text you a transcription of the voicemail.

If I have time this week, I'll dig into the code and see if it's still in there.
 

Kenny Riley

Active Member
Nov 1, 2017
243
39
28
36
Hi Yukon-

Thank you for the response. However I'm not looking for a text to be sent of the transcribed voicemail.

What I'm looking to do is to have FusionPBX send an SMS to the callers number if their initial call is missed and hits voicemail informing them that they are available to assist via text in order to allow the caller to text them back.

Does that make sense?
 

Kenny Riley

Active Member
Nov 1, 2017
243
39
28
36
Yes, 100%. I'm just saying that what you wanted PLUS MORE was available in the past.

Oh I misunderstood your reply, my apologies! Thank you for the clarification. I would be really interested in that solution if it's still something that is available.
 

yukon

Member
Oct 3, 2016
138
14
18
Looks like the code is still there... You need to go to permissions and enable the voicemail_sms_edit, log out and back in. Then on the voicemail page you'll see the option.

You need to add a default setting for voicemail_to_sms_did

And configure it in the SMS App.

That looks like it should work...
 

Attachments

  • Screen Shot 2020-06-03 at 11.37.13 AM.png
    Screen Shot 2020-06-03 at 11.37.13 AM.png
    130.3 KB · Views: 77
  • Screen Shot 2020-06-03 at 11.42.25 AM.png
    Screen Shot 2020-06-03 at 11.42.25 AM.png
    51.8 KB · Views: 72
  • Like
Reactions: hossein

Kenny Riley

Active Member
Nov 1, 2017
243
39
28
36
Hi Yukon

When you say the SMS app, are we talking about the default Messages app within Fusion or some other SMS app?

From what you've described above, unless I'm missing something, this just looks like a way to get SMS notifications when an voicemail is left rather than sending an automated SMS to the caller that attempted to call. Am I wrong?

Thank you!
 

abelitouci

Member
Jul 3, 2019
31
6
8
Houston, Texas
Hi Yukon-

Thank you for the response. However I'm not looking for a text to be sent of the transcribed voicemail.

What I'm looking to do is to have FusionPBX send an SMS to the callers number if their initial call is missed and hits voicemail informing them that they are available to assist via text in order to allow the caller to text them back.

Does that make sense?
Hi @Kenny Riley i believe this is what you are looking for below.
We have implemented this in Prod already, working like a charm so far.
If you have your SMS gateway already you only need an endpoint to get the client caller ID and the number he called that way you can send a message from the same destination number back to the client, the way we did it on the v_xml_cdr_import.php we added this code below under the missed call if bracket.
....
take a look at it and let me know if you have any question, on the server side ( your endpoint) you have to implement the logic to get those numbers and send the custom sms back to the client.
....

if ($xml->variables->missed_call == 'true') {
$database->fields['missed_call'] = 'true';

//my custom code here.....................

$username = "yourusername"; //username if you have authorization on your API or endpoint
$password = "yourpassword"; //password
$url = 'https://posturl....endpoint'; //post endpoint
$data = array('From' => urldecode($xml->variables->caller_id_number) , 'To' => urldecode($xml->variables->caller_destination));

// use key 'http' even if you send the request to https://...
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n".
"Authorization: Basic " . base64_encode("$username:$password"),
'method' => 'POST',
'content' => http_build_query($data)
)
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
//if ($result === FALSE) { /* Handle error */ }


// end of my custom code...........

}
 

Kenny Riley

Active Member
Nov 1, 2017
243
39
28
36
@abelitouci

This sounds like exactly what I'm trying to do! However is there a way to implement this solution on a tenant by tenant basis, or would this be enabled system wide? I would really love your guidance on implementing this and am happy to pay for your time if you have some availability.
 

abelitouci

Member
Jul 3, 2019
31
6
8
Houston, Texas
@abelitouci

This sounds like exactly what I'm trying to do! However is there a way to implement this solution on a tenant by tenant basis, or would this be enabled system wide? I would really love your guidance on implementing this and am happy to pay for your time if you have some availability.
Hi @Kenny Riley,
Yes, you can have custom messages on a tenant basis and even more you can implement it by Destination numbers as well, so even one tenant can have different custom messages on their destinations numbers ( it has to be on your endpoint logic though).
You can have a table on your DB with the relation Destination number -> custom text message and when you receive the http post on your endpoint with the destination number you look thru your table and grab the custom text message that belongs to that particular destination number to send it back to the client.

hope it helps...
 
Status
Not open for further replies.