Hi List
I have to parse a customer header:
P-CH-Origin: intl=example.com;foo=bar;boo=whatever
I'm interested in the value of the intl parameter.
Unfortunately $(hdr(P-CH-Origin){param.value,intl}) does not seem to
work, if this is the first parameter.
Is there a built in function to do this?
Mit freundlichen Grüssen
-Benoît Panizzon-
--
I m p r o W a r e A G - Leiter Commerce Kunden
______________________________________________________
Zurlindenstrasse 29 Tel +41 61 826 93 00
CH-4133 Pratteln Fax +41 61 826 93 01
Schweiz Web http://www.imp.ch
______________________________________________________
Hi
Today I received two marketing emails inviting me to the UCX Expo in
London from I company I was not aware having any business relationship
with.
After searching for that company name in my email archive, I stumbled
over a post from them in this mailing list.
Just out of curiosity, have others on this list also received this
invitation and in the past more marketing emails from the same source?
I guess posting to this list does not imply, I have given permission
to reader of this list to store my personal data in a marketing
database of their employer and use my data for marketing purposes,
right?
Mit freundlichen Grüssen
-Benoît Panizzon-
--
I m p r o W a r e A G - Leiter Commerce Kunden
______________________________________________________
Zurlindenstrasse 29 Tel +41 61 826 93 00
CH-4133 Pratteln Fax +41 61 826 93 01
Schweiz Web http://www.imp.ch
______________________________________________________
Hello community!
I would like to ask for your help in solving a case. I thank you in advance for any collaboration.
I have the following setup:
Asterisk (internal) → Kamailio (Proxy) → SIP Provider (PSTN)
Both Asterisk and Kamailio are under my responsibility.
Problem:
When I initiate a call from Asterisk, I use Kamailio as the outbound proxy. The INVITE is sent to the SIP provider, and the dialogue proceeds normally until the provider responds with a 200 OK, indicating the call was answered.
However, the 200 OK received from the provider contains a modification in the Contact header, introducing a new IP address into the dialogue. Presumably, this new IP is where the subsequent ACK should be sent.
The issue arises when Kamailio receives this 200 OK: it overwrites the Contact field, replacing the received IP with its own LAN IP, used for communication with Asterisk. As a result, Asterisk sends the ACK back to Kamailio, which, instead of forwarding it to the new IP from the Contact in the 200 OK, sends it to the SIP provider at the same address used for the initial INVITE.
Since the ACK does not reach the IP expected by the provider (the new IP introduced in the Contact), the provider continues to send repeated 200 OK responses, until the call is disconnected due to a timeout, as a valid ACK was never received.
I looked for conceptual answers in RFC 3261 to support my conclusions, but I couldn’t clearly relate the information there to the behavior observed in this scenario.
Key Questions:
Should Kamailio forward the ACK to the new IP provided in the Contact header of the 200 OK?
Is the SIP provider correct in expecting the ACK to be sent to a different address from the original one used in the INVITE?
How can I configure Kamailio to ensure the dialogue proceeds correctly and the ACK is sent to the correct IP?
Hello community!
I would like to ask for your help in solving a case. I thank you in advance for any collaboration.
I have the following setup:
Asterisk (internal) → Kamailio (Proxy) → SIP Provider (PSTN)
Both Asterisk and Kamailio are under my responsibility.
Problem:
When I initiate a call from Asterisk, I use Kamailio as the outbound proxy. The INVITE is sent to the SIP provider, and the dialogue proceeds normally until the provider responds with a 200 OK, indicating the call was answered.
However, the 200 OK received from the provider contains a modification in the Contact header, introducing a new IP address into the dialogue. Presumably, this new IP is where the subsequent ACK should be sent.
The issue arises when Kamailio receives this 200 OK: it overwrites the Contact field, replacing the received IP with its own LAN IP, used for communication with Asterisk. As a result, Asterisk sends the ACK back to Kamailio, which, instead of forwarding it to the new IP from the Contact in the 200 OK, sends it to the SIP provider at the same address used for the initial INVITE.
Since the ACK does not reach the IP expected by the provider (the new IP introduced in the Contact), the provider continues to send repeated 200 OK responses, until the call is disconnected due to a timeout, as a valid ACK was never received.
I looked for conceptual answers in RFC 3261 to support my conclusions, but I couldn’t clearly relate the information there to the behavior observed in this scenario.
Key Questions:
*Should Kamailio forward the ACK to the new IP provided in the Contact header of the 200 OK?
*Is the SIP provider correct in expecting the ACK to be sent to a different address from the original one used in the INVITE?
*How can I configure Kamailio to ensure the dialogue proceeds correctly and the ACK is sent to the correct IP?
Hello all,
We would like to inform you about a recent PR<https://github.com/kamailio/kamailio/pull/3961> (https://github.com/kamailio/kamailio/pull/3961) that introduces changes related to the dialog flag handling.
Summary of Changes:
* Removal of dlg_flag: The dlg_flag has been removed from the dialog module.
*
Replace with call of dlg_manage(): We recommend using the function dlg_manage() as a replacement to handle the necessary functionality. Please refer to the updated documentation for more details.
Affected Modules:
1.
These modules only required updated documentation that references the use of dlg_flag instead dlg_manage().
* acc
* qos
* pua_dialoginfo
* sst
1.
Usage Changes (Dialog Flag Handling Removed):
In these modules, the code related to reading and checking the dialog flag has been removed. Additionally, the setting of the message internal flag has been removed. If you need to track the dialog or call state, you MUST now call dlg_manage() explicitly in the kamailio config
* call_control
* cnxcc
* mediaproxy
* nat_traversal
Please review the updated documentation for further guidance on the use of dlg_manage().
Feel free to reach out with any questions, concerns and report any issue due to this change.
Best regards,
Xenofon Karamanos
Hello,
I am using rtpengine to encrypt and decrypt DTLS and SDES audio streams for my calls. I have a set of rtpengine instances running, configured using a database, such that it is easy to scale up on demand. This works well for initiating a call and balancing load across multiple instances but I want to be able to recover from rtpengine failure.
I have looked at configuring rtpengine with a redis service but do not believe that to be helpful in this case as im using encrypted media and because the configuration of rtpengine with redis has a lot of overheads, limits scaling and requires non standard configuration of a redis cluster.
I would like to be able to re-anchor media streams instead of relying on rtpengine to synchronise itself across a redis cluster. For this to work, i believe i would have to use the uac module to send a reINVITE and I speculate that i would need to use an xhttp event to trigger this remotely when a failure is detected.
I am unclear, though, how to get to a specific call within kamailio from the xhttp route in order to do anything to it, if i even need to, and i am nuclear how to make the rtpengine module select a new node for sdp for the reinvite?
How can i achieve my goal?
Perhaps it would be possible to modify the rtpengine module itself to support generating a reinvite and selecting a new node on receipt of an rpc request?
Hoping someone can help me find a way forward
With every blessing,
Daniel
Hi,
I am using kamailio 5.8.3 as an IMS-PCSCF. On handling SIP INVITE (and
response), it sends Rx AAR to PCRF for bearer establishment.
For mobile-terminated call, it was found that the call was dropped by
handset within several seconds after ringing for some handsets.
The corresponding pcap capture is attached for reference.
From the pcap capture, it was found that in the Rx AAR request sent (packet
11), in the Media-Sub-Component Flow-Description,
the "permit out from ip/port" and "permit in to ip/port" were set to
202.0.169.182 port 24428 instead of 10.51.0.15 port 31124.
202.0.169.182 port 24428 is the one in the incoming INVITE sdp from
S-CSCF (packet 2);
10.51.0.15 port 31124 is the one in the processed INVITE sdp sent to UE
(packet 5);
Also, the sdp data of "offer" inside AAR was set to the sdp in the incoming
INVITE from S-CSCF instead of the sdp in the processed INVITE sent to UE.
Is that correct? Please advice.
Thank you.
Regards,
Hong