cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
58
Views
0
Helpful
0
Comments
cdnadmin
Level 11
Level 11
This document was generated from CDN thread

Created by: Marko Laurits on 03-11-2009 05:46:21 PM
Hello,

I am creating a customised web interface for users. The customised web interface communicates with Tandbergs over telnet API.

User can initiate several simultaneous calls by using the web interface. That works ok.
Now the user wants to disconnect one call via the same interface. If you press red button at IR remote, you see the list of participants and can choose which one to disconnect. The customised web interface should have similar possibilities.

My idea is to use API command "mcustat" to see the list of participants and "mcucommand disconnect <mcuid, site>" to disconnect appropriate one. (In case there is only one call active, mcustat reveals it and it's ok).

The problem is that "mcucommand disconnect" does not work at MXP. It works fine with Tandberg Classic products (the customer has mix of both devices in the network). Even using "xCommand SiteDisconnect" at MXP does not help. The result is OK but no call is disconnected. I have tried both F5.3 and F8.0.

Is it intentional or should I report it as a bug by Support Website?

Also related but not so important question: "mcucommand floor" works with F5 but not with new versions. Is it a bug or feature?

Subject: RE: Disconnecting a multi-site call via API
Replied by: Viggo Fredriksen on 04-11-2009 12:32:45 AM
Hi Marko,

There seems to be a spelling error in the mcucommand help-text. I tried the following given mcuId=1 and terminalId=2
1mcucommand disconnect 1 2

and it seemed to work. I was, however, not able to use xCommand SiteDisconnect, so this is probably a bug.

However, I'm wondering why you're using these commands? I guess mcucommand disconnect is intended to be used when you want to disconnect participants from a remote MCU. Otherwise I would just stick with:
1xCommand DisconnectCall Call: <1..7>

The callId can be found using the old method:
 1callstatus
 2
 3*S callstatus 1 outgoing h323 connected 255 777Sec
 4*S callstatus 2 idle idle idle 255 161Sec
 5*S callstatus 3 idle idle idle 255 0Sec
 6*S callstatus 4 idle idle idle 255 0Sec
 7*S callstatus 5 idle idle idle 255 0Sec
 8*S callstatus 6 idle idle idle 255 0Sec
 9*S callstatus 7 idle idle idle 255 0Sec

or the newer method:
 1
 2xstatus Call
 3
 4*s Call 1 (status=Synced, type=Vtlph, protocol=H323, direction=Outgoing, logTag=1):
 5     CallRate: 768
 6     RemoteNumber: "xxx@foo.org"
 7     Mute: Off
 8     Microphone: On
 9     Duration: 664
10     MuteOutgoing: Off
11     CallOnHold: False
12     RemoteSiteOnHold: False
13     MultiwayProgress: Off
14     Channels 1 (type=Incoming):
15       Rate: 768
16       Restrict: Off
17       IPLR: Off
18       Encryption (status=Off): /
19       Audio (status=Active):
20         Protocol: AAC-LD
21         Rate: 64
22       Video 1 (status=Active):
23         Protocol: H264
24         Resolution: w576p
25         Rate: 704
26       Video 2 (status=Inactive): /
27       Data (status=Inactive): /
28     Channels 2 (type=Outgoing):
29       Rate: 768
30       Restrict: Off
31       IPLR: Off
32       Encryption (status=Off): /
33       Audio (status=Active):
34         Protocol: AAC-LD
35         Rate: 64
36       Video 1 (status=Active):
37         Protocol: H264
38         Resolution: 448p
39         Rate: 704
40       Video 2 (status=Inactive): /
41       Data (status=Inactive): /
42*s/end
43
44*s Call 2 (status=Disconnected, type=NA, protocol=NA, direction=NA, logTag=NA):
45     Cause: 16
46*s/end
47
48[snip]
49
50OK


Regards,
   Viggo

Subject: RE: Disconnecting a multi-site call via API
Replied by: Marko Laurits on 04-11-2009 01:10:08 PM
Hi Viggo,

1mcucommand disconnect 1 2

Thanks, I tried now this as well, with F8 and F5. Unfortunately, it does not work as expected.

'mcucommand disconnect 1 2' gives the same result as 'mcucommand disconnect 2' and as 'disc 2'.

For, example, if you make one call to Paris and second call to London then mcustat shows:
mcustat terminals 1,2 Paris
mcustat terminals 1,3 London

When you execute 'mcucommand disconnect 1 2' then London is disconnected because it's the second call.

However, I'm wondering why you're using these commands? would just stick with:
1xCommand DisconnectCall Call: <1..7>

The callId can be found using the old method:
1callstatus
2*S callstatus 1 outgoing h323 connected 255 777Sec
3*S callstatus 2 idle idle idle 255 161Sec
4...

or the newer method:
1
2xstatus Call
3
4*s Call 1 (status=Synced, type=Vtlph, protocol=H323, direction=Outgoing, logTag=1):
5     CallRate: 768
6     RemoteNumber: "xxx@foo.org"
7...


The reason is that neither command gives participant list as a feedback. An user behind web browser wants to choose, which participant to disconnect. 'Callstatus' says nothing about participants. The calls are initiated to IP-addresses. Therefore 'xStatus Call' shows IP-address of the participant. So the user would need to choose between IP-addresses which participant to disconnect.

Currently only solution for MXP seems to be using 'xStat Conference'. The result shows both: H.323 ID and call number. After extracting this data from the result, 'disc <call number>' can be executed. If 'mcucommand disconnect' worked as expected, the script would become much simpler.

Subject: RE: Disconnecting a multi-site call via API
Replied by: Roger Boe on 04-11-2009 01:32:58 PM
Hi Marko

Marko Laurits:
Hi Viggo,
For, example, if you make one call to Paris and second call to London then mcustat shows:
mcustat terminals 1,2 Paris
mcustat terminals 1,3 London


You shouldn't use these commands to accomplish this. These commands give the results from H.243 chaircontrol and 1.2 means MCU 1, terminal 2. Some MCUs supporting chaircontrol can use these commands to actually disconnects sites from the MCU itself (even external MCUs). When you want to have full control of the local calls initiated from the MXP you should use the other commands explained by Viggo.

The MXP has limited H.243 chair control implemented for the internal MCU and I don't believe the MCU disconnect commands was ever designed to work for the internal MCU.

Cheers
Roger
Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Quick Links