Author Message
frankcarreon2
Joined: Jul 7, 2017
Messages: 14
Offline
I developed some basic DMCC code and tested on the remote labs. I had the following questions -

1. What is the difference between a GetDeviceID and a GetThirdpartyDeviceID ?

The device ID returned is the same for both. Is a Device Object created for both ? I assume there is a phone object in both the objects and I can perform phone operations on both the devices, except that for first party, I need to use first party commands such as take offhook, dial etc, whereas for third party I can give higher level commands.

I assume I can set up call control monitoring on both the objects (first party / third party)
For call recording using SSC and to monitor call events, what is the preferred device ?


2. For a single GetThirdpartyDeviceID, I get upto 5 responses.

DEBUG - Invoke ID in GetThirdPartyDevice Response: 3
DEBUG - Ext DeviceID: 40016:S8800::0
DEBUG - Invoke ID in GetThirdPartyDevice Response: 3
DEBUG - Ext DeviceID: 40016:S8800::0
Invoke ID in GetThirdPartyDevice Response: 3
Ext DeviceID: 40016:S8800::0
Invoke ID in GetThirdPartyDevice Response: 3
Ext DeviceID: 40016:S8800::0
Invoke ID in GetThirdPartyDevice Response: 3
Ext DeviceID: 40016:S8800::0

Not sure if it is a coincidence, I had sent the command to get third party device IDs for 5 extensions.


3. For GetDeviceID, I can use the CM IP, but for GEtThirdPartyDeviceID I need to provide the CM Name. The IP does not work for this.

Thanks


MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
GetDeviceID returns a First Party Device ID which is needed for First party activities and registering a terminal.

GetThirdPartyDeviceID returns a Third Party Device ID which can be used for Call Control activities (e.g. makeCall, or Call Control monitor). It is possible to use a First Party Device ID instead of Third Party Device ID for Call Control activities.

If you look closely, you should see that they are subtly different.

2. I do not recognize your trace so I cannot say what generated it. I would expect that one request to GetThirdPartyDeviceID would result in one response. 5 such requests would result in 5 responses.

It is possible to get a First Party Device ID using only the Switch IP Address but, for Third Party operations, you will need to use the Switch Connection Name.

Martin
frankcarreon2
Joined: Jul 7, 2017
Messages: 14
Offline
Thank You.

Is a device class object instantiated on both GetDeviceID and a GetThirdPartyDeviceID ?

For the multiple responses issue, I found the bug and fixed it.

I was also trying to get a Monitor List and a Device List. Using the dashboard as well as my code, I get the same response - Invalid Device State.

Is it possible to get a list of devices instantiated and a list of active monitors on the session ?

Thanks

frankcarreon2
Joined: Jul 7, 2017
Messages: 14
Offline
I am sorry I may not have been clear.

Is a new device object instantiated on GetThirdPartyDeviceID method call or does it return the device id of the agent on the extension ?

For single step conference and MR call recording, we would need to register additional recording devices. I assume we instantiate a new device object using GetNewDevice method and then register this device to the extension.

I was trying to get a Monitor List and a Device List. Using the dashboard as well as my code, I get the same response - Invalid Device State.

Is it possible to get a list of devices instantiated and a list of active monitors on the session ?

Thanks
frankcarreon2
Joined: Jul 7, 2017
Messages: 14
Offline
I have not received any response. As a new developer on the DMCC, I assume the questions are probably naive. A response would be helpful to my understanding of the library.

I also have the following additional questions -

1. The agent logs on a ACD split (hunt group or skill set). Do we need to monitor for events on the ACD split besides the extension device. Will we receive the Agent logon/logoff event if we enable this on the third party call control events for the extension device ?

2. We would want to get the logged in agent id on the start of our application on all the extensions that we are monitoring. The GetAgentLogIn or the GetAgentState does not provide the agent ID. I know for subsequent logins, the OnAgentLoggedOnEvent does provide us the logging in agentid.

Thanks for your help.
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online

> Is a new device object instantiated on GetThirdPartyDeviceID method call or does it return the device id of the agent on the extension ?

I'm not sure what you mean by this question. I can say that GetThirdPartyDeviceID uses the Device Number and Switch Name that you give it and returns a Third Party Device ID, based on these values.

> For single step conference and MR call recording, we would need to register additional recording devices. I assume we instantiate a new device object using GetNewDevice method and then register this device to the extension.

I am not sure what you mean by "GetNewDevice", I don't think that is an API method. I would suggest that you download a copy of "Developing Client-side IP Call Recording Applications using Avaya Application Enablement Services". I think it will clarify things for you somewhat.

> I was trying to get a Monitor List and a Device List. Using the dashboard as well as my code, I get the same response - Invalid Device State.

You must first start a Session Management monitor - see the "Session Mgmt." tab in the Event Registration sesion of the main DMCC Dashboard screen.

> 1. The agent logs on a ACD split (hunt group or skill set). D ...

Yes. If you monitor a Hunt Group, you will get Agent Login/Logout events whenever an agent logs in/out of the skill/huntgroup.

> 2. We would want to get the logged in agent id on the st ...

Use GetPhysicalDeviceInformation. If an agent is logged into the station, it will be listed in the response.

Martin
Go to:   
Mobile view