Asterisk-CDR-Viewer-Mod
Asterisk-CDR-Viewer-Mod copied to clipboard
Реальный номер источника
Возникла необходимость добавить новое поле в БД 'realsrc'. Данное поле запоминает реальный $EXTEN в случае использования конструкции exten => _X.,1,Set(CALLERID(num)=4955555555). Данная конструкция подменяет внутренний номер Asterisk на внешний DID в случае набора на внешний транк. Хотелось бы в статистике выводить: внутренний номер, внешний (CALLERID(num)) и номер В. Поле создал, alias прописал. Как теперь вывести данное поле в статистику?
В ближайшие дни будет добавлена возможность вывода своего поля из базы с заданным именем этого поля в конфиге. Т.е. это поле будет отображено в статистике и будет поиск по нему. Вроде бы это то, что вам нужно?
Как вариант заносить эти данные в userfield или accountcode, благо все есть для отображения и поиска в этом поле.
realsrc=4951234567;
Также можно дополнительные параметры сохранить. Я туда записываю инфу с какой действительно линии пришел вызов и пометку, что сделать с номером, если вызов никто не принял - recall.
Нужная штука. Потому, как при звонке через внешние транки мы "маскируем" Caller ID внутреннего номера. Но отображать в таблице нам надо реальный CID - номер (внутренний) того, кто звонил. То есть знать, кто звонил изнутри. Для этого в БД добавил поля clidmod и srcmod. И, в эти поля пишем CID до изменения. При этом, оригинальные (первоначальные) поля остаются (для данных записей) пустыми. В index.php версии v2.6.4 нужно добавить проверку на "пустость" оригинальных полей clidи src. Если они пустые, брать значения и выводить в GUI значения из clidmod и srcmod. Иначе из оригинальных clid и src. В index.php вместо formatSrc($row['src'],$row['clid']); добавил if (!empty($row['srcmod'])) { $src1 = $row['srcmod']; } else { $src1 = $row['src']; } if (!empty($row['clidmod'])) { $clid1 = $row['clidmod']; } else { $clid1 = $row['clid']; } formatSrc($src1,$clid1); При обычном отображении работает, пока не работае при выборке, когда, например запрашиваем номера за период дат.
CpServiceSpb Не совсем универсальное решение для всех пользователей. Проще, наверное, будет добавить возможность вывода столбцов с заданным именем и возможностью поиска по ним.
Уже есть такие просьбы: https://github.com/prog-it/Asterisk-CDR-Viewer-Mod/issues/43#issuecomment-351702732 https://github.com/prog-it/Asterisk-CDR-Viewer-Mod/issues/92
Тогда будет выводиться 2 столбца (например) : clid и clidmod, в случае замены clid, столбец clid будет пустое или замененный, в случае не замены, clidmod - аналогично,
а если в колонке кто звонил вместо экстеншена выдает "Неизвестно" - где указать сопоставление экстеншена и указного в нем ФИО - что бы выводило кто звонил - номер экстеншена хотя бы.
Автору ОГРОМНОЕ СПАСИБО (использую на Freebpx) очень помогло.