Страница 1 из 1

Asterisk 1.8, клиент и последний агент

Добавлено: 07 сен 2013, 12:10
scherkhan
Здравствуйте уважаемые форумчане!
Имеется Asterisk 1.8 с восемью агентами. Когда приходит звонок извне, то попадает на секретаршу, или далее по списку, если ее нет на месте.

Появилась надобность в том, если агент (SIP/104) разговаривал с клиентом 74951234567 последним, то при повторном звонке клиента с этого же номера попадал прямиком к нему, к агенту 104, а не через барышню.

Я понимаю что сейчас услышу, "учи матчасть" и тд. Прежде чем писать, я почитал форумы и статьи на предмет связи с БД, но все равно знаний не хватает. Решение вопроса я представляю таковым:
1. Звонит клиент, идет поиск в базе MySQL по номеру клиента.
а) Если такого номера еще не было в базе, то на барышню. она уже переключит на нужного агента. После этого заносим в базу номер клиента и агента.
б) Если есть таковой, то соединяем с тем агентом, который с ним в последний раз разговаривал. нет ответа в течении нужного времени, переводим на барышню. изменяем запись в БД.

Конечно, при наличии нужных знаний, это не сложно. но у меня не хватает знаний для работы с БД.

Буду признателен за любую помощь!

Re: Asterisk 1.8, клиент и последний агент

Добавлено: 07 сен 2013, 12:32
ded
Вторая часть (поиск в базе при входящем) реализуется более/менее стандартно, через функционал Caller ID lookup.

Помогу посветить фонариком в тупики, которые Вы не видите:
2. Звонит клиент, идет поиск в базе MySQL по номеру клиента.
а) Если такого номера еще не было в базе, то на барышню. но она не переключает на агента. После этого заносим в базу номер клиента, или нет?

3. Звонит клиент, идет поиск в базе MySQL по номеру клиента.
б) Есть таковой, он звонил уже но говорил только с барышней, соединяем с ней же, а есди её нет на месте, автоматом переводим на агента, изменяем запись в БД?

4. Звонит клиент, идет поиск в базе MySQL по номеру клиента.
б) Есть таковой, он звонил уже но говорил не только с агентом, который с ним в последний раз разговаривал. но и с другим, на которого тот перевёл, изменяем запись в БД?

Вы порисуйте диаграммы в виде блок-схем, увидите реальную многовариантность. А её ещё и корректировать как-то надо вручную? mysql командами?

В общем - это в раздел Бизнес, IMHO.

Re: Asterisk 1.8, клиент и последний агент

Добавлено: 07 сен 2013, 13:22
scherkhan
2. Звонит клиент, идет поиск в базе MySQL по номеру клиента.
а) Если такого номера еще не было в базе, то на барышню. но она не переключает на агента. После этого заносим в базу номер клиента, или нет?
Да, занесем в базу только после того, как агент положит трубку. в базу заносится именно тот агент, который говорил с клиентом последний. в противном случае, если агент не разговаривал, то ничего вносить не надо.
3. Звонит клиент, идет поиск в базе MySQL по номеру клиента.
б) Есть таковой, он звонил уже но говорил только с барышней, соединяем с ней же, а есди её нет на месте, автоматом переводим на агента, изменяем запись в БД?
Да, соединяем с барышней. А если ее нет на месте, то так и так уже работает другой алгоритм. т.е. нет ответа от барышни в течении 10 секунд, переводится на запасного агента. и дальше на третий, по необходимости, если их обоих нет.
4. Звонит клиент, идет поиск в базе MySQL по номеру клиента.
б) Есть таковой, он звонил уже но говорил не только с агентом, который с ним в последний раз разговаривал. но и с другим, на которого тот перевёл, изменяем запись в БД?
именно на последнего, с кем клиент уже разговаривал, а не на кого переводили. даже если барышня с ним разговаривала, то с ней.

Сейчас система работает и днем я ее не могу модифицировать, только ночью или на выходных.
Если не трудно, подскажите команды поиска по таблицам и изменения их.

Re: Asterisk 1.8, клиент и последний агент

Добавлено: 07 сен 2013, 14:43
awsswa
Google - поиск - asterisk Dynamic Clip Routing