ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Проблемы с CDR

Проблемы и их решения Asterisk как такового

Модераторы: april22, Zavr2008

Проблемы с CDR

Сообщение andrew.saff » 27 фев 2018, 19:57

Всем добрый день!
Asterisk 13.18. Есть задача писать ${HANGUPCAUSE} в CDR(userfield), все вроде бы просто, но в диалплане представленном ниже ${HANGUPCAUSE} записывается в CDR только если соединение установлено, если занято, недоступен и т. д., короче не успешный вызов, то в CDR (userfield) пусто. В консоли все в порядке - ошибок нет. Есть идеи по этому поводу ??

Вот пример диалплана:
exten => _7XXXXXXXXXX, 1, NoOp (test_hungupcause)
same => n, Dial (SIP / $ {EXTEN} @ multifon-out, 30)
same => n, Hangup ()
exten => h, 1, NoOp (hangupcause = $ {HANGUPCAUSE})
same => n, Set (CDR (userfield) = hangupcause: $ {HANGUPCAUSE})

И еще заметил, что если после Dial убрать same => n, Hangup (), то ${HANGUPCAUSE} записывается в CDR(userfield) в любом случае: отвечено, занято, недоступен и т.д, но этот самый same => n, Hangup () очень нужен по ряду причин.
Заранее огромное спасибо!
andrew.saff
 
Сообщений: 5
Зарегистрирован: 27 фев 2018, 19:33

Re: Проблемы с CDR

Сообщение ded » 27 фев 2018, 21:32

Заранее - огромная просьба начинать чтение Книги про Астериск.
Далее, медитируя при условии успешных и неуспешных вызовов над CLI - консолью, Ваш острый глаз мог бы мгновенно заметить, что если выполняется ваш диалплан где, короче не успешный вызов,
Код: выделить все
exten => _7XXXXXXXXXX, 1, NoOp (test_hAngupcause)
same => n, Dial (SIP / $ {EXTEN} @ multifon-out, 30)
same => n, Hangup ()

то никакого куска
Код: выделить все
exten => h, 1, NoOp (hangupcause = $ {HANGUPCAUSE})
same => n, Set (CDR (userfield) = hangupcause: $ {HANGUPCAUSE})
не выполняется. Странно, не правда ли?
В общем - надо Вам курить теорию, объяснять уже объяснённое - как жвачку с пола поднять пожевать.
Я вот Вам copy сделаю, а Вы paste, Огромное спасибо! а умнее от этого не станете.
Код: выделить все
exten => _7XXXXXXXXXX, 1, NoOp (test_hAngupcause)
same => n,Dial (SIP / $ {EXTEN} @ multifon-out, 30) ; а вот так завязывайте писать! Надо (SIP/multifon-out/${EXTEN})
same => n,NoOp (hangupcause = $ {HANGUPCAUSE})
same => n,Set(CDR(userfield)=hangupcause: ${HANGUPCAUSE})
same => n,Hangup ()
ded
 
Сообщений: 15801
Зарегистрирован: 26 авг 2010, 19:00

Re: Проблемы с CDR

Сообщение andrew.saff » 28 фев 2018, 01:29

Да, весело у Вас тут встречают..... ))))
Ну да ладно...
Медитируя над CLI - консолью, мой острый глаз мгновенно заметиил скриншоты Hangup_ANSWERED Изображение и Hangup_BUSY Изображение, которые получились по диалплану представленному мной ранее и как следствие записи в CDR вида Hangup_CDR Изображение. Эктеншен h все же выполняется ))), впрочем ожидаемо https://wiki.asterisk.org/wiki/display/ ... Extensions
А вот No_Hangup_BUSY Изображение и No_Hangup_ANSWERED Изображение это уже без same => n,Hangup() в exten => _7XXXXXXXXXX,1,... и как следствие No_Hangup_CDR Изображение.
В любезно представленном Вами copy - paste, скорее всего пропущена опция g для Dial ?
А про Огромное спасибо! - умнее от этого конечно не стану...., но вежливее точно буду!
andrew.saff
 
Сообщений: 5
Зарегистрирован: 27 фев 2018, 19:33

Re: Проблемы с CDR

Сообщение andrew.saff » 28 фев 2018, 09:43

