I wouldn't do a delete in that situation; it might be simpler to just do another rtpengine_offer() on a <Call-ID, From-tag> tuple that RTPEngine already knows about, just as one would in a reinvite. I believe rtpengine_manage() would cover this situation as well.
And yes, then just t_relay() anew!
> On Jul 18, 2023, at 11:41 AM, Barry Flanagan <barry(a)flantel.com> wrote:
>
> On 18/07/2023 16:33, Alex Balashov wrote:
>> Barry,
>>
>> Might it not be simpler to follow Richard's first suggestion in that thread, and simply catch the 488 response in a failure_route and re-issue a non-SRTP offer on another branch?
>
> hi Alex,
>
> Might be. I am just unsure about how to instruct rtpengine to re-send the plain RTP invite. Do I do a rtpengine_delete and then restart with rtpengine_manage() then relay again?
>
> Thanks.
>
> -Barry
>
>
>>
>> -- Alex
>>
>>> On Jul 18, 2023, at 11:05 AM, Barry Flanagan <barry(a)flantel.com> wrote:
>>>
>>> Hi,
>>>
>>> I have implemented a WebRTC proxy using Kamailio and rtpengine, in front
>>> of Asterisk servers. I have an issue where I do not know in advance
>>> whether the Asterisk client is set to use RTP or SRTP.
>>>
>>> My implementation expects the web side to be SRTP and the Asterisk side
>>> plain RTP. However, if the asterisk side requires SRTP I receive a 488
>>> Not Acceptable here. The same is true when an SRTP client from the
>>> Asterisk side dials out to the webrtc client, I need to catch whether
>>> the request is SRTP or RTP and generate rtpengine offer accordingly.
>>>
>>> This was discussed in github, with a description of a solution here:
>>> https://github.com/sipwise/rtpengine/issues/435#issuecomment-391937398 -
>>> however I am unsure how to implement this.
>>>
>>> Does anyone have an example of how I can change the rtpengine SDP in
>>> such a case?
>>>
>>> Thanks
>>> --
>>> -Barry
>>> __________________________________________________________
>>> Kamailio - Users Mailing List - Non Commercial Discussions
>>> To unsubscribe send an email to sr-users-leave(a)lists.kamailio.org
>>> Important: keep the mailing list in the recipients, do not reply only to the sender!
>>> Edit mailing list options or unsubscribe:
>
> --
> -Barry
>
--
Alex Balashov
Principal Consultant
Evariste Systems LLC
Web: https://evaristesys.com
Tel: +1-706-510-6800
Hi,
I have implemented a WebRTC proxy using Kamailio and rtpengine, in front
of Asterisk servers. I have an issue where I do not know in advance
whether the Asterisk client is set to use RTP or SRTP.
My implementation expects the web side to be SRTP and the Asterisk side
plain RTP. However, if the asterisk side requires SRTP I receive a 488
Not Acceptable here. The same is true when an SRTP client from the
Asterisk side dials out to the webrtc client, I need to catch whether
the request is SRTP or RTP and generate rtpengine offer accordingly.
This was discussed in github, with a description of a solution here:
https://github.com/sipwise/rtpengine/issues/435#issuecomment-391937398
<https://github.com/sipwise/rtpengine/issues/435#issuecomment-391937398>-
however I am unsure how to implement this.
Does anyone have an example of how I can change the rtpengine SDP in
such a case?
Thanks
--
-Barry
Hi Daniel,
thank you for your response.
As you can see in the provided debug output:
kamailio[]: DEBUG: htable [ht_api.c:1046]: ht_table_spec(): htable
[callpush] - dbmode [1]
kamailio[]: DEBUG: htable [ht_api.c:1027]: ht_table_spec(): htable
[callpush] - dbtable [userpush]
kamailio[]: DEBUG: htable [ht_api.c:1036]: ht_table_spec(): htable
[callpush] - expire [86400]
kamailio[]: DEBUG: htable [ht_api.c:1041]: ht_table_spec(): htable
[callpush] - size [10]
dbmode is set to 1 in the config:
modparam("htable", "db_url", "sqlite:////etc/kamailio/htable.sqlite")
...
modparam("htable", "htable", "userpush=>size=3;autoexpire=600;dbtable=userpush;dbmode=1")
If I execute
kamcmd htable.store userpush
I get
Ok. Htable successfully stored to DB.
But the table is still empty!!!
In the log I found:
ERROR: db_sqlite [dbase.c:528]: db_sqlite_commit(): sqlite commit
failed: attempt to write a readonly database
ERROR: db_sqlite [dbase.c:177]: db_sqlite_cleanup_query(): finalize
failed: attempt to write a readonly database
ERROR: htable [ht_db.c:668]: ht_db_delete_records(): failed to delete db
records in [userpush]
ERROR: db_sqlite [dbase.c:528]: db_sqlite_commit(): sqlite commit
failed: attempt to write a readonly database
Ok.
But I can not see this entries if I shutdown kamailio.
And:
-rw-rw-rw- 1 kamailio root 16384 Jul 13 16:14 htable.sqlite
I never used:
modparam("db_sqlite","db_set_readonly" ...
I also restarted kamailio. no difference.
Now more errors then before:
It is not written at shutdown. (no messages)
It is not written (live) (with error messages, but why it is readonly?)
The message of kamcmd is wrong (says Ok but it failed)
Best regards,
Bernd
Am 17.07.2023 um 08:48 schrieb Daniel-Constantin Mierla:
> Hello,
>
> is dbmode=1 in htable definition?
>
> If you run rpc command htable.store for the htable, are the records
> saved to database?
>
> Cheers,
> Daniel
>
> On 13.07.23 17:45, Bernd Krueger-Knauber wrote:
>> Hi,
>>
>> I just tried to use sqlite and htable to load and save the values.
>> At start I can see in the log, that all parameters are correct and
>> that htable want to load the values from the table.
>> No errors.
>>
>> But if I stop kamailio, nothing is written to the tables.
>>
>> At start I can see:
>>
>> kamailio[]: DEBUG: <core> [core/modparam.c:112]:
>> set_mod_param_regex(): 'htable' matches module 'htable'
>> kamailio[]: DEBUG: <core> [core/sr_module.c:814]: find_param_export():
>> found <htable> in module htable
>> [/usr/lib/x86_64-linux-gnu/kamailio/modules/htable.so]
>> kamailio[]: DEBUG: <core> [core/modparam.c:128]:
>> set_mod_param_regex(): found <htable> in module htable
>> [/usr/lib/x86_64-linux-gnu/kamailio/modules/htable.so]
>> kamailio[]: DEBUG: htable [ht_api.c:1046]: ht_table_spec(): htable
>> [callpush] - dbmode [1]
>> kamailio[]: DEBUG: htable [ht_api.c:1027]: ht_table_spec(): htable
>> [callpush] - dbtable [userpush]
>> kamailio[]: DEBUG: htable [ht_api.c:1036]: ht_table_spec(): htable
>> [callpush] - expire [86400]
>> kamailio[]: DEBUG: htable [ht_api.c:1041]: ht_table_spec(): htable
>> [callpush] - size [10]
>>
>>
>>
>> kamailio[]: DEBUG: htable [ht_api.c:1084]: ht_db_load_tables():
>> loading db table [userpush] in ht [userpush]
>> kamailio[]: DEBUG: htable [ht_db.c:232]: ht_db_load_table():
>> =============== loading hash table [userpush] from database [userpush]
>> kamailio[]: DEBUG: db_sqlite [dbase.c:223]: db_sqlite_submit_query():
>> submit_query: select key_name,key_type,value_type,key_value from
>> userpush order by key_name
>> kamailio[]: DEBUG: <core> [db_query.c:72]: db_do_submit_query():
>> submitted query: select key_name,key_type,value_type,key_value from
>> userpush order by key_name, result 0
>> kamailio[]: DEBUG: <core> [db_res.c:119]: db_new_result(): allocate 56
>> bytes for result set at 0x7f4882107938
>> kamailio[]: DEBUG: <core> [db_res.c:79]: db_free_columns(): freeing 0
>> columns
>> kamailio[]: DEBUG: <core> [db_res.c:138]: db_free_result(): freeing
>> result set at 0x7f4882107938
>>
>> Ok, the file is empty, but it tries to load the data from the table.
>>
>> The table looks like:
>>
>> sqlite> .schema userpush
>> CREATE TABLE userpush (
>> key_name TEXT,
>> "key_type" INTEGER,
>> value_type INTEGER,
>> key_value TEXT
>> );
>>
>>
>> I checked the source code and I saw that destroy() should be called.
>> Inside is ht_db_open_con() called before ht_db_sync_tables(), were it
>> happens.
>> But I can even not see the debug message from ht_db_open_con() :
>>
>> LM_DBG("database connection opened successfully\n")
>> and also not
>> LM_ERR("failed to connect to the database\n");
>>
>> For me it looks like, that the destroy() function is not called.
>>
>> Even with debug=3, I can only see:
>>
>>
>> systemd[]: Stopping kamailio.service - Kamailio - the Open Source SIP
>> Server...
>> kamailio[]: INFO: <core> [main.c:854]: sig_usr(): signal 15 received
>> systemd[]: kamailio.service: Deactivated successfully.
>> systemd[]: Stopped kamailio.service - Kamailio - the Open Source SIP
>> Server.
>>
>> I stopped kamailio with
>>
>> systemctl stop kamailio
>>
>> I'm sure that something was inside the htable before I stoped kamailio:
>>
>> {
>> entry: 0
>> size: 1
>> slot: {
>> {
>> name:
>> 07db580a6c13e798a5acc0d123d6e957897c8650b43f99d6d5cb9c2cb5ba4fa4
>> value:
>> 3a28dcb73eb65722df5a261983b7692cecdca482bf8725032e46a0c6b89fb355
>> type: str
>> }
>> }
>> }
>>
>> Any further ideas?
>>
>> Best regards,
>>
>> Bernd
>>
>>
>>
>> __________________________________________________________
>> Kamailio - Users Mailing List - Non Commercial Discussions
>> To unsubscribe send an email tosr-users-leave(a)lists.kamailio.org
>> Important: keep the mailing list in the recipients, do not reply only
>> to the sender!
>> Edit mailing list options or unsubscribe:
--
EDNT GmbH
Werner-von-Siemens-Strasse 7
64625 Bensheim
www.ednt.de
Registergericht: Darmstadt
Registernummer: 24972
Geschäftsführer: Karlheinz Knapp
-------- Weitergeleitete Nachricht --------
Betreff: Re: [SR-Users] Kamailio 5.6.4 and htable dbmode=1
Datum: Mon, 17 Jul 2023 09:50:37 +0200
Von: Bernd Krueger-Knauber <bkk(a)ednt.de>
An: miconda(a)gmail.com
Hi Daniel,
thank you for your response.
As you can see in the provided debug output:
kamailio[]: DEBUG: htable [ht_api.c:1046]: ht_table_spec(): htable
[callpush] - dbmode [1]
kamailio[]: DEBUG: htable [ht_api.c:1027]: ht_table_spec(): htable
[callpush] - dbtable [userpush]
kamailio[]: DEBUG: htable [ht_api.c:1036]: ht_table_spec(): htable
[callpush] - expire [86400]
kamailio[]: DEBUG: htable [ht_api.c:1041]: ht_table_spec(): htable
[callpush] - size [10]
dbmode is set to 1 in the config:
modparam("htable", "db_url", "sqlite:////etc/kamailio/htable.sqlite")
...
modparam("htable", "htable", "userpush=>size=3;autoexpire=600;dbtable=userpush;dbmode=1")
If I execute
kamcmd htable.store userpush
I get
Ok. Htable successfully stored to DB.
But the table is still empty!!!
In the log I found:
ERROR: db_sqlite [dbase.c:528]: db_sqlite_commit(): sqlite commit
failed: attempt to write a readonly database
ERROR: db_sqlite [dbase.c:177]: db_sqlite_cleanup_query(): finalize
failed: attempt to write a readonly database
ERROR: htable [ht_db.c:668]: ht_db_delete_records(): failed to delete db
records in [userpush]
ERROR: db_sqlite [dbase.c:528]: db_sqlite_commit(): sqlite commit
failed: attempt to write a readonly database
Ok.
But I can not see this entries if I shutdown kamailio.
And:
-rw-rw-rw- 1 kamailio root 16384 Jul 13 16:14 htable.sqlite
I never used:
modparam("db_sqlite","db_set_readonly" ...
I also restarted kamailio. no difference.
No more errors then before:
It is not written at shutdown. (no messages)
It is not written (live) (with error messages, but why it is readonly?)
The message of kamcmd is wrong (says Ok but it failed)
Best regards,
Bernd
Am 17.07.2023 um 08:48 schrieb Daniel-Constantin Mierla:
> Hello,
>
> is dbmode=1 in htable definition?
>
> If you run rpc command htable.store for the htable, are the records
> saved to database?
>
> Cheers,
> Daniel
>
> On 13.07.23 17:45, Bernd Krueger-Knauber wrote:
>> Hi,
>>
>> I just tried to use sqlite and htable to load and save the values.
>> At start I can see in the log, that all parameters are correct and
>> that htable want to load the values from the table.
>> No errors.
>>
>> But if I stop kamailio, nothing is written to the tables.
>>
>> At start I can see:
>>
>> kamailio[]: DEBUG: <core> [core/modparam.c:112]:
>> set_mod_param_regex(): 'htable' matches module 'htable'
>> kamailio[]: DEBUG: <core> [core/sr_module.c:814]: find_param_export():
>> found <htable> in module htable
>> [/usr/lib/x86_64-linux-gnu/kamailio/modules/htable.so]
>> kamailio[]: DEBUG: <core> [core/modparam.c:128]:
>> set_mod_param_regex(): found <htable> in module htable
>> [/usr/lib/x86_64-linux-gnu/kamailio/modules/htable.so]
>> kamailio[]: DEBUG: htable [ht_api.c:1046]: ht_table_spec(): htable
>> [callpush] - dbmode [1]
>> kamailio[]: DEBUG: htable [ht_api.c:1027]: ht_table_spec(): htable
>> [callpush] - dbtable [userpush]
>> kamailio[]: DEBUG: htable [ht_api.c:1036]: ht_table_spec(): htable
>> [callpush] - expire [86400]
>> kamailio[]: DEBUG: htable [ht_api.c:1041]: ht_table_spec(): htable
>> [callpush] - size [10]
>>
>>
>>
>> kamailio[]: DEBUG: htable [ht_api.c:1084]: ht_db_load_tables():
>> loading db table [userpush] in ht [userpush]
>> kamailio[]: DEBUG: htable [ht_db.c:232]: ht_db_load_table():
>> =============== loading hash table [userpush] from database [userpush]
>> kamailio[]: DEBUG: db_sqlite [dbase.c:223]: db_sqlite_submit_query():
>> submit_query: select key_name,key_type,value_type,key_value from
>> userpush order by key_name
>> kamailio[]: DEBUG: <core> [db_query.c:72]: db_do_submit_query():
>> submitted query: select key_name,key_type,value_type,key_value from
>> userpush order by key_name, result 0
>> kamailio[]: DEBUG: <core> [db_res.c:119]: db_new_result(): allocate 56
>> bytes for result set at 0x7f4882107938
>> kamailio[]: DEBUG: <core> [db_res.c:79]: db_free_columns(): freeing 0
>> columns
>> kamailio[]: DEBUG: <core> [db_res.c:138]: db_free_result(): freeing
>> result set at 0x7f4882107938
>>
>> Ok, the file is empty, but it tries to load the data from the table.
>>
>> The table looks like:
>>
>> sqlite> .schema userpush
>> CREATE TABLE userpush (
>> key_name TEXT,
>> "key_type" INTEGER,
>> value_type INTEGER,
>> key_value TEXT
>> );
>>
>>
>> I checked the source code and I saw that destroy() should be called.
>> Inside is ht_db_open_con() called before ht_db_sync_tables(), were it
>> happens.
>> But I can even not see the debug message from ht_db_open_con() :
>>
>> LM_DBG("database connection opened successfully\n")
>> and also not
>> LM_ERR("failed to connect to the database\n");
>>
>> For me it looks like, that the destroy() function is not called.
>>
>> Even with debug=3, I can only see:
>>
>>
>> systemd[]: Stopping kamailio.service - Kamailio - the Open Source SIP
>> Server...
>> kamailio[]: INFO: <core> [main.c:854]: sig_usr(): signal 15 received
>> systemd[]: kamailio.service: Deactivated successfully.
>> systemd[]: Stopped kamailio.service - Kamailio - the Open Source SIP
>> Server.
>>
>> I stopped kamailio with
>>
>> systemctl stop kamailio
>>
>> I'm sure that something was inside the htable before I stoped kamailio:
>>
>> {
>> entry: 0
>> size: 1
>> slot: {
>> {
>> name:
>> 07db580a6c13e798a5acc0d123d6e957897c8650b43f99d6d5cb9c2cb5ba4fa4
>> value:
>> 3a28dcb73eb65722df5a261983b7692cecdca482bf8725032e46a0c6b89fb355
>> type: str
>> }
>> }
>> }
>>
>> Any further ideas?
>>
>> Best regards,
>>
>> Bernd
>>
>>
>>
>> __________________________________________________________
>> Kamailio - Users Mailing List - Non Commercial Discussions
>> To unsubscribe send an email tosr-users-leave(a)lists.kamailio.org
>> Important: keep the mailing list in the recipients, do not reply only
>> to the sender!
>> Edit mailing list options or unsubscribe:
--
EDNT GmbH
Werner-von-Siemens-Strasse 7
64625 Bensheim
www.ednt.de
Registergericht: Darmstadt
Registernummer: 24972
Geschäftsführer: Karlheinz Knapp
Hi,
I just tried to use sqlite and htable to load and save the values.
At start I can see in the log, that all parameters are correct and that
htable want to load the values from the table.
No errors.
But if I stop kamailio, nothing is written to the tables.
At start I can see:
kamailio[]: DEBUG: <core> [core/modparam.c:112]: set_mod_param_regex():
'htable' matches module 'htable'
kamailio[]: DEBUG: <core> [core/sr_module.c:814]: find_param_export():
found <htable> in module htable
[/usr/lib/x86_64-linux-gnu/kamailio/modules/htable.so]
kamailio[]: DEBUG: <core> [core/modparam.c:128]: set_mod_param_regex():
found <htable> in module htable
[/usr/lib/x86_64-linux-gnu/kamailio/modules/htable.so]
kamailio[]: DEBUG: htable [ht_api.c:1046]: ht_table_spec(): htable
[callpush] - dbmode [1]
kamailio[]: DEBUG: htable [ht_api.c:1027]: ht_table_spec(): htable
[callpush] - dbtable [userpush]
kamailio[]: DEBUG: htable [ht_api.c:1036]: ht_table_spec(): htable
[callpush] - expire [86400]
kamailio[]: DEBUG: htable [ht_api.c:1041]: ht_table_spec(): htable
[callpush] - size [10]
kamailio[]: DEBUG: htable [ht_api.c:1084]: ht_db_load_tables(): loading
db table [userpush] in ht [userpush]
kamailio[]: DEBUG: htable [ht_db.c:232]: ht_db_load_table():
=============== loading hash table [userpush] from database [userpush]
kamailio[]: DEBUG: db_sqlite [dbase.c:223]: db_sqlite_submit_query():
submit_query: select key_name,key_type,value_type,key_value from
userpush order by key_name
kamailio[]: DEBUG: <core> [db_query.c:72]: db_do_submit_query():
submitted query: select key_name,key_type,value_type,key_value from
userpush order by key_name, result 0
kamailio[]: DEBUG: <core> [db_res.c:119]: db_new_result(): allocate 56
bytes for result set at 0x7f4882107938
kamailio[]: DEBUG: <core> [db_res.c:79]: db_free_columns(): freeing 0
columns
kamailio[]: DEBUG: <core> [db_res.c:138]: db_free_result(): freeing
result set at 0x7f4882107938
Ok, the file is empty, but it tries to load the data from the table.
The table looks like:
sqlite> .schema userpush
CREATE TABLE userpush (
key_name TEXT,
"key_type" INTEGER,
value_type INTEGER,
key_value TEXT
);
I checked the source code and I saw that destroy() should be called.
Inside is ht_db_open_con() called before ht_db_sync_tables(), were it
happens.
But I can even not see the debug message from ht_db_open_con() :
LM_DBG("database connection opened successfully\n")
and also not
LM_ERR("failed to connect to the database\n");
For me it looks like, that the destroy() function is not called.
Even with debug=3, I can only see:
systemd[]: Stopping kamailio.service - Kamailio - the Open Source SIP
Server...
kamailio[]: INFO: <core> [main.c:854]: sig_usr(): signal 15 received
systemd[]: kamailio.service: Deactivated successfully.
systemd[]: Stopped kamailio.service - Kamailio - the Open Source SIP Server.
I stopped kamailio with
systemctl stop kamailio
I'm sure that something was inside the htable before I stoped kamailio:
{
entry: 0
size: 1
slot: {
{
name:
07db580a6c13e798a5acc0d123d6e957897c8650b43f99d6d5cb9c2cb5ba4fa4
value:
3a28dcb73eb65722df5a261983b7692cecdca482bf8725032e46a0c6b89fb355
type: str
}
}
}
Any further ideas?
Best regards,
Bernd
Hello Awesome people,
I have configured Kamailio in front of two Freeswitch servers. I am using the dispatcher module to load and balance the traffic between the two FS boxes. My dispatcher is configured in a round-robin fashion.
If I send a register to my FS servers, the re-register post-challenge (401) message is routed to the second FS server and the registration fails. I want to check with you guys how are you handling this in your setups. I am sure a lot of companies are using Kamailio to load balance traffic toward the FS and Asterisk servers.
UAC --- > Kamailio --- > FS1
REG ---- > REG ---- > REG
401 <---- 401 < ---- 401
re-register with authorization data:
UAC --- > Kamailio --- > FS2
REG --- > REG ---- > REG
401 <---- 401 < ---- 401
it just create this loop and register fails.
Ideally, I want Kamailio to send the re-register (with auth data) to the same FS server that challenged it.
Any ideas or pointers to fix this issue would be highly appreciated, maybe I am missing some very basic configuration. Or maybe there is another simpler way instead of using a dispatcher module.
Thank you!
Regards,
Shah Hussain
Hi
Please find some more before and after, Ip address and number is masked FYI.
INFO: <script>: TIME : TEST - Rewriting To header with Request line so that
vendor prefix is present
INFO: <script>: TIME : TEST2 - tu is sip:+123456789@10.0.77.88 and ru is
sip:10.0.1.47:5060
INFO: <script>: TIME : TEST3 - tu is sip:+123456789@10.0.77.88 and ru is
sip:10.0.1.47:5060
ERROR: tm [tm.c:1752]: _w_t_relay_to(): t_forward_noack failed
ERROR: tm [t_reply.c:1081]: run_failure_handlers(): error running
run_top_route for failure handler
INFO: <script>: TIME : [Mon Jul 10 12:24:14 2023] CALL ID :
[31bca077-99fa-123c-eb84-00219b9e3ef4] [WITHINDIALOG] The request is [ACK]
INFO: <script>: TIME : [Mon Jul 10 12:24:14 2023] CALL ID :
[31bca077-99fa-123c-eb84-00219b9e3ef4] [PROXY_OUTBOUND_HANDLE] [ACK]
INFO: <script>: TIME : [Mon Jul 10 12:24:14 2023] CALL ID : [
205526695_49743609(a)206.147.84.20] [WITHINDIALOG] The request is [ACK]
Here is the code i suspect, Let me know if you can find some thing why the
error usually gets,
*failure_route["serial"] { if (!t_next_contacts()) { exit; }
t_on_failure("serial"); xlog("L_INFO","TIME : [$Tf] CALL ID : [$ci]
[serial]The altered ruri is [$ru] \n"); xlog("L_INFO", "TIME : TEST -
Rewriting To header with Request line so that vendor prefix is present");
xlog("L_INFO","TIME : TEST2 - tu is $tu and ru is $ru \n"); $tu = $ru;
xlog("L_INFO","TIME : TEST3 - tu is $tu and ru is $ru \n");
t_relay();}event_route[tm:branch-failure:REMOVE_OLD_REGISTER] { if
(t_check_status("(404)|(410)")) { xlog("L_INFO","TIME : Received code
[$T(reply_code)] from SBC, need to remove registration \n");
xlog("L_INFO","TIME : [$Tf] CALL ID : [$ci] [REMOVE_OLD_REGISTER] contact
is [$ct]Unregister section is entered [$ru] \n"); unregister("location",
"$tu", "$T_reply_ruid"); }}*
Thank you.
On Tue, Jul 11, 2023 at 3:46 PM <sr-users-request(a)lists.kamailio.org> wrote:
> Send sr-users mailing list submissions to
> sr-users(a)lists.kamailio.org
>
> To subscribe or unsubscribe via email, send a message with subject or
> body 'help' to
> sr-users-request(a)lists.kamailio.org
>
> You can reach the person managing the list at
> sr-users-owner(a)lists.kamailio.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of sr-users digest..."
>
> Today's Topics:
>
> 1. Need an error description (satyaprakash ch)
> 2. Re: Need an error description (Alex Balashov)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Mon, 10 Jul 2023 22:25:31 +0530
> From: satyaprakash ch <chiramchetty.satyaprakash(a)gmail.com>
> Subject: [SR-Users] Need an error description
> To: "Kamailio (SER) - Users Mailing List"
> <sr-users(a)lists.kamailio.org>
> Message-ID:
> <
> CAO-xAtGhcDMiPtoGdBeb6qvhOg8u7hxKt-w-5oU4KuOkdRHuqg(a)mail.gmail.com>
> Content-Type: multipart/alternative;
> boundary="0000000000005a4339060024dadd"
>
> Hi,
>
> Can anyone help me with the error why can we get this?
>
> ERROR: tm [tm.c:1752]: _w_t_relay_to(): t_forward_noack failed ERROR: tm
> [t_reply.c:1081]: run_failure_handlers(): error running run_top_route for
> failure handler
>
> Thank you.
>
Hi,
Can anyone help me with the error why can we get this?
ERROR: tm [tm.c:1752]: _w_t_relay_to(): t_forward_noack failed ERROR: tm
[t_reply.c:1081]: run_failure_handlers(): error running run_top_route for
failure handler
Thank you.
Hello,
As per Kamailio documentation, $RANDOM returns a random value from the [0 - 2^31) range. But when testing it it's always returning a random number of 9 or 10 digits.
I'm not sure if it's always the case or if it can also returns numbers with 1 or 2 digits as well.
Another question, how can I force it to return a number of specific digits starting with certain prefix.
Regards,