Widget App - How to get caller's number for incoming call

We have premium app published on appfoundry.

Right now i am able to get the caller's number for customer type conversation. I am not getting the callers number for other types of conversation. can any one provide the details on below points:

  1. I want to confirm whether the caller’s number is available in the case of ACD or not.
  2. “value.address“ is the correct property to fetch the caller’s number in case all-purpose types?
  3. we are fetching conversation using “getConversationsCall" Is it the correct method to fetch the participant details?

let apiInstance = new platformClient.ConversationsApi();
apiInstance.getConversationsCall(conversationId)
.then((data) => {})
.catch((err) => {})

  1. when i call “getConversationsCall " API i receive a response containing five purpose types i.e. customer, user, ivr, acd,and agent. Can you please guide how I can validate the purpose type to fetch the caller’s number?

API Response for reference:
`[
{
"id": "8f6f9738-450c-4180-94d1-510b63da3fd8",
"name": "Anonymous",
"address": "sip:Anonymous@10.87.220.148",
"startTime": "2023-12-27T05:23:00.633Z",
"connectedTime": "2023-12-27T05:23:00.835Z",
"endTime": "2023-12-27T05:24:24.213Z",
"purpose": "customer",
"state": "terminated",
"direction": "inbound",
"disconnectType": "endpoint",
"held": false,
"wrapupRequired": false,
"mediaRoles": [
"full"
],
"queue": {
"id": "b8baae23-e893-44e3-991f-8dbbda91991a",
"selfUri": "/api/v2/routing/queues/b8baae23-e893-44e3-991f-8dbbda91991a"
},
"attributes": {},
"provider": "Edge",
"externalContact": {
"id": "43df51b4-cb0b-474c-b75a-c8e40fa59e2b",
"selfUri": "/api/v2/externalcontacts/contacts/43df51b4-cb0b-474c-b75a-c8e40fa59e2b"
},
"muted": false,
"confined": false,
"recording": false,
"recordingState": "none",
"ani": "sip:Anonymous@10.87.220.148",
"dnis": "tel:+16506714290",
"securePause": false
},
{
"id": "61289e41-1fe3-4d72-97b9-93c53edcaf33",
"name": "Blitzz Inbound Call Flow",
"address": "sip:b3aa01b8-dd48-4d55-9fd6-ab47352004d7@127.0.0.1;language=en-US;user=ivr",
"startTime": "2023-12-27T05:23:00.653Z",
"connectedTime": "2023-12-27T05:23:00.669Z",
"endTime": "2023-12-27T05:23:11.995Z",
"purpose": "ivr",
"state": "terminated",
"direction": "inbound",
"disconnectType": "transfer",
"held": false,
"wrapupRequired": false,
"mediaRoles": [],
"attributes": {},
"provider": "Edge",
"peer": "7fcb837c-56a3-4629-af5b-84d696e7dee7",
"muted": false,
"confined": false,
"recording": false,
"recordingState": "none",
"ani": "sip:Anonymous@10.87.220.148",
"dnis": "sip:b3aa01b8-dd48-4d55-9fd6-ab47352004d7@127.0.0.1;language=en-US;user=ivr",
"securePause": false
},
{
"id": "9a5737fb-7b7a-40ad-8b04-caba4495992d",
"name": "Blitzz Inbound Queue",
"address": "sip:b8baae23-e893-44e3-991f-8dbbda91991a@127.0.0.1;language=en-US;user=acd",
"startTime": "2023-12-27T05:23:12Z",
"connectedTime": "2023-12-27T05:23:12.066Z",
"endTime": "2023-12-27T05:23:32.347Z",
"purpose": "acd",
"state": "terminated",
"direction": "inbound",
"disconnectType": "transfer",
"held": false,
"wrapupRequired": false,
"mediaRoles": [],
"queue": {
"id": "b8baae23-e893-44e3-991f-8dbbda91991a",
"selfUri": "/api/v2/routing/queues/b8baae23-e893-44e3-991f-8dbbda91991a"
},
"attributes": {},
"provider": "Edge",
"peer": "7fcb837c-56a3-4629-af5b-84d696e7dee7",
"conversationRoutingData": {
"queue": {
"id": "b8baae23-e893-44e3-991f-8dbbda91991a",
"selfUri": "/api/v2/routing/queues/b8baae23-e893-44e3-991f-8dbbda91991a"
},
"priority": 0,
"skills": [],
"scoredAgents": []
},
"muted": false,
"confined": false,
"recording": false,
"recordingState": "none",
"ani": "sip:Anonymous@10.87.220.148",
"dnis": "sip:b8baae23-e893-44e3-991f-8dbbda91991a@127.0.0.1;language=en-US;user=acd",
"securePause": false
},
{
"id": "cb886b0d-429d-48f3-9ac8-3dad4fb2b187",
"address": "sip:636de2b5706d8e1b44542cc2+blitzz.orgspan.com;tgrp=ae38e662-26ee-466c-a351-bb28479a6a25;trunk-context=blitzz@localhost",
"startTime": "2023-12-27T05:23:12.388Z",
"endTime": "2023-12-27T05:23:20.689Z",
"purpose": "agent",
"state": "terminated",
"direction": "inbound",
"disconnectType": "client",
"held": false,
"wrapupRequired": false,
"wrapupPrompt": "optional",
"mediaRoles": [
"full"
],
"user": {
"id": "7d1d5f0c-c890-47a2-abd4-5043eaffe41e",
"selfUri": "/api/v2/users/7d1d5f0c-c890-47a2-abd4-5043eaffe41e"
},
"queue": {
"id": "b8baae23-e893-44e3-991f-8dbbda91991a",
"selfUri": "/api/v2/routing/queues/b8baae23-e893-44e3-991f-8dbbda91991a"
},
"attributes": {},
"alertingTimeoutMs": 8000,
"provider": "Edge",
"peer": "7fcb837c-56a3-4629-af5b-84d696e7dee7",
"muted": false,
"confined": false,
"recording": false,
"recordingState": "none",
"ani": "sip:Anonymous@10.87.220.148",
"dnis": "sip:636de2b5706d8e1b44542cc2+blitzz.orgspan.com;tgrp=ae38e662-26ee-466c-a351-bb28479a6a25;trunk-context=blitzz@localhost",
"securePause": false
},
{
"id": "b8f14861-bb56-40c2-b6e4-f6e0eaeeae82",
"address": "sip:636de2b5706d8e1b44542cc2+blitzz.orgspan.com;tgrp=ae38e662-26ee-466c-a351-bb28479a6a25;trunk-context=blitzz@localhost",
"startTime": "2023-12-27T05:23:28.036Z",
"connectedTime": "2023-12-27T05:23:32.347Z",
"endTime": "2023-12-27T05:24:24.216Z",
"purpose": "agent",
"state": "terminated",
"direction": "inbound",
"disconnectType": "peer",
"held": false,
"wrapupRequired": true,
"wrapupPrompt": "optional",
"mediaRoles": [
"full"
],
"user": {
"id": "7d1d5f0c-c890-47a2-abd4-5043eaffe41e",
"selfUri": "/api/v2/users/7d1d5f0c-c890-47a2-abd4-5043eaffe41e"
},
"queue": {
"id": "b8baae23-e893-44e3-991f-8dbbda91991a",
"selfUri": "/api/v2/routing/queues/b8baae23-e893-44e3-991f-8dbbda91991a"
},
"attributes": {},
"alertingTimeoutMs": 8000,
"provider": "Edge",
"peer": "7fcb837c-56a3-4629-af5b-84d696e7dee7",
"startAcwTime": "2023-12-27T05:24:24.216Z",
"muted": false,
"confined": false,
"recording": false,
"recordingState": "none",
"ani": "sip:Anonymous@10.87.220.148",
"dnis": "sip:636de2b5706d8e1b44542cc2+blitzz.orgspan.com;tgrp=ae38e662-26ee-466c-a351-bb28479a6a25;trunk-context=blitzz@localhost",
"securePause": false
}
]

  1. I want to confirm whether the caller’s number is available in the case of ACD or not.
    Answer: Looking at the participant which is either purpose of customer or external
  2. “value.address“ is the correct property to fetch the caller’s number in case all-purpose types?
    ANI is a better attribute
  3. we are fetching conversation using “getConversationsCall" Is it the correct method to fetch the participant details?
    Yes that is the best API call

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.