Freitag, 1. Mai 2009

Managed conference example

Dial plan example (from README.media) shows how 'chat_mute' command can be used to manage conference.
The users calling to 1291 will join conference as operators, to 1292 as regular users and 1293 as listeners.
Operators can use '0' DTMF key to mute all regular users and '1' DTMF key to unmute all regular users. The state of operators self and of listeners remains unchanged.
Operators can use '2' to mute own signal and '3' to unmute own signal.
DTMF clamping is active and used to remove send by operators DTMF signals from conference voice stream.

Regular users can use DTMF keys 0 and 1 vor volume control.

Listener users use automatic gain control

In this example extensions (1291, 1292, 1293) are used to identify users. In the pactice this is more convient to use transmitted using DTMF digits passwords (or extensions and passwords together).

[isdn-in]
exten => 1291,1,Answer ; Accept call
exten => 1291,n,capicommand(resource|1-4) ; assign resource PLCI if call from IP
exten => 1291,n,capicommand(clamping|200) ; Activate DTMF suppression
exten => 1291,n,capicommand(vc|chat_mute|0|yes) ; Voice command, key 0 - change to half duplex mode
exten => 1291,n,capicommand(vc|chat_mute|1|no) ; Voice command, key 0 - change to full duplex mode
exten => 1291,n,capicommand(vc|txdgain|2|-128) ; Operator mute himself
exten => 1291,n,capicommand(vc|txdgain|3|0) ; Operator mute himself
exten => 1291,n,capicommand(chat|test_chat|mo|1-4) ; Add to conference as operator
exten => 1291,n,Hangup()

exten => 1292,1,Answer ; Accept call
exten => 1292,n,capicommand(resource|1-4) ; Assign resource PLCI if call from IP
exten => 1292,n,capicommand(clamping|200) ; Activate DTMF suppression
exten => 1292,n,capicommand(vc|incrxdgain|0|-1.5) ; Rx volume control
exten => 1292,n,capicommand(vc|incrxdgain|1|1.5) ; Rx volume control
exten => 1292,n,capicommand(chat|test_chat|m|1-4) ; Add to conference as regular user
exten => 1292,n,Hangup()

exten => 1293,1,Answer ; Accept call
exten => 1293,n,capicommand(resource|1-4) ; Assign resource PLCI if call from IP
exten => 1293,n,capicommand(clamping|200) ; Activate DTMF suppression
exten => 1293,n,capicommand(rxagc|yes) ; Rx Automatic gain control
exten => 1293,n,capicommand(chat|test_chat|m|1-4) ; Add to conference as listener
exten => 1293,n,Hangup()

exten => _X.,1,Answer
exten => _X.,n,Goto(s,1)
exten => s,1,Wait(1)
exten => s,n(restart),Playback(demo-instruct)
exten => s,n,Goto(s,restart)
exten => s,n,Hangup

Keine Kommentare:

Kommentar veröffentlichen