Вторжение в разговор
Добавлено: 29 авг 2013, 14:49
Здравствуйте.
Подскажите направление, необходимо организовать вторжение в разговор. Два абонента разговаривают. Директор хочет вмешаться, но при этом должна создаться 3-х сторонняя конференция. Таким образом ChanSpy в данной ситуации не поможет.
Была идея реализовать через ChannelRedirect.
Разговаривают два номера - 21305 и 21304.
Директор набирает префикс и попадает сюда (данный диалплан тестовый, соответственно пока каналы задаю жестко):
[phones]
conf,1,Meetme(600)
6123,1,ChannelRedirect(SIP/21305-0000070b,phones,conf,1")
6123,2,MeetMe(600)
h,1,ChannelRedirect(SIP/21304-0000070a,phones,conf,1")
но номер 21304 все равно отбивается, хотя один раз получилось. Вот лог
[code] -- Executing [6123@phones:1] ChannelRedirect("SIP/21302-0000070c", "SIP/21305-0000070b,phones,conf,1") in new stack
-- Executing [h@phones:1] NoOp("SIP/21304-0000070a", "cause - 16") in new stack
-- Executing [h@phones:2] Wait("SIP/21304-0000070a", "3") in new stack
== Spawn extension (phones, h, 2) exited non-zero on 'SIP/21304-0000070a'
== Extension Changed 21302[phones] new state InUse for Notify User 21306
-- Executing [6123@phones:2] MeetMe("SIP/21302-0000070c", "600") in new stack
-- Executing [conf@phones:1] MeetMe("SIP/21305-0000070b", "600") in new stack
== Parsing '/etc/asterisk/meetme.conf': == Found
-- Created MeetMe conference 1023 for conference '600'
-- <SIP/21305-0000070b> Playing 'conf-onlyperson.slin' (language 'ru')
== Spawn extension (macro-RecDial, s, 4) exited non-zero on 'SIP/21304-0000070a' in macro 'RecDial'
== Spawn extension (phones, 21305, 11) exited non-zero on 'SIP/21304-0000070a'
== MixMonitor close filestream
== End MixMonitor Recording SIP/21304-0000070a
[/code]
Понимаю что-то что выше я сделал - ерунда
Подскажите как грамотно сделать данную функцию? В какое направление смотреть?
Подскажите направление, необходимо организовать вторжение в разговор. Два абонента разговаривают. Директор хочет вмешаться, но при этом должна создаться 3-х сторонняя конференция. Таким образом ChanSpy в данной ситуации не поможет.
Была идея реализовать через ChannelRedirect.
Разговаривают два номера - 21305 и 21304.
Директор набирает префикс и попадает сюда (данный диалплан тестовый, соответственно пока каналы задаю жестко):
[phones]
conf,1,Meetme(600)
6123,1,ChannelRedirect(SIP/21305-0000070b,phones,conf,1")
6123,2,MeetMe(600)
h,1,ChannelRedirect(SIP/21304-0000070a,phones,conf,1")
но номер 21304 все равно отбивается, хотя один раз получилось. Вот лог
[code] -- Executing [6123@phones:1] ChannelRedirect("SIP/21302-0000070c", "SIP/21305-0000070b,phones,conf,1") in new stack
-- Executing [h@phones:1] NoOp("SIP/21304-0000070a", "cause - 16") in new stack
-- Executing [h@phones:2] Wait("SIP/21304-0000070a", "3") in new stack
== Spawn extension (phones, h, 2) exited non-zero on 'SIP/21304-0000070a'
== Extension Changed 21302[phones] new state InUse for Notify User 21306
-- Executing [6123@phones:2] MeetMe("SIP/21302-0000070c", "600") in new stack
-- Executing [conf@phones:1] MeetMe("SIP/21305-0000070b", "600") in new stack
== Parsing '/etc/asterisk/meetme.conf': == Found
-- Created MeetMe conference 1023 for conference '600'
-- <SIP/21305-0000070b> Playing 'conf-onlyperson.slin' (language 'ru')
== Spawn extension (macro-RecDial, s, 4) exited non-zero on 'SIP/21304-0000070a' in macro 'RecDial'
== Spawn extension (phones, 21305, 11) exited non-zero on 'SIP/21304-0000070a'
== MixMonitor close filestream
== End MixMonitor Recording SIP/21304-0000070a
[/code]
Понимаю что-то что выше я сделал - ерунда
Подскажите как грамотно сделать данную функцию? В какое направление смотреть?