No contact name on incoming call

Status
Not open for further replies.

MH_INDUS

Free User
Advanced Certified
Joined
Sep 23, 2019
Messages
102
Reaction score
30
Hello all,

I am trying to integrate our crm with 3CX.

I uploaded a xml to the 3cx server and tested the integration there. If I enter my test number, it returns the correct contact.

When I call my 3cx extension from that number I don't see the contact name in the 3CX webclient, only the number.

Are there any additional settings I might have missed in the webclient or admin interface?

Kind regards
Martin
 
Is the contact being added to the 3CX Console > Advanced > Contacts?

If not, please enable verbose logs from the 3CX Console > Dashboard > Activity Log > Settings. Then make a test call and check the 3cxSystemService.log file.
 
Hello edossantos,

the contact is not added to contacts.

Here is an exert from the log:

2021/03/26 08:10:59.420|6672|0008|Info|CRM: Synchronize(...) called
2021/03/26 08:10:59.421|6672|0066|Info|CRM: maxConcurrency=2
2021/03/26 08:10:59.421|6672|0066|Info|CRM: making request to CRM. Number=mycellnumber
2021/03/26 08:10:59.421|6672|0066|Trac|Obtaining scenario entity order for entity ''
2021/03/26 08:10:59.421|6672|0066|Trac|Ordering configuration not found, using scenario entity order 0 for entity ''
2021/03/26 08:10:59.421|6672|0066|Verb|Processing scenario 'Default'.
2021/03/26 08:10:59.421|6672|0066|Verb|Creating new HttpClient for Basic authentication
2021/03/26 08:10:59.421|6672|0066|Verb|Performing GET request 'http://ln01.industronic.local/CRM/webint.nsf/search.xsp/ctisearch?number=mycellnumber'.
2021/03/26 08:10:59.480|6672|0069|Verb|The response is: '{ "contacts" : [ ] ,
"results" : 0 ,
"timestamp" : 1616742659
}'
2021/03/26 08:10:59.480|6672|0069|Verb|No matchings found.
2021/03/26 08:10:59.480|6672|0069|Verb|Removed from processing. Number=mycellnumber
2021/03/26 08:10:59.480|6672|0069|Info|CRM: processing of mycellnumber has been finished

When I test the Integration via webconsole I get the message "CRM Integration is working OK but contact number does not exist. Check log for more info or try a different number.", but it shows the correct result in the box below that.

Started scenario with empty id
Request text: http://ln01.industronic.local/CRM/webint.nsf/search.xsp/ctisearch?number=mycellnumber
Response text: { "contacts" : [ { "cellphone" : "mycellnumber" ,
"company" : "companyname" ,
"email" : "[email protected]" ,
"firstname" : "firstname" ,
"lastname" : "Müller" ,
"phonenumber" : "mycellnumber" ,
"salutation" : "Herr" ,
"url" : "http://ln01.industronic.local:80/cr...ument=020927-28600-CF-29381|CProfile|Contacts"
} ] ,
"results" : 1 ,
"timestamp" : 1616745539
}
Response finished
Finished scenario with empty id

Any ideas?
 
Even if the contact lookup is returning data from the CRM, this is not properly mapped to outputs, and then 3CX can't detect the contact. I would like to see the XML you're using, in order to understand what you're doing wrong to map the fields from that JSON response.
 
Hello edossantos,

here is my XML, thanks for having a look at it.
 

Attachments

Your JSON response is:
JSON:
{
   "contacts":[
      {
         "cellphone":"mycellnumber",
         "company":"companyname",
         "email":"[email protected]",
         "firstname":"firstname",
         "lastname":"Müller",
         "phonenumber":"mycellnumber",
         "salutation":"Herr",
         "url":"http://ln01.industronic.local:80/cr...ument=020927-28600-CF-29381|CProfile|Contacts"
      }
   ],
   "results":1,
   "timestamp":1616745539
}

And in the XML you have the following rule to identify records:
XML:
<Rules>
    <Rule Type="Any">contacts.id</Rule>
</Rules>

However, the path contacts.id is not present in the JSON response. Maybe you can use contacts.url for example, or a value that you know will always be there.
 
Status
Not open for further replies.

Latest Posts

Forum statistics

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