LINUX.ORG.RU
ФорумAdmin

Queue CDR

 , , dst,


0

1

Внутренний абонент 102 поговорил в очереди depsales с номером 0123123

exten=> 2,n,Queue(depsales,tTh,,,30)

В cdr это видно так

calldate|clid|src|dst|dcontext|channel|dstchannel|lastapp|lastdata|duration|billsec|disposition|amaflags|accountcode|uniqueid|userfield|peeraccount|linkedid|sequence|recordingfile 
2017-03-02 10:28:09 | 0123123 | 0123123 | 1 | menu_dept | SIP/123-00000029 | SIP/102-0000002c | Queue | depsales,tTh,,,30 | 89 | 89 | ANSWERED    | 3 | | 1488443289.41 | | | 1488443289.41 | 46 | in-2017-03-02-1028-0123123-299903-1488443289.41.wav

Стороннему приложени. это подается так:

{"calldate":"2017-03-02 10:28:09","src":"0123123","dst":"1","duration":89,"billsec":89,"uniqueid":"1488443289.41","recordingfile":"in-2017-03-02-1028-0123123-299903-1488443289.41.wav"}

Приложение обучено смотреть на «dst» и если там найдет номер сотрудника (100, 101 и т.п.) то забирать этот звонок в карточку клиента с номером 0123123.

Вопрос: Как в CDR(dst) можно поменять информацию по завершении разговора?

★★★★★

Последнее исправление: petav (всего исправлений: 1)

Правильным путем никак.

Все поля, кроме userfield, CDR-записи только на чтение, а очередь есть очередь.

Можно парсить каналы.

Можно использовать ODBC-cdr-custom. Вроде как он позволяет писать любые доп. поля. Сам не пробовал.

Можно парсить CEL.

anonymous
()

Мои мысли ниже, но может есть что-то другое:

queues.conf

[depsales](queue-default)
member => Loca/100@queue

extensions.conf

[queue]
exten=> _1XX,1,Dial(SIP/${EXTEN})
exten=> _1XX,2,Set(CDR(dst)=${EXTEN})

petav ★★★★★
() автор топика
Ответ на: комментарий от petav

если только не напрямую в базе ((

petav ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.