Что-то изображения не прикрепились :(
Hangup_ANSWERED http://ibb.co/fLuYOH и Hangup_BUSY http://ibb.co/hNpNHc и Hangup_CDR http://ibb.co/iy5Jqx
No_Hangup_BUSY http://ibb.co/ipqjVx и No_Hangup_ANSWERED http://ibb.co/bBgrAx и No_Hangup_CDR http://ibb.co/mtAwcc
andrew.saff
 
Сообщений: 5
Зарегистрирован: 27 фев 2018, 19:33

Re: Проблемы с CDR

Сообщение virus_net » 28 фев 2018, 09:54

1. Для этого в форуме и существует кнопка "Предпросмотр".
Не использование кнопки "Предпросмотр", а так же других (таких как CODE) и размещение неформатированного сообщения = наплевательское отношение к остальным читателям = флаг #1.

2. Ессно не прикрепилось:
Mixed Content: The page at 'https://forum.asterisk.ru/posting.php?mode=reply&f=3&t=11330' was loaded over HTTPS, but requested an insecure image 'http://ibb.co/fLuYOH'.

При том, что у хоста ibb.co есть HTTPS, а так же что ссылка должна заканчиваться на .img|.jpg|.gif и т.п. => форум FAQ

Не понимание очевидного = флаг #2.

3. ЗАЧЕМ текст выкладывать в виде картинки ? Просто скопировать и вставить, не ? Религия ? Иное ?
Картинки вместо текста = флаг #3.

По совокупности флагов = уже полностью отсутствует желание помогать.

andrew.saff писал(а):Да, весело у Вас тут встречают..... ))))

И так со всеми кто:
    а) не читал правил, с которыми согласился, при регистрации
    б) не открывал книжку по Asterisk
    в) плевать хотел на тех, кто будет читать его сообщение, т.е. удобно им будет его читать или нет
    г) рассказывать каждому встречному, из поста в пост, про азы работы Asterisk
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Проблемы с CDR

Сообщение andrew.saff » 28 фев 2018, 10:22

1. Пользовался, предпросмотр был
2. Может где и тупанул, было то https )))
3. Скажу: специально сделал скрины, а то кроме моего острого глаза еще чего найдут.... ))))

а) читал и согласился )))
б) а Вы наверное рядом стояли, когда я книжку не открывал и wiki.asterisk.org не читал ? )))
в) да я и не собирался, даже в мыслях не было, с телефона сижу, компа нет под рукой...
г) да не надо мне про азы рассказывать, я же не в школу пришел...

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

Ну да ладно не в этом суть, я все про свою проблему: еще заметил, что не важно same => n,Hangup() или банальный same => n,NoOp() после Dial, не пишет в CDR(userfield) и все....
andrew.saff
 
Сообщений: 5
Зарегистрирован: 27 фев 2018, 19:33

Re: Проблемы с CDR

Сообщение ded » 28 фев 2018, 12:33

andrew.saff писал(а):В любезно представленном Вами copy - paste, скорее всего пропущена опция g для Dial ?

Если предполагается продолжение текщего диалплана - то да, нужна опция g
Если Ваш вариант - с экстеном h, то не нужна.

По поводу hangup cause: рассмотрим варианты
1) абонент 1000 набирал мобильный 79012345678 и сам положил трубку - не дождался или услышал "Абонент разговаривает по другой линии..."
2) абонент 1000 набирал мобильный 79012345678, а мобильный абонент увидел кто звонит и нажал Cancel, и 1000 огорчился и тоже положил трубку.
Какой статус должен быть в вашей переменной CDR(userfield) по вашему?
В общих чертах: если два просто абонента 1000 и 1234 поговорили, в одном случае 1000 первый положил трубку, а во втором - 1234 первый положил, что должно писаться в качестве hangup cause?

У Вас в примерах кода много лишних пробелов, это будет мешать.. Изучите синтаксис.
ded
 
Сообщений: 15801
Зарегистрирован: 26 авг 2010, 19:00

Re: Проблемы с CDR

Сообщение andrew.saff » 01 мар 2018, 20:25

Сорян, что не ответил сразу... не было возможности.
Вот ребусы начались ))) - это я люблю )))
1. дырка от бублика
2. если 1000 успел первее 79012345678, то см. п.1, а если не успел, то BUSY она же 17
Но это все не о том...
Может я конечно не корректно написал, но мне надо получать HANGUPCAUSE от стороны Б, то есть то, что ответила сторона Б на мой Dial.
Кстате, в моих скриншотах, если Вы заметили, от стороны Б HANGUPCAUSE приходят и пытаются записаться в CDR, но безрезультатно...
У меня такой вопрос: а есть возможность протестить получение HANGUPCAUSE от стороны Б именно с записью в CDR? И да сторона А дожидается HANGUPCAUSE от стороны Б.
Да, еще... с изучением синтаксиса проблем нет ))), как уже писал ранее - пока сижу с телефона, именно по этому и возникают проблемы с пробелами и тэгами...
andrew.saff
 
Сообщений: 5
Зарегистрирован: 27 фев 2018, 19:33


Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 36

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH