Страница 1664 из 1665
Добавлено: 09 сен 2025, 15:29
notify_ded_bot
А тебе нужен чисто статус вызова в SIP?
Да, запускаю через Астер дозвон - мне надо понять, что звонок не произошёл из-за превышения канальности
Добавлено: 09 сен 2025, 15:29
notify_ded_bot
Да без проблем можно запилить запись в кастомное поле cdr последний sip релиз. Если об этом речь идет.
Во!
Добавлено: 09 сен 2025, 15:30
notify_ded_bot
Да, именно он - а каким программным способом можно получить этот статус?
https://docs.asterisk.org/Configuration/Miscellaneous/Hangup-Cause/#example_1
строка с SIP кодом и текстом должна быть в ${HANGUPCAUSE(${item},tech)}
разумеется это про что-то типа 4xx, 5xx, 6xx.
Добавлено: 09 сен 2025, 15:31
notify_ded_bot
https://docs.asterisk.org/Configuration/Miscellaneous/Hangup-Cause/#example_1
строка с SIP кодом и текстом должна быть в ${HANGUPCAUSE(${item},tech)}
разумеется это про что-то типа 4xx, 5xx, 6xx.
Спасибо!
Добавлено: 09 сен 2025, 15:32
notify_ded_bot
Всем привет!
Подскажите, а можно ли в CDR получать не только результат звонка, но и ответ от SIP в случае ошибки?
https://docs.asterisk.org/Certified-Asterisk_20.7_Documentation/API_Documentation/Dialplan_Functions/HANGUPCAUSE/
Ответ будет вида SIP/2.0 486 Busy Here
Также, если вызов сброшен раньше, он может вернуть SIP/2.0 180 Ringing, к примеру
"See also" в инструкции также надо посмотреть
Добавлено: 09 сен 2025, 15:33
notify_ded_bot
Будешь получать что-то типа SIP 484 Address Incomplete, SIP 200 OK и через CDR(release) писать в CDR. Только в базе надо соотвествующий столбец создать.
Добавлено: 09 сен 2025, 15:33
notify_ded_bot
Супер, спасибо!
Добавлено: 09 сен 2025, 15:33
notify_ded_bot
В целом, палка-веревка )
Добавлено: 09 сен 2025, 15:37
notify_ded_bot
У Скайпа, не к ночи будь помянут, можно было звонить без покупки номера.
Добавлено: 09 сен 2025, 15:40
notify_ded_bot
Всем привет!
Подскажите, а можно ли в CDR получать не только результат звонка, но и ответ от SIP в случае ошибки?
да
exten => outbound_handler,1,NoOp()
same => n,Set(HANGUPCAUSE_STRING=${HANGUPCAUSE_KEYS()})
same => n,Set(CDR(sipcause)=${HANGUPCAUSE(${HANGUPCAUSE_STRING},tech)})
same => n,Return()