Outbound CID call tracking
As we know, tracking communication is CRITICAL for organization and professionalism; not to mention to cover our @$$, haha. And I've got to say - the inbound CID lookups that post to the customer and ticket pages are AMAZING. They give us a clear and easy understanding of a call coming in. WOW!
BUT... What about OUTGOING CALLS? Sure, we really try to make sure to put in an update every time we call to recap what the call was about, but it would be immeasurably helpful to have our calls out to be tracked just like the incoming calls are. Right?
"Why has no one else thought of this?"
I know you already have Troy (and I have no doubt that it's not nearly as easy as setting up a HTTP CID lookup source) but what is the official verdict on the idea?
From what I gather, it must involve either a communication between the PBX or the Trunk? Not sure if you need an API as much as just authentication. Either way, it seems like there's more than one way to get the outgoing call data to send to RS. I understand that there are tons of VoIP providers, but it seems very reasonable that there's something that could be integrated with open-sourced PBX on self-hosted hardware.
What do you think?
-
aaron.tague commented
Any news on this? We would really like to keep track of this.
-
Ryan (CTO, Pinellas Computers) commented
@Troy, I made another subject to this post here so it wouldn't get lost once you mark this topic as Completed: http://feedback.repairshopr.com/forums/165658-general/suggestions/9707706
-
Ryan (CTO, Pinellas Computers) commented
@Sam: Yes, this IS working, but it isn't exactly a "conventional built-in" feature in most PBX systems (in the way that incoming CID lookup sources are). It required us making a custom dial plan to run against all external call patterns. A little advanced, but works without having to hack/rig your system any more than what would be considered "advanced customization". In any case, here's exactly how it looks in our account on tickets and in the customer communication log: http://i.imgur.com/CEV80RX.jpg
I don't want to upset Troy if he doesn't want the instructions released. @Troy: Let me know if I can post it here, or if you were planning to write it all up officially?
-
Ryan (CTO, Pinellas Computers) commented
@Mark: Yes, I do believe this is possible, but I haven't had enough free time to go into testing ways to make this work. It really would just involve some additional variables being added into the custom dialplan. It is on my list, and I would like to accomplish all of these things:
1. Outbound calls - Show the extension used to dial outbound calls
2. Inbound calls - Show the phone number (DID) which was dialed by the customer
3. Inbound calls - Show the extension that answered the call on your systemI've looked into it already, and it looks like the additional variables will be ${CALLERIDNUM}, ${DNID}, and ${EXTEN}. The issue I fear may be problematic is that (on incoming calls) this would result in the call alert (including HUD alerts) to be delayed until AFTER the call is answered. However, I don't think there'd be any issue with this on outgoing calls, so it's worth looking into.
I'm certain RS will not add the ability to link any specific Tech Names to extension numbers, but even just the extensions will be invaluable information. I'm glad someone else is thinking about how powerful this feature could become. Any other ideas you've had about it to voice?
-
Sam James commented
Is this now working?
Thanks
-
Mark commented
Good news @Ryan One question though, is it possible to somehow link the phone extensions to a technician so you can see who rang them? Just throwing the thought out there.
-
Ryan (CTO, Pinellas Computers) commented
Update for everyone: This is in progress and Troy has made a beta API add-on for this to work. I've tested it and it's working. We're just making some minor adjustments to when/how it functions specifically, and then it should be ready for Troy to add instructions to the Knowledge Base. Boom!
-
Ryan (CTO, Pinellas Computers) commented
EXCITING NEWS EVERYONE!
I have officially figured out how to get outbound CID call tracking to work 100%. Further, I’ve SIMPLIFIED it so it’s even easier to setup than the inbound CID lookup source! It’s literally one line of code you add into FreePBX/Asterisk/Elastix/Trixbox and you’re DONE! No additional packages or add-ons to install, no programming custom rules, etc. I’ve spent 5.5 HOURS researching this today and it was worth it!
All I need from Troy to make it function properly is the (almost) duplicate API URL lookup. This would result in a different URL lookup performed for incoming calls vs outgoing calls. Then just change the subject/text (for the comments on Tickets) and call log notes (for the Communication Log).
Here’s what I need Troy to make: Outbound CID URL Lookup
String: http://YOURSUBDOMAIN.repairshopr.com/api/outboundcall/?did=2065553222
Subject: Outgoing Call (alternative to ‘Incoming Call’ subject)
Comment: Tech called out to phone number 2065553222
Communication Log Note: Made a phone call to 2065553222I'll send Troy all the details and we can get the instructions posted with the rest of the PBX setup instructions here when done: http://feedback.repairshopr.com/knowledgebase/articles/254824-how-does-the-pbx-integration-work
BOO YAH!
-
Rob commented
This would make me very happy
-
Ryan (Power User R7, RepairShopr) commented
Yeah, we use Elastix PBX and ours is the same; only inbound. I was wondering how the heck yours did the outbound lookup, but I'm guessing it doesn't. What do you think about this idea topic?
-
Mark commented
Hi Ryan,
I use FreePBX, it only records inbound calls in the customer data currently. I am starting to think that maybe it doesn't use outbound CID lookup, or somehow caches the inbound, however, it always records the inbound. -
Ryan (CTO, Pinellas Computers) commented
I've spent a good amount of time looking into options on how to get this to work. I haven't been able to test/confirm what @Mark said, but I guess his system (not sure what it is?) uses the same CID lookup source for outgoing calls? That actually sounds HORRIBLE, because it would say the customer called IN when a tech actually called OUT; which could really get confusing for reference purposes.
However, this does give evidence that outbound phone calls have the ability to send a CID lookup query to RS. With that fact, there is a great potential in the system for keeping even better logs of outbound calls to customers. My idea: Create a separate (almost duplicate) CID lookup source string - which, when queried, would post updates into RS with /slightly/ different post information. Examples:
Inbound CID string: http://YOURSUBDOMAIN.repairshopr.com/api/callerid/?did=2065553222
Subject: Incoming Call
Comment: Customer called in from phone number 2065553222Outbound CID string: http://YOURSUBDOMAIN.repairshopr.com/api/outboundcall/?did=2065553222
Subject: Outgoing Call
Comment: Tech called out to phone number 2065553222Hopefully we can figure out how to make FreePBX/Elastix/Trixbox/etc use the new query string. BUT, even worst case scenario - we could set an option all phone numbers on the RS website to be LINKS in which, when clicked, would submit the Outbound CID string in the background, therein adding an Outbound Call comment to customer tickets and communication logs.
THIS WILL HELP MISCOMMUNICATION ISSUES BETWEEN EMPLOYEES AND CUSTOMERS - I PROMISE!
-
Ryan (Power User R7, RepairShopr) commented
Hi Mark!
So you're saying that every time you make an outgoing call to a customer, it posts a "received a call from customer-phone" message in the ticket and customer account page?
If so, that's technically bad/wrong information; but it's awesome to know that it can work with outbound calls. I guess the only step would be to have RS make a slightly different (duplicate) of the current CID lookup - then you have outgoing calls use the second CID lookup so they can report a different message - "made a call to customer-phone".
What do you think Mark?
-
Mark commented
With our phone system if we ring a client that is in RepairShopr it also performs a CID lookup, so it must send an API request with different parameters, so it should just be a case of recording this into the log.