AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Подскажите как лучше воплотить следующий сценарий для входящих звонков

Asterisk IP PBX 7 сообщений 29.11.2010 01:54 - 20.01.2011 20:35
#1 29.11.2010 01:54

Подскажите как лучше воплотить следующий сценарий для входящих звонков


Звонок который приходит с внешней линии, должен попасть в ivr, после этого, в зале где много телефонов, через колонки (paging) идет сообщение что пришел звонок на, предположим доп. номер 3333. Пользователь которому принадлежит 3333, может ответить с любого аппарата, при этом введя свой личный пароль (который соответствует паролю в голосовой почте). Если пользователь не поднял трубку, то звонок уходит на его почту или в follow me.
Будет среднее количество одновременных звонков.

Я думаю сделать это следующим образом: ivr -> paging queue ->paging (sound card). После этого каждый звонок идет в свой queue (звонок на доп. номер 3333 идет в очередь 3333). Когда через paging сообщается о звонке, пользователь набирает код, например *11, и вводит 3333 и его пароль. Используя ChannelRedirect, я вытаскиваю звонок из очереди 3333 на аппарат с которого пользователь ответил.

Есть ли какие другие, более оптимальные идеи?

Заранее признателен.
#2 29.11.2010 09:48

а зачем так сложно то.
если конечно люди не совершают броуновское движение по огромному залу.а просто занимают произвольное рабочее место - то есть удобный механизм очередей и агентов. когда агент приходить и садиться за рабочее место - он логинитсяь (набирая номер - свой id - и пароль) и к нему начинаютпостцупать звонки. его звонки.
#3 29.11.2010 13:01

как раз движение в зале присутствует...

в зале обычно 100 человек и 10 телефонов. По спикеру звучит "Иванов, вам звонок на 3333", Иванов может быть в любом углу и должен поднять ближайший телефон.

Я думал использовать парковку, но там труднее вытащить нужный звонок, т.к. места назначаются системой...
#4 29.11.2010 13:14

На вскидку:
1.ivr
2. "номер 3333 вам звонят"
3. в extensions.conf(можно задействовать agi будет проще)
цикл 1 до 100
_XXXX=> dial(agent/3333)
пауза(1000мс)
конец цикла

Пока идет цикл(попрыти дозвониться до агента)
Человек подходит к телефону, авторизуется как агент 3333, и получает вызов на телефон. После чего он должен деавторизоваться(либо ручками, либо вы сами должны в скрипте это учесть)
#5 29.11.2010 14:56

Натолкнули вы меня на раздумье. А не сделать ли через Dial и Virtual Extensions...
Page "звонок на 3333"
Dial ("3333")
WaitExten(45)
Pickup(10**3333) включает макро аунтефикации
#6 12.12.2010 11:45

Вообщем пораскинув мозгами запустил следующим образом:
Звонок -> приветствие ->оповещение ->паркинг (используя PARKINGEXTEN=__DID) и закомментировавши оповещение в коде...
Пользователь отвечает на звонок используя vmauthenticate(HIS_EXTEN) и parkedcall(HIS_EXTEN). Работает как часы.
Если кому интересно, скину dialplan.
#7 20.01.2011 20:35

можно если не жалко сюда под сполер если большое
_________________
Ubuntu-Server 6.06 /Gentoo /Asterisk 1.4.21.1/app_fax(t38) /spandsp-0.0.5pre4
Digium TDM400/Polycom IP301 SP /Snom 360/ Seiros ТИ24/Linksys 9X/ Kirk 600IPv3