I'm trying to use the kamcmd tml.tc_uac_start command to send raw SIP
messages in Kamailio 5.5, but I always get a error: 400 - Invalid
headers. I've also tried sending OPTIONS messages with the same
result. I've looked for examples of sending SIP messages via kamcmd,
but can't find any.
kamcmd help tm.t_uac_start specifies the following:
kamcmd> help tm.t_uac_start
starts a tm uac using a list of string parameters: method, ruri,
dst_uri, send_sock, headers (CRLF separated) and body (optional)
Essentially my problem is I don't really know how to properly encode
these headers. How do I send special characters? Do I need to use
double quotes, single quotes, etc around the whole header? Which
characters are special? How do I encode the CRLF? I tried \r\n, but I
still get this error. It says only From: and To: are required. It's a
bit hard trying to make progress when all I ever get is one error
message. The kamailio logs are a little more helpful, and largely point
me down the road that it doesn't understand the CRLF encoding, and says
my From: header includes the To: line, so it's not separating them.
For example, I'm trying things like this:
kamcmd -v tm.t_uac_start OPTIONS sip:200@exampleserver.com:5060 . .
"From:
<sip:example@192.168.0.1>;tag=d27ca05e-1789-4774-a698-dcfe91dec9b4\r\nTo:
<sip:example@192.168.0.2>"\r\nExpires: 1200\r\nContent-Length: 0"
Nothing seems to work, so whatever the syntax I'm using must be wrong.
Just providing an example of sending SIP via kamcmd tm.t_uac_start
would likely help a huge amount.
Thanks!
--