Поле Reason: Q.850; Cause=xx; text=bla-bla-bla - как выдрать
Добавлено: 18 мар 2012, 15:06
Всем привет.
Такая задача: в CDR(userfield) записывать коды отбоев по Q.850. Астериск их выдает, к примеру в этом SIP Response:
Вот и интересует, как выдрать из SIP Response значение поля:
И загнать в переменную? Хочу загнать потом в ${CDR(userfield)}. Дабы бородатым дядям-телефонистам, сенсеям по ОКС-7 была понятнее причина отбоя:)
${SIP_HEADER(Reason)} не канает, ибо работает только с INVITE.
Asterisk 10.2.1. Есть идеи?
Такая задача: в CDR(userfield) записывать коды отбоев по Q.850. Астериск их выдает, к примеру в этом SIP Response:
Код: Выделить всё
SIP/2.0 503 Service Unavailable
From: "3XXXXXX" <sip:3XXXXXX@XX.XX.XX.XX>;tag=r9ymemKZm09Hc
To: <sip:093XXXXXXX@YY.YY.YY.YY>;tag=as66f5b3c6
Call-ID: b7417c10-e2e3-122f-1599-0007e90acb8e
CSeq: 25222119 INVITE
Server: Session Border Controller
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH
Supported: replaces, timer
Reason: Q.850;cause=34;text="no circuit/channel available"
Content-Length: 0
Код: Выделить всё
Reason: Q.850;cause=34;text="no circuit/channel available"
${SIP_HEADER(Reason)} не канает, ибо работает только с INVITE.
Asterisk 10.2.1. Есть идеи?