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

Elastix - детализация вх звонков

Добавлено: 06 апр 2016, 14:01
Kir
Всем здравствуйте!
Есть Elastix на котором настроено 15 номеров, каждый отдельным sip транком.
Нужно периодически получать статистику по Входящим звонкам на конкретные номера.
Через CDR report можно собирать статистику только по исходящим звонкам, либо я не там смотрел.

Подскажите, пожалуйста, как решить данный вопрос.
Заранее спасибо за ответы!

Re: Elastix - детализация вх звонков

Добавлено: 06 апр 2016, 18:00
ded
Не ясно какая у Вас версия Эластикс, но вот в современных версиях FreePBX (которая является частью Эластикса) в CDR репортах есть колонка DID, в ней откладываются номера на которрые звонили из мира, и фильтровать также можно по этому полю.

Re: Elastix - детализация вх звонков

Добавлено: 08 апр 2016, 11:06
Kir
Версия Elastix 2.5.0
В CDR есть поля: Кому, От кого, Канал источник, Канал приемник, Account Code.
При входящем звонке, номер на который звонят (номер Б), указывается в поле Канал источник, в виде SIP/tel_229XXXX-00000d25 (где tel_229XXXX - это название транка).

Что странно, от данного оператора получаем 5 номеров каждый отдельным транком. С исходящими АОНами проблем нет, определяется тот номер, который мы подставляем.
Но при совершении Входящего звонка на любой из 5-ти номеров от этого провайдера, в CDR пишется что звонят всегда на один и тот же номер - Канал источник SIP/tel_229XXXX-00000XXX.
Хотя номера совершенно из разных пулов - 741ХХХХ, 357ХХХХ и тд. Но определяется только один - 229ХХХХ.

У кого-нибудь есть мысли куда копать?
Оператор говорит что у него все в порядке.

Re: Elastix - детализация вх звонков

Добавлено: 08 апр 2016, 11:45
ded
Завязывайте c АОНами.
https://ru.wikipedia.org/wiki/%D0%90%D0%9E%D0%9D

Если звонят всегда на один и тот же номер - Канал источник SIP/tel_229XXXX-00000XXX, то это не номер, а SIP пир у вас так дурацки прописан

Код: Выделить всё

[tel_229XXXX]
host=
type=
secret=
....
Если смотрите в CLI при входящем - возможно увидите DID на который идёт звонок, и, вполне можно выцепить из переменной.
Стандартно входящие обрабатываются через контексты from-pstn, ext-did

Код: Выделить всё

*CLI> dialplan show ext-did
[ Context 'ext-did' created by 'pbx_config' ]
  'foo' =>          1. Noop(bar)                                  [pbx_config]
  Include =>        'ext-did-custom'                              [pbx_config]
  Include =>        'ext-did-0001'                                [pbx_config]
  Include =>        'ext-did-0002'                                [pbx_config]
и это видно при прохождении входящих. Вот там и есть ваши DIDs в качестве
exten => 229XXXX,1,...
exten => 741ХХХХ,1,...
exten => 357ХХХХ,1,...

Re: Elastix - детализация вх звонков

Добавлено: 08 апр 2016, 12:41
Kir
Опции PEER (аналогично для каждого транка):
username=ХХХХ
type=friend
secret=ХХХХ
qualify=yes
insecure=port,invite
host=87.249.Х.Х
fromuser=ХХХХ
dtmfmode=rfc2833
disallow=all
allow=alaw

________________________________________________________________
Нашел закономерность. Как писал выше, что у нас несколько блоков номеров от разных операторов.
Так вот какой транк стоит выше других, тот номер и отображается в cdr. Эти "главные" номера выделил на скриншоте.

________________________________________________________________
Подскажите, плиз, какой командой cli выводить статистику по звонкам?

Re: Elastix - детализация вх звонков

Добавлено: 08 апр 2016, 14:19
ded
ded писал(а): это не номер, а SIP пир у вас так дурацки прописан

Код: Выделить всё

