Call Journaling to Quotevine CRM

Status
Not open for further replies.

Waldoppen

Gold Partner
Advanced Certified
Joined
Jan 26, 2022
Messages
72
Reaction score
42
Hi, we have been playing around with contact lookup and call journaling to a CRM called quotevine. We have got the contact lookup working and I then used 3CX CRM template generator to try get inbound calls to log to the CRM. No joy on this.

The 3CX is on v18 Update 6 - self hosted in AWS

Below is the current XML file - please be kind, I have zero past experience with it!

I have used a syntax checker which says it's ok and 3CX accepts the XML - nothing is logged however. We can use Postman to log data to the CRM - this works fine.

<?xml version="1.0"?>
<Crm xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Country="UK" Name="Call Journaling" Version="1" SupportsEmojis="true">
<Number Prefix="AsIs" MaxLength="[MaxLength]" />
<Connection MaxConcurrentRequests="2" />
<Parameters />
<Authentication Type="No" />
<Scenarios>
<Scenario Id="ReportCall" Type="REST">
<Request Url="https://customername.quotevineapp.com/qvine/quotevine/api/v2/telephone_calls/" MessagePasses="0" RequestContentType="application/json" RequestEncoding="Json" RequestType="Post" ResponseType="Json">
<Headers>
<Value Key="api-key">xxxxxxxxxx</Value>
</Headers>
<PostValues>
<Value Key="call_date" Passes="1" Type="String">[DateTime]</Value>
<Value Key="direction" Passes="1" Type="String">I</Value>
<Value Key="source_number" Passes="1" Type="String">[Number]</Value>
<Value Key="destination_number" Passes="1" Type="String">[AgentFirstName]</Value>
<Value Key="internal_flag" Passes="1" Type="String">N</Value>
</PostValues>
</Request>
</Scenario>
</Scenarios>
</Crm>

It's probably completely wrong so forgive my ignorance with XML... Is there a log I can access on 3CX that will show me if it attempts to log and any errors etc?

Thanks in advance,
 
The CRM does have a 'Ring Length' attribute, but it doesn't look like 3CX has a predefined variable to pass that data to the CRM?
Maybe you could calculate it using the variables CallStartTimeLocal and CallEstablishedTimeLocal. If you substract them, you should get a Timespan, so this should give you the number of ringing seconds:
[[[[CallEstablishedTimeLocal]-[CallStartTimeLocal]].get_TotalSeconds()].ToString("F0")]

However, if this is a queue call, it will be immediately answered, and the ring time will always be zero.
 
  • Like
Reactions: Evolute IT
Status
Not open for further replies.