hello dears ,
i'm trying to use "http_client" module to post SMS from kamailio to kannel using the following configuration :
.......
modparam("http_client", "httpcon", "kannel=>http://username:password@127.0.0.1:443")
..........
.........
http_connect("kannel","cgi-bin/sendsms?user=username&pass=password&charset=utf-16&coding=2&from=$avp(from)&to=$avp(to)&text=$(avp(text){s.escape.user})","$var(result)");
.......
And this test success for English characters & phrases, but when i'm trying to send Arabic or Chinese characters it only success if the content of the SMS only has one word.
in other-word i mean when i'm trying to send more than one Arabic word with a space between each word it reply with HTTP error code 400.
so do you have any ideas about this problem ??
Hello.
I have been trying to use kamailio+rtpproxy to handle freeswitch. So far, I am able to handle the sip routing via Kamailio, however, I am not able to get the RTP portion to go through my kamailio server. it seems once Kamailio handle the initial sip, there is a 1 to 1 communication between freeswitch and my client (phone)
Has anyone solved this problem?
Hi ,
Can someone explain me what is \1 and \3 doing in the subst expression
?
Input : From: <sip:anonymous@10.211.160.168
>;tag=41008079_nab_FFFF_isp_FFFF_cco_FFFF_igo_FFFF_mgt_78DD
subst('/^From:(.*)10.211.160.168(.*)>(.*)/From:\110.211.160.174>\3/ig');
Output : From: <sip:anonymous@10.211.160.174
>;tag=41008079_nab_FFFF_isp_FFFF_cco_FFFF_igo_FFFF_mgt_78DD
Regards,
Mahesh.b
Hi
I know that this is not question too much close to the kamialio users but
mostly losed to the RFC specifiacations but this community looks like
pretty much close to it that is why I want to ask this question here,
that's why sorry and thanks for help in this question:
I have a situation when provider sends me 200 response with Request-Route
header and changed contact header:
Means response comes from
1.1.1.1:5060
Request-Route contains:
1.1.1.1:5060
But Contact contains:
1.1.1.1:5061
My ACK (handled by kamailio) goes to the 1.1.1.1:5060 as it setted up at
the Route Hedaer of ACK (because of Request-Route)
but provider says me that i should use Contact for the ACK
I was surprised because of
https://tools.ietf.org/html/rfc3261#section-12.2.1.1
and
https://tools.ietf.org/html/rfc3261#section-8.1.2
Says that I should use Route header for reaching destination
But I was surprised second time when tested this scenario with FreeSwitch
and another softphone (as UA) because of it both sends ACK to the based on
Contact address and ignores Route
I just wanna ask if I missed some scenario in the RFC when it is described
to ignore Route header for the UA
(I know that I use kamailio on my case as proxy server but should
understand finally who should make changes with packet handling)
Thanks one more time for the resonses and sorry one more time for the goal
of this question that belongs to the kamailio just partially
Hi,
I am trying to configure kamailio to play early media and i am using
rtpproxy_stream2uac(), but the audio file plays only after the call is
connected.
How to use rtpproxy_stream2uac() to play only the early media.
Thank you
vinod.M.N
Hi,
I would like to setup up my SIP server / PBX for my business, now we have
some candidates:
1. Open source solution:
- Asterisk PBX,
- Freeswitch PBX
- Kamailio
- OpenSIPS
2. Business solution:
- Brekeke PBX(https://www.brekeke.com
- Vodia PBX(https://www.vodia.com)
- 3CX PBX(https://www.3cx.com)
- PortSIP PBX(https://www.portsip.com/portsip-pbx)
*Below features are mandatory for our project:*
- Video call recording (For the finance industry, the video recording is
necessary)
- Push notifications for mobile app
- Multi-tenant support
- Both Linux and Windows support (at 1st stage, we would like to run it
on Windows server and migrate it to Linux server in the future if users
increased), the Linux support is required, the Windows support is preferred.
We have some questions:
1. Does the the Kamailio can works as a PBX ?
2. If yes, does the Kamailio support push notifications and video
recording ?
3. Does the Kamailio can works for Multi-tenant ?
4. Does Kamailio support Windows ?
So far according to our research, with the business solution:
- The Vodia PBX, PortSIP PBX and brrekeke all are support Multi-tenant,
the 3CX is not.
- The 3CX and PortSIP support push notifications,
- The PortSIP also provide client SDK, with 3CX we only see the 3CX
provide client apps, does 3CX has client SDK provided ?
- It's seems all these PBX are support video recording ?
- The PortSIP PBX and 3CX both support Linux.
Please help me to make the decision, base on your experiences, which one
(open source or business solution) is good to us ? I'm really new to
VoIP...
Thanks in advance.
Best regards,
Hi!
I'm using linphone 3.6.1 as SIP client and Kamailio 4.4.4 as proxy
server and registrar.
And every time I try to change online status (presence) in linphone
client, I see following error messages in kamailio server log:
ERROR: presence_xml [add_events.c:167]: xml_publ_handl(): bad body format
ERROR: presence [publish.c:443]: handle_publish(): in event specific publish handling
ERROR: tm [t_reply.c:533]: _reply_light(): ERROR: _reply_light: can't generate 500 reply when a final 415 was sent out
ERROR: sl [sl.c:269]: send_reply(): failed to reply stateful (tm)
ERROR: presence [utils_func.c:146]: send_error_reply(): sending 500 Server Internal Error reply
ERROR: presence [publish.c:492]: handle_publish(): failed to send error reply
So it looks like kamailio is not able to parse presence change which is
linphone doing. I captured traffic via tcpdump what linphone sends:
21:58:58.704792 IP (tos 0x68, ttl 64, id 64109, offset 0, flags [DF], proto UDP (17), length 32)
LINPHONE_IP_ADDRESS.5060 > KAMAILIO_IP_ADDRESS.5060: SIP
21:58:58.704919 IP (tos 0x68, ttl 64, id 64110, offset 0, flags [DF], proto UDP (17), length 752)
LINPHONE_IP_ADDRESS.5060 > KAMAILIO_IP_ADDRESS.5060: SIP, length: 724
PUBLISH sip:USER@HOST SIP/2.0
Via: SIP/2.0/UDP LINPHONE_IP_ADDRESS:5060;rport;branch=z9hG4bK2049418743
From: User <sip:USER@HOST>;tag=184282924
To: User <sip:USER@HOST>
Call-ID: 1435474953
CSeq: 26 PUBLISH
Content-Type: application/pidf+xml
Max-Forwards: 70
User-Agent: Linphone/3.6.1 (eXosip2/4.1.0)
Expires: 600
Event: presence
Content-Length: 353
<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model" xmlns:rpid="urn:ietf:params:xml:ns:pidf:rpid" entity="User <sip:USER@HOST>">
<tuple id="sg89ae">
<status><basic>closed</basic></status>
<contact priority="0.8">User <sip:USER@HOST></contact>
</tuple>
</presence>
21:58:58.710097 IP (tos 0x10, ttl 53, id 10255, offset 0, flags [none], proto UDP (17), length 473)
KAMAILIO_IP_ADDRESS.5060 > LINPHONE_IP_ADDRESS.5060: SIP, length: 445
SIP/2.0 407 Proxy Authentication Required
Via: SIP/2.0/UDP LINPHONE_IP_ADDRESS:5060;rport=5060;branch=z9hG4bK2049418743;received=EXTERNAL_IP_ADDRESS
From: User <sip:USER@HOST>;tag=184282924
To: User <sip:USER@HOST>;tag=515cb47c4c34ffa85b598d6b25676122.744d
Call-ID: 1435474953
CSeq: 26 PUBLISH
Proxy-Authenticate: Digest realm="HOST", nonce="NONCE"
Server: kamailio (4.4.4 (x86_64/linux))
Content-Length: 0
21:58:58.718147 IP (tos 0x68, ttl 64, id 64111, offset 0, flags [DF], proto UDP (17), length 940)
LINPHONE_IP_ADDRESS.5060 > KAMAILIO_IP_ADDRESS.5060: SIP, length: 912
PUBLISH sip:USER@HOST SIP/2.0
Via: SIP/2.0/UDP LINPHONE_IP_ADDRESS:5060;rport;branch=z9hG4bK1165141043
From: User <sip:USER@HOST>;tag=184282924
To: User <sip:USER@HOST>
Call-ID: 1435474953
CSeq: 27 PUBLISH
Proxy-Authorization: Digest username="USER", realm="HOST", nonce="NONCE", uri="sip:USER@HOST", response="RESP", algorithm=MD5
Content-Type: application/pidf+xml
Max-Forwards: 70
User-Agent: Linphone/3.6.1 (eXosip2/4.1.0)
Expires: 600
Event: presence
Content-Length: 353
<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model" xmlns:rpid="urn:ietf:params:xml:ns:pidf:rpid" entity="User <sip:USER@HOST>">
<tuple id="sg89ae">
<status><basic>closed</basic></status>
<contact priority="0.8">User <sip:USER@HOST></contact>
</tuple>
</presence>
21:58:58.781668 IP (tos 0x10, ttl 53, id 10259, offset 0, flags [none], proto UDP (17), length 380)
KAMAILIO_IP_ADDRESS.5060 > LINPHONE_IP_ADDRESS.5060: SIP, length: 352
SIP/2.0 415 Unsupported media type
Via: SIP/2.0/UDP LINPHONE_IP_ADDRESS:5060;rport=5060;branch=z9hG4bK1165141043;received=EXTERNAL_IP_ADDRESS
From: User <sip:USER@HOST>;tag=184282924
To: User <sip:USER@HOST>;tag=97d8e785fdf42bf9622a64c13c504961-3901
Call-ID: 1435474953
CSeq: 27 PUBLISH
Server: kamailio (4.4.4 (x86_64/linux))
Content-Length: 0
I replaced ip addresses in packets by KAMAILIO_IP_ADDRESS,
LINPHONE_IP_ADDRESS and EXTERNAL_IP_ADDRESS strings and also SIP account
by USER@HOST. Maybe it helps you.
Any idea why kamailio refuse presence update and reports those error
into error log?
Or is there any special setting which is needed for linphone or other
SIP clients for online status / presence support?
--
Pali Rohár
pali.rohar(a)gmail.com