Hello, ok, good that it works now. You should still be able to take them from headers with $ci and $ft, but they have to be provided in the parameter of start_recording()/stop_recording() if used with a non-SIP message.
Cheers, Daniel On 05.05.21 18:20, Володимир Іванець wrote: > Hello, > > I did not. I misunderstood your previous message. Now I called > start_recording() and stop_recording() with /call-id/ and > /from-tag/ flags and everything worked fine. > > Thank you very much! > > ср, 5 трав. 2021 о 16:46 Daniel-Constantin Mierla <mico...@gmail.com > <mailto:mico...@gmail.com>> пише: > > Hello, > > do you pass "from-tag=xyz" to the start_recording() function? > > Cheers, > Daniel > > On 05.05.21 13:51, Володимир Іванець wrote: >> Hello Daniel, >> >> Sorry, I was out of the office and could make a test only now. As >> you told, the HTTP request is now processed differently. >> Unfortunately, I can no longer start call recording. I tried the >> following options and got the "rtpp_function_call(): can't get >> From tag" error message each time. >> >> 1. /usr/bin/curl -H "Content-Type: text" >> >> "http://localhost:8088/CALL_RECORD_START/249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0 >> >> <http://localhost:8088/CALL_RECORD_START/249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0>" >> 2. /usr/bin/curl -H "Content-Type: text" >> >> "http://localhost:8088/CALL_RECORD_START/249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0 >> >> <http://localhost:8088/CALL_RECORD_START/249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0>" >> -H "From: <sip:123@127.0.0.1:5080 >> <http://sip:123@127.0.0.1:5080>>;tag=1" >> 3. /usr/bin/curl -H "Content-Type: text" >> >> "http://localhost:8088/CALL_RECORD_START/249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0 >> >> <http://localhost:8088/CALL_RECORD_START/249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0>" >> -H "Call-Id: >> 249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0 >> <mailto:249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0>" >> -H "To: sip:456@127.0.0.1:5060 >> <http://sip:456@127.0.0.1:5060>" -H "From: >> <sip:123@127.0.0.1:5080 <http://sip:123@127.0.0.1:5080>>;tag=1" >> >> >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/parse_fline.c:250]: parse_first_line(): >> first line type 1 (request) flags 2/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/msg_parser.c:677]: parse_msg(): SIP Request:/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/msg_parser.c:679]: parse_msg(): method: >> <GET>/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/msg_parser.c:681]: parse_msg(): uri: >> >> </CALL_RECORD_START/249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0> >> >> <mailto:/CALL_RECORD_START/249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0>/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/msg_parser.c:683]: parse_msg(): version: >> <HTTP/1.1>/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/parse_hname2.c:294]: >> parse_sip_header_name(): parsed header name [Via] type 1/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/parse_via.c:2639]: parse_via(): end of >> header reached, state=5/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/msg_parser.c:555]: parse_headers(): Via >> found, flags=2/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/msg_parser.c:557]: parse_headers(): this >> is the first via/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <script>: == TRACE. xhttp:request/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <script>: == TRACE. xhttp:request. HTTP Request Received/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <script>: == TRACE. xhttp:request. hu is: >> /CALL_RECORD_START/249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <script>: >> call-id=249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0 >> <mailto:call-id=249ae6300da4b1393be203e21068f6a2@127.0.0.1:5080.0> >> 1111111111/ >> /*May 5 14:40:43 test /usr/sbin/kamailio[19603]: ERROR: >> rtpengine [rtpengine.c:2547]: rtpp_function_call(): can't get >> From tag*/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: xhttp >> [xhttp_mod.c:420]: xhttp_send_reply(): sending out response: >> 200 OK/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/parse_hname2.c:294]: >> parse_sip_header_name(): parsed header name [Host] type 0/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/parse_hname2.c:294]: >> parse_sip_header_name(): parsed header name [User-Agent] type 28/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/parse_hname2.c:294]: >> parse_sip_header_name(): parsed header name [Accept] type 23/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/parse_hname2.c:294]: >> parse_sip_header_name(): parsed header name [Content-Type] >> type 11/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/parser/msg_parser.c:91]: get_hdr_field(): found >> end of header/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/msg_translator.c:162]: check_via_address(): >> (127.0.0.1, 127.0.0.1, 0)/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/tcp_main.c:1590]: _tcpconn_find(): found >> connection by id: 5/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/tcp_main.c:2472]: tcpconn_send_put(): send from >> reader (19603 (27)), reusing fd/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/tcp_main.c:2706]: tcpconn_do_send(): sending.../ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/tcp_main.c:2739]: tcpconn_do_send(): after real >> write: c= 0x7f4ba719cd70 n=118 fd=10/ >> /May 5 14:40:43 test /usr/sbin/kamailio[19603]: DEBUG: >> <core> [core/tcp_main.c:2740]: tcpconn_do_send(): buf=/ >> / >> / >> / >> / >> >> Thank you! >> >> пт, 30 квіт. 2021 о 17:53 Daniel-Constantin Mierla >> <mico...@gmail.com <mailto:mico...@gmail.com>> пише: >> >> I pushed a commit to master branch that should make it work >> to use the function for non-SIP message processing, by giving >> call-id=... and from-tag=... via flags parameter -- these two >> attributes seemed to be used by expecting to be set, even if >> the rtpengine application may ignore one of them. >> >> If you have a chance to test, let me know the result. >> >> Cheers, >> Daniel >> >> On 29.04.21 16:38, Daniel-Constantin Mierla wrote: >>> >>> I looked in the code and indeed it first takes the values >>> from headers for Call-Id, To (tag), From (tag), failing if >>> the headers are not found, but then it updates the values >>> from the flags parameter. So the call-id can be anything in >>> the headers if you provide it as "call-id=xyz" parameter. >>> >>> Maybe the code should be reworked a bit to parse first the >>> flags parameters and if values are not found for the sip >>> attributes, then try to get them from headers. >>> >>> Cheers, >>> Daniel >>> >>> On 29.04.21 15:39, Володимир Іванець wrote: >>>> I run Kamailio with debug=3 and Rtpengine with LOG_LEVEL=6. >>>> >>>> Rtpengine logs offers, answers and deletes but there is >>>> nothing when I trigger /start_recording/ with HTTP request. >>>> Below is the full Kamailio log for the request. It looks to >>>> be failing right on the /start_recording/ function and I >>>> don't see any other issues except empty Call-Id here: >>>> "receive_msg(): --- received sip message - request - >>>> call-id: [] - cseq: []". >>>> >>>> I tried to add Call-Id header to my HTTP request and found >>>> out that now rtpengine module will complain about missing >>>> To header. With tries and errors, I specified all required >>>> headers and Rtpengine started call recording: >>>> >>>> //usr/bin/curl -H "Content-Type: text" >>>> >>>> "http://localhost:8088/CALL_RECORD_START/38687ab466a031d20d852706710d2b4f@127.0.0.1:5080.1 >>>> >>>> <http://localhost:8088/CALL_RECORD_START/38687ab466a031d20d852706710d2b4f@127.0.0.1:5080.1>" >>>> -H "Call-Id: >>>> 38687ab466a031d20d852706710d2b4f@127.0.0.1:5080.1 >>>> <mailto:38687ab466a031d20d852706710d2b4f@127.0.0.1:5080.1>" >>>> -H "To: sip:200-test@127.0.0.1:5060 >>>> <http://sip:200-test@127.0.0.1:5060>" -H "From: >>>> <sip:2564286000@127.0.0.1:5080 >>>> <http://sip:2564286000@127.0.0.1:5080>>;tag=as7a92114c"/ >>>> >>>> >>>> It also looks like rtpengine module does not care about >>>> actual header values. Function /start_recording/ called >>>> with Call-Id value is enough to start call recording even >>>> if all headers contain random invalid values: >>>> >>>> / /usr/bin/curl -H "Content-Type: text" >>>> >>>> "http://localhost:8088/CALL_RECORD_START/6559572e21e08e0a41503ba5779c6604@127.0.0.1:5080.0 >>>> >>>> <http://localhost:8088/CALL_RECORD_START/6559572e21e08e0a41503ba5779c6604@127.0.0.1:5080.0>" >>>> -H "Call-Id: does_mot_matter" -H "To: >>>> sip:456@127.0.0.1:5060 <http://sip:456@127.0.0.1:5060>" >>>> -H "From: <sip:123@127.0.0.1:5080 >>>> <http://sip:123@127.0.0.1:5080>>;tag=1"/ >>>> >>>> >>>> *Thank you very much for your help!* >>>> >>>> >>>> >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24120]: DEBUG: >>>> <core> [core/ip_addr.c:229]: print_ip(): tcpconn_new: >>>> new tcp connection: 127.0.0.1/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24120]: DEBUG: >>>> <core> [core/tcp_main.c:1175]: tcpconn_new(): on port >>>> 42782, type 2, socket 64/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24120]: DEBUG: >>>> <core> [core/tcp_main.c:1498]: tcpconn_add(): hashes: >>>> 1710:1616:2551, 1/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24120]: DEBUG: >>>> <core> [core/io_wait.h:375]: io_watch_add(): DBG: >>>> io_watch_add(0xae63a0, 64, 2, 0x7f943ba04ac0), fd_no=50/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24120]: DEBUG: >>>> <core> [core/io_wait.h:600]: io_watch_del(): DBG: >>>> io_watch_del (0xae63a0, 64, -1, 0x0) fd_no=51 called/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24120]: DEBUG: >>>> <core> [core/tcp_main.c:4457]: handle_tcpconn_ev(): >>>> sending to child, events 1/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24120]: DEBUG: >>>> <core> [core/tcp_main.c:4130]: send2child(): selected >>>> tcp worker idx:0 proc:35 pid:24116 for activity on >>>> [tcp:127.0.0.1:8088 <http://127.0.0.1:8088>], >>>> 0x7f943ba04ac0/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/tcp_read.c:1749]: handle_io(): received >>>> n=8 con=0x7f943ba04ac0, fd=13/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:610]: parse_msg(): SIP >>>> Request:/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:612]: parse_msg(): >>>> method: <GET>/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:614]: parse_msg(): >>>> uri: >>>> >>>> </CALL_RECORD_START/7a444c165953cf0a196e10e50d0b611e@127.0.0.1:5080.0> >>>> >>>> <mailto:/CALL_RECORD_START/7a444c165953cf0a196e10e50d0b611e@127.0.0.1:5080.0>/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:616]: parse_msg(): >>>> version: <HTTP/1.1>/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:89]: get_hdr_field(): >>>> found end of header/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/receive.c:324]: receive_msg(): --- >>>> received sip message - request - call-id: [] - cseq: []/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> xhttp [xhttp_mod.c:382]: xhttp_handler(): new fake msg >>>> created (286 bytes):/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:610]: parse_msg(): SIP >>>> Request:/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:612]: parse_msg(): >>>> method: <GET>/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:614]: parse_msg(): >>>> uri: >>>> >>>> </CALL_RECORD_START/7a444c165953cf0a196e10e50d0b611e@127.0.0.1:5080.0> >>>> >>>> <mailto:/CALL_RECORD_START/7a444c165953cf0a196e10e50d0b611e@127.0.0.1:5080.0>/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:616]: parse_msg(): >>>> version: <HTTP/1.1>/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/parse_via.c:2639]: parse_via(): end >>>> of header reached, state=5/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:498]: parse_headers(): >>>> Via found, flags=2/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:500]: parse_headers(): >>>> this is the first via/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <script>: == TRACE. xhttp:request/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <script>: == TRACE. xhttp:request. HTTP Request Received/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <script>: == TRACE. xhttp:request. hu is: >>>> >>>> /CALL_RECORD_START/7a444c165953cf0a196e10e50d0b611e@127.0.0.1:5080.0/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <script>: >>>> call-id=7a444c165953cf0a196e10e50d0b611e@127.0.0.1:5080.0 >>>> >>>> <mailto:call-id=7a444c165953cf0a196e10e50d0b611e@127.0.0.1:5080.0>/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/parser/msg_parser.c:89]: get_hdr_field(): >>>> found end of header/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: ERROR: >>>> rtpengine [rtpengine_funcs.c:294]: get_callid(): >>>> call-id not found/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: ERROR: >>>> rtpengine [rtpengine.c:2383]: rtpp_function_call(): >>>> can't get Call-Id field/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> xhttp [xhttp_mod.c:441]: xhttp_send_reply(): sending >>>> out response: 200 OK/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/msg_translator.c:161]: >>>> check_via_address(): (127.0.0.1, 127.0.0.1, 0)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/tcp_main.c:1590]: _tcpconn_find(): found >>>> connection by id: 1/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/tcp_main.c:2472]: tcpconn_send_put(): send >>>> from reader (24116 (35)), reusing fd/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/tcp_main.c:2706]: tcpconn_do_send(): >>>> sending.../ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/tcp_main.c:2739]: tcpconn_do_send(): after >>>> real write: c= 0x7f943ba04ac0 n=113 fd=13/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/tcp_main.c:2740]: tcpconn_do_send(): buf=/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/usr_avp.c:636]: destroy_avp_list(): >>>> destroying list (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/usr_avp.c:636]: destroy_avp_list(): >>>> destroying list (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/usr_avp.c:636]: destroy_avp_list(): >>>> destroying list (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/usr_avp.c:636]: destroy_avp_list(): >>>> destroying list (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/usr_avp.c:636]: destroy_avp_list(): >>>> destroying list (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/usr_avp.c:636]: destroy_avp_list(): >>>> destroying list (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/xavp.c:539]: xavp_destroy_list(): >>>> destroying xavp list (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/xavp.c:539]: xavp_destroy_list(): >>>> destroying xavp list (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/xavp.c:539]: xavp_destroy_list(): >>>> destroying xavp list (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/receive.c:528]: receive_msg(): cleaning up/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/io_wait.h:375]: io_watch_add(): DBG: >>>> io_watch_add(0xb2a640, 13, 2, 0x7f943ba04ac0), fd_no=1/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24120]: DEBUG: >>>> <core> [core/tcp_main.c:3793]: handle_ser_child(): read >>>> response= 7f943ba04ac0, -1, fd -1 from 35 (24116)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/io_wait.h:600]: io_watch_del(): DBG: >>>> io_watch_del (0xb2a640, 13, -1, 0x10) fd_no=2 called/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/tcp_read.c:1890]: handle_io(): removing >>>> from list 0x7f943ba04ac0 id 1 fd 13, state -1, flags >>>> 4028, main fd -1, refcnt 1 ([127.0.0.1]:42782 -> >>>> [127.0.0.1]:8088)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/tcp_read.c:1671]: release_tcpconn(): >>>> releasing con 0x7f943ba04ac0, state -2, fd=13, id=1 >>>> ([127.0.0.1]:42782 -> [127.0.0.1]:8088)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24116]: DEBUG: >>>> <core> [core/tcp_read.c:1672]: release_tcpconn(): >>>> extra_data (nil)/ >>>> /Apr 29 16:01:47 test /usr/sbin/kamailio[24120]: DEBUG: >>>> <core> [core/tcp_main.c:3560]: handle_tcp_child(): >>>> reader response= 7f943ba04ac0, -2 from 0/ >>>> >>>> >>>> чт, 29 квіт. 2021 о 13:17 Daniel-Constantin Mierla >>>> <mico...@gmail.com <mailto:mico...@gmail.com>> пише: >>>> >>>> Ohhh, blindly missed the assignment before. You should >>>> run both kamailio and rtpengine with higher debug level >>>> and see if you get any hints from the log messages. >>>> >>>> Cheers, >>>> Daniel >>>> >>>> On 29.04.21 11:51, Володимир Іванець wrote: >>>>> Hello Daniel, >>>>> >>>>> That is correct. My /$var(call_id)/ variable contains >>>>> concatenation of the "call-id=" string and a Call-Id >>>>> value. >>>>> >>>>> /Apr 27 18:25:00 test /usr/sbin/kamailio[5347]: >>>>> DEBUG: <script>: >>>>> call-id=3de74068278ede4417086eb82bdf5a06@127.0.0.1:5080.0 >>>>> >>>>> <mailto:call-id=3de74068278ede4417086eb82bdf5a06@127.0.0.1:5080.0>/ >>>>> >>>>> >>>>> Thank you! >>>>> >>>>> чт, 29 квіт. 2021 о 09:58 Daniel-Constantin Mierla >>>>> <mico...@gmail.com <mailto:mico...@gmail.com>> пише: >>>>> >>>>> Hello, >>>>> >>>>> related to the initial config snippet example, the >>>>> call-id is expected to be provide as a named flag, >>>>> like: >>>>> >>>>> start_recording("call-id=$var(call_id)"); >>>>> >>>>> See the readme of the rtpengine module for more >>>>> details. >>>>> >>>>> Cheers, >>>>> Daniel >>>>> >>>>> On 29.04.21 08:23, Володимир Іванець wrote: >>>>>> Hello Richard, >>>>>> >>>>>> Thank you very much for the suggestion! I will >>>>>> give it a try. >>>>>> >>>>>> ср, 28 квіт. 2021, 20:00 користувач Richard Fuchs >>>>>> <rfu...@sipwise.com <mailto:rfu...@sipwise.com>> >>>>>> пише: >>>>>> >>>>>> On 28/04/2021 10.53, [ EXT ] Володимир >>>>>> Іванець wrote: >>>>>>> Hello! >>>>>>> >>>>>>> I'm testing call recording with Rtpengine. >>>>>>> It works fine when the "record-call=on" flag >>>>>>> is added to the /rtpengine_offer/ >>>>>>> or /start_recording/ is used in >>>>>>> the *request_route*. >>>>>>> >>>>>>> But I was wondering if the call recording >>>>>>> can be managed by a separate application. So >>>>>>> I add the following lines to >>>>>>> the *event_route[xhttp:request]* and >>>>>>> triggered it with an HTTP request after the >>>>>>> call was established. The call-id value was >>>>>>> taken from the Rtpengine log and sent with >>>>>>> the request. >>>>>>> >>>>>>> / if ($hu =~ "^/CALL_RECORD_START/") {/ >>>>>>> / $var(call_id) = /"call-id=" >>>>>>> + /$(hu{s.select,2,/});/ >>>>>>> xlog("L_DBG", "$var(call_id)"); >>>>>>> / start_recording($var(call_id));/ >>>>>>> / /exit; >>>>>>> / }/ >>>>>>> >>>>>> If you have to reason to go through Kamailio >>>>>> for this, you can simply trigger the command >>>>>> from any other external application. There's >>>>>> a sample script included in the repo that can >>>>>> be used for this purpose directly (making use >>>>>> of the Perl module that is also included): >>>>>> >>>>>> https://github.com/sipwise/rtpengine/blob/master/utils/rtpengine-ng-client >>>>>> >>>>>> <https://github.com/sipwise/rtpengine/blob/master/utils/rtpengine-ng-client> >>>>>> >>>>>> There's also a nodejs client that I'm aware >>>>>> of: >>>>>> https://github.com/davehorton/rtpengine-client >>>>>> <https://github.com/davehorton/rtpengine-client> >>>>>> >>>>>> Or you can hand-roll the request and talk to >>>>>> rtpengine via HTTP or Websocket for example. >>>>>> >>>>>> Cheers >>>>>> >>>>>> >>>>>> __________________________________________________________ >>>>>> Kamailio - Users Mailing List - Non >>>>>> Commercial Discussions >>>>>> * sr-users@lists.kamailio.org >>>>>> <mailto:sr-users@lists.kamailio.org> >>>>>> Important: keep the mailing list in the >>>>>> recipients, do not reply only to the sender! >>>>>> Edit mailing list options or unsubscribe: >>>>>> * >>>>>> >>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >>>>>> >>>>>> <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users> >>>>>> >>>>>> >>>>>> >>>>>> __________________________________________________________ >>>>>> Kamailio - Users Mailing List - Non Commercial >>>>>> Discussions >>>>>> * sr-users@lists.kamailio.org >>>>>> <mailto:sr-users@lists.kamailio.org> >>>>>> Important: keep the mailing list in the recipients, do >>>>>> not reply only to the sender! >>>>>> Edit mailing list options or unsubscribe: >>>>>> * >>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >>>>>> <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users> >>>>> >>>>> -- >>>>> Daniel-Constantin Mierla -- www.asipto.com >>>>> <http://www.asipto.com> >>>>> www.twitter.com/miconda <http://www.twitter.com/miconda> >>>>> -- www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda> >>>>> Kamailio Advanced Training - Online >>>>> May 17-20, 2021 (Europe Timezone) - June 7-10, 2021 >>>>> (America Timezone) >>>>> * >>>>> https://www.asipto.com/sw/kamailio-advanced-training-online/ >>>>> <https://www.asipto.com/sw/kamailio-advanced-training-online/> >>>>> >>>> -- >>>> Daniel-Constantin Mierla -- www.asipto.com >>>> <http://www.asipto.com> >>>> www.twitter.com/miconda <http://www.twitter.com/miconda> -- >>>> www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda> >>>> Kamailio Advanced Training - Online >>>> May 17-20, 2021 (Europe Timezone) - June 7-10, 2021 (America >>>> Timezone) >>>> * >>>> https://www.asipto.com/sw/kamailio-advanced-training-online/ >>>> <https://www.asipto.com/sw/kamailio-advanced-training-online/> >>>> >>> -- >>> Daniel-Constantin Mierla -- www.asipto.com <http://www.asipto.com> >>> www.twitter.com/miconda <http://www.twitter.com/miconda> -- >>> www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda> >>> Kamailio Advanced Training - Online >>> May 17-20, 2021 (Europe Timezone) - June 7-10, 2021 (America >>> Timezone) >>> * https://www.asipto.com/sw/kamailio-advanced-training-online/ >>> <https://www.asipto.com/sw/kamailio-advanced-training-online/> >> >> -- >> Daniel-Constantin Mierla -- www.asipto.com <http://www.asipto.com> >> www.twitter.com/miconda <http://www.twitter.com/miconda> -- >> www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda> >> Kamailio Advanced Training - Online >> May 17-20, 2021 (Europe Timezone) - June 7-10, 2021 (America >> Timezone) >> * https://www.asipto.com/sw/kamailio-advanced-training-online/ >> <https://www.asipto.com/sw/kamailio-advanced-training-online/> >> > -- > Daniel-Constantin Mierla -- www.asipto.com <http://www.asipto.com> > www.twitter.com/miconda <http://www.twitter.com/miconda> -- > www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda> > Kamailio Advanced Training - Online > May 17-20, 2021 (Europe Timezone) - June 7-10, 2021 (America Timezone) > * https://www.asipto.com/sw/kamailio-advanced-training-online/ > <https://www.asipto.com/sw/kamailio-advanced-training-online/> > -- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda Kamailio Advanced Training - Online May 17-20, 2021 (Europe Timezone) - June 7-10, 2021 (America Timezone) * https://www.asipto.com/sw/kamailio-advanced-training-online/
__________________________________________________________ Kamailio - Users Mailing List - Non Commercial Discussions * sr-users@lists.kamailio.org Important: keep the mailing list in the recipients, do not reply only to the sender! Edit mailing list options or unsubscribe: * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users