[tel_229XXXX]
host=
type=
secret=
....
Если смотрите в CLI при входящем - возможно увидите DID на который идёт звонок, и, вполне можно выцепить из переменной.
Стандартно входящие обрабатываются через контексты from-pstn, ext-did

Код: Выделить всё

*CLI> dialplan show ext-did
[ Context 'ext-did' created by 'pbx_config' ]
  'foo' =>          1. Noop(bar)                                  [pbx_config]
  Include =>        'ext-did-custom'                              [pbx_config]
  Include =>        'ext-did-0001'                                [pbx_config]
  Include =>        'ext-did-0002'                                [pbx_config]
и это видно при прохождении входящих. Вот там и есть ваши DIDs в качестве
exten => 229XXXX,1,...
exten => 741ХХХХ,1,...
exten => 357ХХХХ,1,...

Re: Elastix - детализация вх звонков

Добавлено: 08 апр 2016, 14:32
Kir
dialplan show ext-did-0002 - получаю перечень всех заведенных номеров. Это значит что все DID есть на станции?
Как это использовать чтобы решить данную проблему?



[ Context 'ext-did-0002' created by 'pbx_config' ]
'229ХХХХ' => 1. Set(__FROM_DID=${EXTEN}) [pbx_config]
2. Gosub(app-blacklist-check,s,1()) [pbx_config]
3. Set(CDR(did)=${FROM_DID}) [pbx_config]
4. ExecIf($[ "${CALLERID(name)}" = "" ] ?Set(CALLERID(name)=${CALLERID(num)})) [pbx_config]
5. Set(CHANNEL(musicclass)=new) [pbx_config]
6. Set(__MOHCLASS=new) [pbx_config]
7. Set(__CALLINGPRES_SV=${CALLERPRES()}) [pbx_config]
8. Set(CALLERPRES()=allowed_not_screened) [pbx_config]
9. Macro(prepend-cid,Heute) [pbx_config]
[dest-ext] 10. Goto(timeconditions,7,1) [pbx_config]
'287ХХХХ' => 1. Set(__FROM_DID=${EXTEN}) [pbx_config]
2. Gosub(app-blacklist-check,s,1()) [pbx_config]
3. Set(CDR(did)=${FROM_DID}) [pbx_config]
4. ExecIf($[ "${CALLERID(name)}" = "" ] ?Set(CALLERID(name)=${CALLERID(num)})) [pbx_config]
5. Set(CHANNEL(musicclass)=new) [pbx_config]
6. Set(__MOHCLASS=new) [pbx_config]
7. Set(__CALLINGPRES_SV=${CALLERPRES()}) [pbx_config]
8. Set(CALLERPRES()=allowed_not_screened) [pbx_config]
9. Macro(prepend-cid,Clean_boot) [pbx_config]
[dest-ext] 10. Goto(timeconditions,3,1) [pbx_config]

Re: Elastix - детализация вх звонков

Добавлено: 08 апр 2016, 15:08
ded
Стандартными средствами (поставить птичку, посыпать волшебный порошок) - никак.
Судя по Вашим вопросам - Вы сами не справитесь. Вы не видите, например, что в вашем же выхлопе есть
Set(CDR(did)=${FROM_DID})
то есть, в таблице CDR MySQL записываются те самые номера. Но не выводятся в репорте на вэбке.
Всё что надо - дополнить вывод этого значения в репорте на вэбке. Работа для начинающего РНР-программера.
Бесплатно делать нельзя, религия.

Re: Elastix - детализация вх звонков

Добавлено: 13 апр 2016, 16:22
Kir
Попробовал реализовать отчет через asterisk cdr viewer.
Звонки в mysql попадают. ACDR скачала и установил в var/www/. Аллиас скопировал в httpd.
В браузер набираю http://ip астера/acdr/ , но открывается пустая страница. Без ошибок, просто пусто.
Стало даже интересно где ошибся. Подскажите, пожалуйста, в какую строну копать что перепроверить?

Re: Elastix - детализация вх звонков

Добавлено: 13 апр 2016, 16:58
Wapo
В логах апача увидите что еще не хватает в настройке.