I have TEXT call from cust1@somedomain to Kamailio. I have an agent who is logged in, but is not in any call yet.
I want now refer cust1@somedomain to talk to agent directly. How do I do that?
I tried - dlg_bridge("$dlg(from_contact)", "$var(agentSipAddress)","");
I get an "audio call" from "Kamailio" to customer, but nothing happens on the agent side.
I tried "dlg_refer" as well but nothing happens at all.
I am attaching Kamailio log / my config files for reference.
Should I handcraft "Refer" message using uac module and send to "customer" instead?
Please suggest.
Thanks
Pranathi Venkatayogi
System Developer II
(520) 745-9447 x4466
www.cyracom.com<http://www.cyracom.com/>
Join us: [cid:image001.gif@01D1C9C9.C4E8B6D0] <https://www.facebook.com/pages/CyraCom-LLC/134704783312720> [cid:image002.gif@01D1C9C9.C4E8B6D0] <https://twitter.com/cyracom> [cid:image003.gif@01D1C9C9.C4E8B6D0] <http://www.linkedin.com/company/cyracom> [cid:image004.gif@01D1C9C9.C4E8B6D0] <http://www.cyracom.com/blog/>
[cid:image005.png@01D1C9C9.C4E8B6D0]
DISCLAIMER: This e-mail and any attached content may contain confidential or privileged material delivered for the sole use of the intended recipient(s). Any review, use, distribution or disclosure by others is strictly prohibited. If you are not the intended recipient (or authorized to receive for the recipient), please contact the sender immediately by reply e-mail and delete all copies of this message. It is the recipient's responsibility to scan this e-mail and any attachments for viruses. The content of this e-mail message, including any attachments, does not comprise a contract or a portion of a contract, and so does not bind CyraCom International, Inc. or any of its agents or subsidiaries. CyraCom, LLC and Voiance Language Services, LLC are wholly owned subsidiaries of CyraCom International, Inc.
I am encountering "500 I'm terribly sorry, server error occurred" . However I don't see this message in the Kamailio.log or anything related to find the root cause.
I am attaching herewith the packet capture and the entire Kamailio log and the config files.
Can someone please shed some light how do I go about debugging this?
Pranathi Venkatayogi
System Developer II
(520) 745-9447 x4466
www.cyracom.com<http://www.cyracom.com/>
Join us: [cid:image001.gif@01D1C9C9.C4E8B6D0] <https://www.facebook.com/pages/CyraCom-LLC/134704783312720> [cid:image002.gif@01D1C9C9.C4E8B6D0] <https://twitter.com/cyracom> [cid:image003.gif@01D1C9C9.C4E8B6D0] <http://www.linkedin.com/company/cyracom> [cid:image004.gif@01D1C9C9.C4E8B6D0] <http://www.cyracom.com/blog/>
[cid:image005.png@01D1C9C9.C4E8B6D0]
DISCLAIMER: This e-mail and any attached content may contain confidential or privileged material delivered for the sole use of the intended recipient(s). Any review, use, distribution or disclosure by others is strictly prohibited. If you are not the intended recipient (or authorized to receive for the recipient), please contact the sender immediately by reply e-mail and delete all copies of this message. It is the recipient's responsibility to scan this e-mail and any attachments for viruses. The content of this e-mail message, including any attachments, does not comprise a contract or a portion of a contract, and so does not bind CyraCom International, Inc. or any of its agents or subsidiaries. CyraCom, LLC and Voiance Language Services, LLC are wholly owned subsidiaries of CyraCom International, Inc.
Hi guys,
I'm using rtpengine (compiled from source) and I see a lot of difference in
cpu usage comparing with rtpproxy. Is this normal?
With 600 calls:
cpu
*41.7%* rtpengine
#rtpengine threads
4
# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
*CPU(s): 2*
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 2
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 26
Model name: Intel(R) Xeon(R) CPU X7560 @ 2.27GHz
Stepping: 4
CPU MHz: 2259.955
BogoMIPS: 4522.00
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 24576K
NUMA node0 CPU(s): 0,1
Calls established with a=rtpmap:0 PCMU/8000
Thanks in advance!
Diego.
hello all
we have seen today something quite weird
having this line in the kamailio.cfg
(1) else if (status =~ "4" || status =~ "5" || status =~ "6") {
causes the process not to start hacing this error
May 3 10:28:14 xxxx /usr/local/kamailio/sbin/kamailio[2896]: ERROR:
<core> [io_wait.h:459]: io_watch_add(): epoll_ctl failed: Invalid
argument [22]
May 3 10:28:14 xxxx /usr/local/kamailio/sbin/kamailio[2896]: CRITICAL:
<core> [tcp_main.c:4432]: tcp_main_loop(): failed to add process 37 unix
socket to the fd list
May 3 10:28:14 xxxx /usr/local/kamailio/sbin/kamailio[2896]: CRITICAL:
<core> [tcp_main.c:4523]: tcp_main_loop(): exiting...
but placing
(2) } else if (status =~ "^[456]") {
instead, makes it work
this happens with kamailio 4.4.1 and the platform is running on
centos6.5
on the other hand we have the same line (1) on an ubuntu 10.0.4 makes
the kamailio also start properly
could you know why this is happening?
best regards
david
Hi, Daniel.
Seems I found how to fix PRACK handling.
It works for me.
please lock at https://github.com/kamailio/kamailio/pull/1097
Thank you.
--
Best regards,
Sergey Basov e-mail: sergey.v.basov(a)gmail.com
2017-04-27 13:04 GMT+03:00 Sergey Basov <sergey.v.basov(a)gmail.com>:
> Yes, you are right.
>
> But now before 200 OK there empty field b_contact.
>
> May be you does not populate it from contact in 183 Progress?
>
> I see that this field is not empty only after 200 OK with a Contact field.
> --
> Best regards,
> Sergey Basov e-mail: sergey.v.basov(a)gmail.com
>
>
> 2017-04-27 12:37 GMT+03:00 Daniel-Constantin Mierla <miconda(a)gmail.com>:
>> Hello,
>>
>> thanks for troubleshooting further. I haven't got the time to look at
>> the source code, but I expect that the b-leg attributes (contact, record
>> routes) to be set on 200ok for dialog (topos_d). I think for PRACK, the
>> routing information should be stored and taken from transaction (topos_t).
>>
>> Cheers,
>> Daniel
>>
>> On 27.04.17 11:29, Sergey Basov wrote:
>>> Hi, Daniel.
>>>
>>> I just done one more test topos with re-invite which comes from caller
>>> to callee, same direction as PRACK.
>>>
>>> And I found that, in case of prack, b_contact field is empty...
>>>
>>> Please find attached debug=3 part of re-invite message.
>>>
>>> Hope it helps.
>>> --
>>> Best regards,
>>> Sergey Basov e-mail: sergey.v.basov(a)gmail.com
>>>
>>>
>>> 2017-04-27 10:30 GMT+03:00 Sergey Basov <sergey.v.basov(a)gmail.com>:
>>>> Hi, Daniel
>>>>
>>>> Please look at attached part of debug=3 while receiving and parsing PRACK.
>>>> At line 208 seems rr module does not find correct part of record_route
>>>> which in DB consists from 2 parts.
>>>>
>>>> So at line 219 and later uac module cannot restore uris.
>>>>
>>>> Thank you.
>>>> --
>>>> Best regards,
>>>> Sergey Basov e-mail: sergey.v.basov(a)gmail.com
>>>>
>>>>
>>>> 2017-04-26 17:08 GMT+03:00 Sergey Basov <sergey.v.basov(a)gmail.com>:
>>>>> Thanks for workaround.
>>>>>
>>>>> But I will wait for you solution )
>>>>>
>>>>> I ready for testing )
>>>>>
>>>>> Thank you Daniel for your work!
>>>>>
>>>>> --
>>>>> Best regards,
>>>>> Sergey Basov e-mail: sergey.v.basov(a)gmail.com
>>>>>
>>>>>
>>>>> 2017-04-26 16:57 GMT+03:00 Daniel-Constantin Mierla <miconda(a)gmail.com>:
>>>>>> Hello,
>>>>>>
>>>>>>
>>>>>> On 26.04.17 14:53, Sergey Basov wrote:
>>>>>>> Hi All.
>>>>>>>
>>>>>>> I have just try to test topos with GW which requires PRACK.
>>>>>>>
>>>>>>> As you can see UA at packet 21 send PRACK to topos contact, but after
>>>>>>> topos, on other kamailio side in PRACK request line present not
>>>>>>> kontact but record-route header.
>>>>>>>
>>>>>>> Can you fix it?
>>>>>>>
>>>>>>>
>>>>>> probably needs to look into the code. If you need a quick workaround,
>>>>>> try to remove Supported header from INVITE so the callee should no
>>>>>> longer Require 100rel.
>>>>>>
>>>>>> Cheers,
>>>>>> Daniel
>>>>>>
>>>>>> --
>>>>>> Daniel-Constantin Mierla
>>>>>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>>>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>>>>>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Kamailio (SER) - Users Mailing List
>>>>>> sr-users(a)lists.kamailio.org
>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
>> --
>> Daniel-Constantin Mierla
>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>
Hi guys,
I'm trying to access dialog vars in failure_route with no success. Dialog
exists but vars are null and I'can modify them either. Is there any
restriction?
if ($dlg_var(v1) == 0){
$dlg_var(v1) = "1";
if (is_known_dlg()){
xlog("L_NOTICE", "negative_reply $ci $T_rpl($si)
$dlg_var(v2)");
$dlg_var(v2) = $T_rpl($si);
}
}
Log
Apr 26 12:36:26 drwsip02 /usr/local/sbin/kamailio[27223]: NOTICE: <script>:
negative_reply 6daf5e8d-f47972c1(a)172.31.4.21 * <null>*
Hi list,
I compiled db_unixodbc and sqlops to connect with oracle db. I have a
function that has dml inside. Because of this I can't just execute 'select
pkg.function(a, b) from dual'.
I'm trying with BEGIN / END. The row is inserted but always are log errors:
Apr 29 02:41:57 dwsipm03 /usr/local/sbin/kamailio[7868]: ERROR: db_unixodbc
[res.c:60]: db_unixodbc_get_columns(): no columns returned from the query
Apr 29 02:41:57 dwsipm03 /usr/local/sbin/kamailio[7868]: ERROR: db_unixodbc
[res.c:261]: db_unixodbc_convert_result(): getting column names failed
Apr 29 02:41:57 dwsipm03 /usr/local/sbin/kamailio[7868]: ERROR: db_unixodbc
[dbase.c:211]: db_unixodbc_store_result(): failed to convert result
Apr 29 02:41:57 dwsipm03 /usr/local/sbin/kamailio[7868]: ERROR: <core>
[db_query.c:188]: db_do_raw_query(): error while storing result
Apr 29 02:41:57 dwsipm03 /usr/local/sbin/kamailio[7868]: ERROR: sqlops
[sql_api.c:265]: sql_do_query(): cannot do the query [DECLARE ret CURSOR]
My query:
sql_query("cb","DECLARE ret CURSOR; BEGIN ret :=
pkg_partitioning.insert(True,'1'); END;");
I tried with other functions and no matter what type returns the oracle
function; always logs errors. It's like unixodbc is waiting for a result
with rows.
Any hint?
Thanks in advance,
Diego
Hello
I have my servers behind a NAT, with servers that make a call with bypass
media / direct media all works fine. But when my media servers need to
process audio I'm having issues. Looking at the SDP my local IP of the
server is in there.
I changed my config to add the nethelper.so and add the below:
# ----- NAT Helper -----
#!ifdef WITH_NAT
#modparam("nathelper", "rtpproxy_sock", "udp:127.0.0.1:7722")
modparam("nathelper", "natping_interval", 30)
modparam("nathelper", "ping_nated_only", 1)
#modparam("nathelper", "sipping_bflag", 7)
#modparam("nathelper", "sipping_from", "sip:pinger@kamailio.org")
#modparam("registrar|nathelper", "received_avp", "$avp(i:80)")
#modparam("usrloc", "nat_bflag", 6)
#!endif
In my route I added:
if (search("User-Agent: FS Box") {fix_nated_sdp("3");};
Hello fellows,
after some experimentation with various tools, I come out with a little
shell tool that maybe can be useful to you too.
It can only work with non-forward secrecy ciphers, obviously, and only if
is started before the client do the initial TLS handshake (eg, just restart
the client). Forward secrecy cannot be decrypted after fact, so don't waste
effort.
An example of ciphers that can be decrypted are the "AES256-SHA" openssl
cipher group. You can use ssldump to check what cipher is used by
serverhello.
Enjoy, make it better, and share it :)
#!/bin/bash
# brought to you by Giovanni Maruzzelli
#
SERVERIP="192.168.1.150"
SERVERPORT="5061"
PRIVKEY="/etc/certs/privkey.pem"
STDERR2DEVNULL=" 2>/dev/null "
REGEX="notyet"
if [ -z "$1" ]; then
REGEX="\\\.*"
else
REGEX="$1"
fi
FILTER="ssl.app_data and sip matches"
FILTER2="$FILTER \"$REGEX\""
FILTER3="'$FILTER2'"
ARGUMENT="-i 1 -Y $FILTER3 -E header=y -T fields -e frame.number -e
frame.time -e frame.time_delta_displayed -e ip.src -e ip.dst -e
sip.Status-Line -e sip.Request-Line -e sip.msg_hdr -l -d
tcp.port\=\=5061,sip -o \"ssl.keys_list:
$SERVERIP,$SERVERPORT,sip,$PRIVKEY\" $STDERR2DEVNULL | sed -u 's/\t/\n/g' |
sed -u '/^$/d' | sed -u 's/^[0-9]*$/\n==&==============================/g'"
echo ""
echo "NB: if it do not works, edit script so that STDERR2DEVNULL=\" \" and
try again"
echo ""
echo "NB: remember to quote and escape match patterns, using triple slash"
echo " eg, for matching 1010(a)pbx.example.com, use \"1010(a)pbx.example.com
\""
echo " eg, for matching anything, use \"\\\\\\.*\""
echo " eg, for matching *98, use \"\\\\\\*98\""
echo "USAGE: $0 \"\\\\\\*98(a)pbx.example.com\""
echo ""
case "$1" in
-help|--help|?)
exit 0
;;
*)
echo "THIS TIME WE'RE DOING:"
echo "tshark $ARGUMENT"
echo ""
bash -c "tshark $ARGUMENT"
;;
esac
--
Sincerely,
Giovanni Maruzzelli
OpenTelecom.IT
cell: +39 347 266 56 18
Hi list,
I use current git master.
When I reload a htable using "kamcmd htable.reload htable1", the "ctl handler" process leaks 384 bytes of pkg memory
If I use a direct mysql connection without db_cluster, the is no memory leak
modparam("db_cluster", "connection", "con1=>mysql://user:pass@ip.addr/database")
modparam("db_cluster", "connection", "con2=>mysql://user:pass@ip.addr2/database")
modparam("db_cluster", "cluster", "cls1=>con1=9s9s;con2=8s8s")
modparam("htable", "db_url", "cluster://cls1")
# modparam("htable", "db_url", "mysql://user:pass@ip.addr/database"
modparam("htable", "htable", "htable1=>size=8;autoexpire=0;dbtable=htable1;")
16(10429) ALERT: qm_status: 6513. N address=0x7f4e65e01720 frag=0x7f4e65e016e8 size=128 used=1
16(10429) ALERT: qm_status: alloc'd from db_cluster: dbcl_api.c: db_cluster_init(294)
16(10429) ALERT: qm_status: start check=f0f0f0f0, end check= c0c0c0c0, abcdefed
16(10429) ALERT: qm_status: 6514. N address=0x7f4e65e01808 frag=0x7f4e65e017d0 size=128 used=1
16(10429) ALERT: qm_status: alloc'd from core: db.c: db_do_init2(298)
16(10429) ALERT: qm_status: start check=f0f0f0f0, end check= c0c0c0c0, abcdefed
16(10429) ALERT: qm_status: 6515. N address=0x7f4e65e018f0 frag=0x7f4e65e018b8 size=128 used=1
16(10429) ALERT: qm_status: alloc'd from core: db.c: db_do_init2(298)
16(10429) ALERT: qm_status: start check=f0f0f0f0, end check= c0c0c0c0, abcdefed
Regards,
Kristian Høgh
Uni-tel A/S