Ищете объяснение полей журнала Asterisk cdr - PullRequest
1 голос
/ 13 мая 2010

Звездочка имеет следующие поля

   CREATE TABLE `cdr` (
  `calldate` datetime NOT NULL default '0000-00-00 00:00:00',
  `clid` varchar(80) NOT NULL default '',
  `src` varchar(80) NOT NULL default '',
  `dst` varchar(80) NOT NULL default '',
  `dcontext` varchar(80) NOT NULL default '',
  `channel` varchar(80) NOT NULL default '',
  `dstchannel` varchar(80) NOT NULL default '',
  `lastapp` varchar(80) NOT NULL default '',
  `lastdata` varchar(80) NOT NULL default '',
  `duration` int(11) NOT NULL default '0',
  `billsec` int(11) NOT NULL default '0',
  `disposition` varchar(45) NOT NULL default '',
  `amaflags` int(11) NOT NULL default '0',
  `accountcode` varchar(20) NOT NULL default '',
  `uniqueid` varchar(32) NOT NULL default '',
  `userfield` varchar(255) NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Большинство имен полей не требуют пояснений, однако некоторые поля содержат не требующие пояснений данные. Например, dst = "s", кто-нибудь знает документацию, которая объясняет эту и другие части данных, записанных в таблицу CDR?

Ответы [ 4 ]

3 голосов
/ 13 сентября 2010

DST - это расширение, на которое приземляется ваш звонок

2 голосов
/ 29 июня 2013

CDR покажет dst = "s", когда контекст, в котором находится вызов, не имеет другого соответствующего расширения. Иногда это используется как расширение последней инстанции, как описано Звездочка + s + расширение . В статье также упоминается использование расширения s в макросах, что также является возможной причиной. В зависимости от того, как вы настроили Asterisk, вы можете не понимать, что ваши вызовы обрабатываются макросом Asterisk stdexten , который использует только расширение s.

Один из способов увеличить cdr с целью обеспечения более четкого представления ваших потоков вызовов - это записать ваш cdr в базу данных с помощью модуля cdr_adaptive_odbc. Внесение этого изменения в адаптивный CDR дает вам возможность добавлять дополнительные столбцы в CDR. Дополнительные столбцы помогут прояснить все различные типы потоков вызовов, которые вы увидите, когда ваша диалплан становится более сложным. Если бы мы использовали stdexten в качестве примера, даже если dst = s, вы можете внести дополнительную ясность в запись cdr, заполнив другое поле cdr фактическим расширением. Это можно сделать с помощью функции cdr следующим образом: CDR (xdst) = $ {ARG2}.

1 голос
/ 13 мая 2010
0 голосов
/ 13 июня 2012

В вики есть хороший справочник по многим из этих полей: https://wiki.asterisk.org/wiki/display/AST/CDR+Fields

...