Hi Daniel,
Unfortunately, it didn't help as the "self" pointer is null in the following code at python_msgobj.c:175
if (self->msg == NULL) {
PyErr_SetString(PyExc_RuntimeError, "self->msg is NULL");
Py_INCREF(Py_None);
return Py_None;
}
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/sbin/kamailio -P /var/run/kamailio/kamailio.pid -f /etc/kamailio/kamailio.'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007f688ae37009 in msg_call_function (self=0x0, args=0x7f68786b7aa0) at python_msgobj.c:175
175 python_msgobj.c: No such file or directory.
(gdb) bt
#0 0x00007f688ae37009 in msg_call_function (self=0x0, args=0x7f68786b7aa0) at python_msgobj.c:175
#1 0x00007f688a9f0e6c in PyEval_EvalFrameEx () from /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
#2 0x00007f688aa64190 in PyEval_EvalCodeEx () from /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
#3 0x00007f688a9b332c in ?? () from /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
#4 0x00007f688a9bbbe3 in PyObject_Call () from /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
#5 0x00007f688a9fe0e5 in ?? () from /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
#6 0x00007f688a9bbbe3 in PyObject_Call () from /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
#7 0x00007f688aa636e7 in PyEval_CallObjectWithKeywords () from /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
#8 0x00007f688ae32eac in apy_exec (_msg=0x7f688f3d15c8, fname=0x7f688ae37dc0 "ksr_request_route", fparam=0x0, emode=1) at python_exec.c:143
#9 0x00007f688ae136f6 in sr_kemi_config_engine_python (msg=0x7f688f3d15c8, rtype=1, rname=0x0, rparam=0x0) at apy_kemi.c:53
#10 0x0000000000579b6c in receive_msg (
buf=0xa395c0 <buf> "INVITE sip:+441992878768@185.28.212.141:5060 SIP/2.0\r\nVia: SIP/2.0/UDP 185.28.212.125:5060;branch=z9hG4bK-15930-1-0\r\nFrom: anonymous <sip:anonymous@185.28.212.141>;tag=15930Tag001\r\nTo: <sip:+441992878"..., len=858, rcv_info=0x7fff0791c6e0) at core/receive.c:260
#11 0x00000000004a86f9 in udp_rcv_loop () at core/udp_server.c:515
#12 0x0000000000422d08 in main_loop () at main.c:1623
#13 0x000000000042a408 in main (argc=13, argv=0x7fff0791cb88) at main.c:2643
Do we have any timelines when Kamailio 5.1 will be available?
Thanks
Regards
Muhammad Zaka
From: Daniel-Constantin Mierla [mailto:miconda@gmail.com]
Sent: 27 September 2017 10:06
To: Kamailio (SER) - Users Mailing List <sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>; Muhammad Zaka <muhammad.zaka(a)cloudcall.com<mailto:muhammad.zaka@cloudcall.com>>
Subject: Re: [SR-Users] How to do replace_body_all with Kemi python version kamailio 5.0.x
Hello,
the version 5.0 doesn't have too many exports to kemi. In master branch there is already subst_body():
- https://github.com/kamailio/kamailio/blob/master/src/modules/textops/textop…
I will add more as I get time before 5.1 release.
Anyhow, even in 5.0 is a generic kemi function that allows executing any kamailio.cfg function, respectively:
KSR.x.modf(func, param1, ...)
In your case, try:
KSR.x.modf("replace_body_all", "a=sendonly", "a=sendrecv")
You should be careful with KSR.x.modf(...), because is some cases it may result in pkg leak due to cfg param fixup. So, do some tests and be sure that pkg memory stats are not indicating a leak.
Cheers,
Daniel
On 26.09.17 10:48, Muhammad Zaka wrote:
Hi
We are experiencing issue with python script KSR. textops.replace_body_all using branch 5.0.2: -
Example Code:
KSR.textops.replace_body_all("a=sendonly", "a=sendrecv")
It looks like that the module textops and textopsx are not available. Using $rb or $msg(body) pseudo variables isn't working as they are readonly.
Is there any other way to replace the body?
Many Thanks
Regards
Muhammad Zaka
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
--
Daniel-Constantin Mierla
www.twitter.com/miconda<http://www.twitter.com/miconda> -- www.linkedin.com/in/miconda<http://www.linkedin.com/in/miconda>
Kamailio Advanced Training - www.asipto.com<http://www.asipto.com>
Kamailio World Conference - www.kamailioworld.com<http://www.kamailioworld.com>
Thank you - that explains it!
On Fri, Oct 6, 2017 at 11:31 PM, Federico Cabiddu
<federico.cabiddu(a)gmail.com> wrote:
> Hi,
> http://www.kamailio.org/docs/modules/devel/modules/rtpengine.html#rtpengine….
> If you are calling it after resuming a transaction you are basically in a
> FAILURE_ROUTE, so it will call the "delete" command. You have to explicitly
> call rtpengine_offer for this to work.
>
> Cheers,
>
> Federico
>
> On Fri, Oct 6, 2017 at 5:23 PM, Anthony Alba <ascanio.alba7(a)gmail.com>
> wrote:
>>
>> Hi,
>>
>> I am using tsilo and push notification recipe from
>>
>> https://www.kamailio.org/events/2015-KamailioWorld/Day2/20-Federico.Cabiddu…
>>
>> On resume of a suspended transaction rtpengine_manage() is sending
>> delete instead of offer.
>>
>> In the routing block INVRESUME after t_continue():
>>
>>
>> route[INVRESUME] {
>> lookup("location");
>> rtpengine_manage("DTLS=off ICE=remove");
>> t_relay();
>> ts_store();
>> $sht(vtp=>stored::$rU) = 1;
>> }
>>
>> I expect rtpengine_manage() to send offer since this is a Request+SDP;
>> instead it sends delete to rtpengine with garbage Call-ID. If I
>> replace rtpengine_manage() with rtpengine_offer() then it works.
>>
>> rtpengine (the actual media proxy) sees
>>
>> Received command 'delete' from 192.168.1.755:49851
>> Call-ID to delete not found
>>
>> which is totally bogus of course.
>>
>> rtpengine_offer() works fine but wondering why rtpengine_manage() goes
>> berserk here.
>>
>> Anthony
>>
>> _______________________________________________
>> Kamailio (SER) - Users Mailing List
>> sr-users(a)lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
>
>
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users(a)lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
Hi,
I am using tsilo and push notification recipe from
https://www.kamailio.org/events/2015-KamailioWorld/Day2/20-Federico.Cabiddu…
On resume of a suspended transaction rtpengine_manage() is sending
delete instead of offer.
In the routing block INVRESUME after t_continue():
route[INVRESUME] {
lookup("location");
rtpengine_manage("DTLS=off ICE=remove");
t_relay();
ts_store();
$sht(vtp=>stored::$rU) = 1;
}
I expect rtpengine_manage() to send offer since this is a Request+SDP;
instead it sends delete to rtpengine with garbage Call-ID. If I
replace rtpengine_manage() with rtpengine_offer() then it works.
rtpengine (the actual media proxy) sees
Received command 'delete' from 192.168.1.755:49851
Call-ID to delete not found
which is totally bogus of course.
rtpengine_offer() works fine but wondering why rtpengine_manage() goes
berserk here.
Anthony
Hello,
wondering if anyone has a quick answer to spare some time searching the
web or source code -- is there a way to offer optional SRTP (just SDES
is also fine) in SDP with RTPEngine? The use case is when the target
device is not yet known to support (or not) SRTP.
There are couple of ways in specs or practices (e.g., RFC5939/6871, or
advertising crypto attributes on RTP/AVP stream, or offering two streams
one RTP and one SRTP), I am looking to find if it is possible to do it
with RTPEngine and which of the options are supported/what are the
parameters for doing it...
Cheers,
Daniel
--
Daniel-Constantin Mierla
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio Advanced Training - www.asipto.com
Kamailio World Conference - www.kamailioworld.com
Hello,
How do i include Expires header for 200 OK message?
One of the manual says this.. how do i modify my existing config file to
include this?
I am using : /usr/local/etc/kamailio/kamailio.cfg for configuration.
Rgds,
MGSK
1.4.9. expires_offset (int)
The value that should be subtracted from the expires value when sending a
200OK for a publish. It is used for forcing the client cu send an update
before the old publish expires.
*Default value is "0".*
*Example 1-9. Set expires_offset parameter*
...
modparam("presence", "expires_offset", 10)
Hello,
i need a "success_route" which does the same as "failure_route", but only
for
positiv 2xx reply. Is something like this available?
Background: i forward REGISTER to external registrar server, and only what
to save the location on positiv reply to REGISTER. Without doing the
authentication myself.
I tried to save the location in onreply_route, but then the contact of the
external registrar server is
saved. So i need a status check in the REQUEST_ROUTE.
Best
Kristijan
I am trying to setup the internal XCAP service and kamailio will not start.
The messages log states "kamailio: CRITICAL: <core> [cfg.y:3372]: yyerror_at(): parse error in config file //etc/kamailio//kamailio.cfg, line 1009, column 1-11: syntax error"
This is the line "event_route[xhttp:request] {" from the config file. I am not sure why this is happening any ideas?
Thanks,Jim
hello all
we are having an issue when trying to start kamailio using these modules
and a kamailio version higher than 4.2
we install libpq5 and libpq-dev and we always have this error
0(10800) ERROR: <core> [core/sr_module.c:582]: load_module(): could
not open module
</usr/local/kamailio-5.0/lib64/kamailio/modules/db_postgres.so>:
/usr/local/kamailio-5.0/lib64/kamailio/modules/db_postgres.so: undefined
symbol: PQconnectdbParams
do you know which lib or packet would we miss? we are trying to install
it on centos6, ubuntu 10 or centos7
best regards
david