Custom CRM integration

Status
Not open for further replies.

kata32

Joined
Feb 19, 2021
Messages
14
Reaction score
2
Hi,
in our company we are evaluating the transition to the 3cx telephone system, we are checking if this problem is solvable:
our target is to record on our CRM (developed by us) incoming calls (even those not answered) and all the transfers that each call has had from one extension to another, recording extention number, start time, end time etc.
Reading the documentation it seems that this problem can be solved in more than one way, but for us it is not clear which is the most correct: using only the "CRM Integration" feature, using only the "CallFlow" or a mix of both. We need a suggestion on the type of approach to use.
On our current system, to each incoming call is assigned an unique ID from our CRM, this ID is used as a reference for all next extension transfers, we would like to keep same logic.

Any help will be greatly appreciated,

Thanks.
 
All this information is only available in the CDRs, so if you have development capability I would recommend you to create a program that reads them, and sends the details to your CRM.
 
  • Like
Reactions: Evolute IT
Hi Ernesto,
your advice is very interesting, but doing some test I found the following problem:

Call example:
a customer call ->
bpx answer (waiting time) ->
operator 1 answer (talk time) ->
operator 1 transfer the call to operator 2 (waiting time) ->
operator 2 answer (talk time) ->
call end

All these steps are recorded on a single CDR record, and the transfers are saved in the "Chain:" field, but in this case all intermediate times data are missing.

We would like to record the start time, end time and duration of each passage, including the waiting time. This would be possible if the CRD create a record for each tranfert and not one for each call.

regards

Adriano
 
Unfortunately that information is not available in the CDRs.
 
Thanks Ernesto,
however I am a little surprised that a system like 3cx does not solve this kind of task, logging the life of a call, I think is the first thing that a call center ask from his pbx.
Can you think of any other way to achieve this?

regards

Adriano
 
Unfortunately there is no public API to get this information.
 
First, I would be remiss if I didn't mention that 3CX has announced a new REST API and Gateway service that will be released with 3CX V18. What capabilities these "integration tools" will provide was not discussed. But I would strongly suggest you keep a close eye on the announcements over the coming months.

In the meantime you have a couple of options. (1) if you can get your hands on an old copy of the Call Control API documentation, with this API you can subscribe to all call events (this is real-time). This includes calls, transfers, and disconnects. (2) you are absolutely right that the CDR does list all the legs of the call, but does not list their associated times, separately. To get this information you may consider looking at our 3CX Exporter tool which replicates all 3CX data to a SQL or MySQL database (this is near real-time). The cl_segments table has all the legs of the call. (3) if you do not want to go through all the complexities of subscribing to 3CX events using the Call Control API, you can take a look at our 3CX Monitor tool that records all call events in excruciating detail.
 
Status
Not open for further replies.

Latest Posts

Forum statistics

Threads
112,324
Messages
591,897
Members
165,475
Latest member
lastshadow