Hello,
We're using kamailio, with rtpengine for RTP encryption/decryption. It
works fine but I would like to understand the integration better.
How does rtpengine get the TLS certificates, and what crypto library does
it use (openssl?).
Thank you in advance,
--
David Cunningham, Voisonics Limited
http://voisonics.com/
USA: +1 213 221 1092
New Zealand: +64 (0)28 2558 3782
Hi Gang
I have a strange issue after upgrading to 5.7
I use dlg_vars to keep some information until the end of the call to
write them in a CDR.
One of those variables records the timestamp of the first invite to
determine how long it took from the invite to the 'connection
established' if at all.
The CDR is written when the BYE is being processed by the dialog module.
Strangely, since updating to 5.7 (used to work with 5.5 and 5.6 I
think, but I could be mistaking as other changes were …
[View More]made to the
config) my dialog variables are null when BYE is being processed.
reading the docs, I learned that that dlg_var are only polulated after
loose_route() has been called.
So I added some logging statement to track if the BYE in question is
processed by loose_route().
Yes, it is, loose_route() returns success on the BYE in question. But
when I log the content of my dlg_var after loose_route() it is still
null.
Any idea what the cause could be?
--
Mit freundlichen Grüssen
-Benoît Panizzon- @ HomeOffice und normal erreichbar
--
I m p r o W a r e A G - Leiter Commerce Kunden
______________________________________________________
Zurlindenstrasse 29 Tel +41 61 826 93 00
CH-4133 Pratteln Fax +41 61 826 93 01
Schweiz Web http://www.imp.ch
______________________________________________________
[View Less]
Hi,
We're encountering a CPU load of approximately 90% on the Kamailio proxy
server. Additionally, there's an error logged indicating a lost connection
to MySQL. Could this indicate a problem with the configuration file or is
it related to MySQL itself? Your guidance would be appreciated.
MySQL version: Ver 14.14 Distrib 5.5.47
Kamailio version: 5.5.5
Error in logs:
/usr/local/sbin/kamailio[24933]: ERROR: db_mysql [km_dbase.c:122]:
db_mysql_submit_query(): driver error on query: Lost …
[View More]connection to MySQL
server during query (2013)
[View Less]
Hi All,
I'm new to Kamailio but have been running dozens of Freepbx systems for the
last 10 years. We are an Education Service District and service K-12
schools. Many of these we provide dial tone to, the rest we have
connections to to provide for toll avoidance and backup outbound calling
when the LEC fails. Our main focus is to save schools money
that can be used for education instead of infrastructure.
Right now I have a single freepbx machine that is using inbound routes to
send calls …
[View More]to the proper school district. I would like to replace this with
a Kamailio server instead but can't seem to get my mind around the best way
to do this.
I have 119 inbound routes in my current system with 22 trunks to the other
districts. This may increase in the future as we try to migrate districts
off of the expensive systems to a more open source way of calling.
Currently calls between districts take the route out of the system just to
come right back in to be routed to a different district. I would like to
avoid that if possible.
I've been trying to educate myself on the best practice in this type of
structure but can't seem to figure out the best way to make this work. Most
of the videos and websites assume a pretty intimate knowledge of Kamailio.
That and the database structure doesn't make sense to me.
I would like to keep each freepbx as its own registrar as we have lots of
crossover with extensions and a few of the districts have their own staff
that manage that aspect of the machines. .
Any suggestions would be appreciated. Please ask questions if this just
looks like I'm rambling.
--
Wayne Wenthin
Wide Area Network Administrator | CTA@MESD
503.257.1562 Phone/Fax
www.cascadetech.org
[View Less]
Hi community,
I am preparing a setup of Kamailio with radius accounting on a docker-compose environment. When configuring the acc_radius module I had to navigate through some old doc by Daniel and inspecting the code itself. The thing is that it seems working, but not. And, yes, I already trying without docker :)
Context: two containers, host newtork, to keep it simple
- one with kamailio + modules (acc, acc_radius with rad_cli) + radius client configuration
- another with freeradius + radius …
[View More]client configuration.
I ensure that all data correspond and radius config is fine and spin them up. Run some radius commands to test and let's try some accounting...
Executing a failed call and triggering the account flag method, I receive an opaque -1 error from the module:
```
kamailio-1 | 1(20) INFO: {1 22 INVITE yutncivdtflvzga@PT-96} <script>: Initial requests
kamailio-1 | 1(20) INFO: {1 22 INVITE yutncivdtflvzga@PT-96} <script>: FLAG FLT_ACC set
kamailio-1 | 1(20) NOTICE: {1 22 INVITE yutncivdtflvzga@PT-96} acc [acc.c:286]: acc_log_request(): ACC: call missed: timestamp=1709746392;method=INVITE;from_tag=wvaqi;to_tag=1a86669fc745788378faa461e7993953-78550000;call_id=yutncivdtflvzga@PT-96;code=404;reason=Not Found;src_user=1000;src_domain=kamailio-local;src_ip=172.20.0.1;dst_ouser=1001;dst_user=1001;dst_domain=kamailio-local
kamailio-1 | 1(20) ERROR: {1 22 INVITE yutncivdtflvzga@PT-96} acc_radius [acc_radius_mod.c:497]: acc_radius_send_request(): Radius accounting - ERROR - result: -1
```
Log accounting is working ok, but radius accounting not. Time for troubleshooting.
I tried to enable client debugging, but the module does not respond. So I modify the source directly... tested with `radclient` , `radtest`, `radsniff`... all seems to work when trying manually... I also used an internal radcli fuction `rc_check()` and it works. Meanwhile, I was unable to make it work with the module and the radcli library.
So another log output using internal functions to debug the configuration:
```
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:312]: check_cfg(): Clave: nas-identifier, Valor: radius-wac
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:312]: check_cfg(): Clave: authserver, Valor: radius
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:312]: check_cfg(): Clave: acctserver, Valor: radius
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:306]: check_cfg(): Clave: servers, Valor: /usr/local/etc/radcli/servers - OK file found
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:306]: check_cfg(): Clave: dictionary, Valor: /usr/local/etc/radcli/dictionary - OK file found
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:300]: check_cfg(): Clave: default_realm, Valor: -- not set --
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:312]: check_cfg(): Clave: radius_timeout, Valor: 10
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:312]: check_cfg(): Clave: radius_retries, Valor: 3
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:312]: check_cfg(): Clave: bindaddr, Valor: *
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:312]: check_cfg(): Clave: clientdebug, Valor: 1
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:369]: init_acc_rad(): RC_ACCT_INIT: rc_test_config looks good
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:375]: init_acc_rad(): RC_ACCT_INIT: Config applyed ok
```
The configuration seems ok, accepted by the library and seems to be applied properly, but when trying to parse its values... all seems like rubish...
```
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:401]: init_acc_rad(): RC_ACCT_INIT: Name: P�y:^
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:402]: init_acc_rad(): RC_ACCT_INIT: Max 1
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:403]: init_acc_rad(): RC_ACCT_INIT: Port: 125489528
kamailio-1 | 0(18) INFO: acc_radius [acc_radius_mod.c:404]: init_acc_rad(): RC_ACCT_INIT: Secret:
kamailio-1 | 0(18) ERROR: acc_radius [acc_radius_mod.c:410]: init_acc_rad(): RC_CLIENTDEBUG: No clientdebug specified
```
I'm using `libradcli4 1.2.11-1+b2` for running on the container and `libradcli-dev 1.2.11-1build1` for compiling.
Open to hear ideas, somebody using it actively on latest 5.7 release?
Some updated documentation flying around?
I was thinking to open a GitHub issue to handle the documentation issue.
Thanks in advance!
[View Less]
Hello,
I have remote users registering/ routing calls through my server. When calls do pass through the server, the server updates the from name, to uri and from uri via updating the pseudovariables $fn, $tu, and $fu respectively. While this is has been working, I do occasionally see calls failing to process as the remote gateway fails the call with a "400 Bad From header". Inspecting the A-leg INVITE and the B-leg INVITE after updating the pseudovariables, I see the following:
A-leg INVITE:
…
[View More]INVITE sip:15551112222@example.com SIP/2.0
Via: SIP/2.0/UDP 79..xx.xx.xx:61379;rport;branch=z9hG4bKPj2b8935f4460447538d0176dcfb5c74a1
Max-Forwards: 70
From: sip:12223334444@example.com;tag=dff3c585a6154f23898e1121918f1752
To: sip:15551112222@example.com
Contact: <sip:12223334444@79..xx.xx.xx:61379;ob>
Call-ID: d793331e066f47bdafc0ad957cb506cc
CSeq: 30770 INVITE
Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
Supported: replaces, 100rel, timer, norefersub
Session-Expires: 1800
Min-SE: 90
Proxy-Authorization: Digest username="12223334444", realm="example.com", nonce="ZhUw02YVL6cdi51KMymTxGpzCZCZhd8G", [uri="sip:15551112222@example.com](mailto:uri=)", response="3a25b4ea0b1154e31caee1184a92f12b"
Content-Type: application/sdp
Content-Length: 627
v=0
o=- 3921660487 3921660487 IN IP4 79..xx.xx.xx
s=pjmedia
b=AS:84
t=0 0
a=X-nat:0
m=audio 4006 RTP/AVP 96 97 98 99 3 0 8 9 120 121 122
c=IN IP4 79..xx.xx.xx
b=TIAS:64000
a=rtcp:4007 IN IP4 79..xx.xx.xx
a=sendrecv
a=rtpmap:96 speex/16000
a=rtpmap:97 speex/8000
a=rtpmap:98 speex/32000
a=rtpmap:99 iLBC/8000
a=fmtp:99 mode=30
a=rtpmap:3 GSM/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:9 G722/8000
a=rtpmap:120 telephone-event/16000
a=fmtp:120 0-16
a=rtpmap:121 telephone-event/8000
a=fmtp:121 0-16
a=rtpmap:122 telephone-event/32000
a=fmtp:122 0-16
a=ssrc:63772004 cname:3ff849bd611036a7
----------------------------------
B-leg INVITE:
INVITE sip:15551112222@togateway.com SIP/2.0
Record-Route: <sip:10.64.54.207;lr;ftag=dff3c585a6154f23898e1121918f1752;did=e21.65c1>
Via: SIP/2.0/UDP 10.64.54.207:5060;branch=z9hG4bK919d.5ca83e030c0879093169546cd80591a6.0
Via: SIP/2.0/UDP 79..xx.xx.xx:61379;received=79..xx.xx.xx;rport=61379;branch=z9hG4bKPj2b8935f4460447538d0176dcfb5c74a1
Max-Forwards: 15
From: sip:12125557777@example.com"Updated Name" ;tag=dff3c585a6154f23898e1121918f1752
To: sip:15551112222@togateway.com
Contact: <sip:12125557777@79..xx.xx.xx:61379;ob>
Call-ID: d793331e066f47bdafc0ad957cb506cc
CSeq: 30770 INVITE
Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
Supported: replaces, 100rel, timer, norefersub
Session-Expires: 1800
Min-SE: 90
Content-Type: application/sdp
Content-Length: 609
v=0
o=- 3921660487 3921660487 IN IP4 10.64.54.207
s=pjmedia
b=AS:84
t=0 0
a=X-nat:0
m=audio 18400 RTP/AVP 96 97 98 99 3 0 8 9 120 121 122
c=IN IP4 10.64.54.207
b=TIAS:64000
a=ssrc:63772004 cname:3ff849bd611036a7
a=rtpmap:96 speex/16000
a=rtpmap:97 speex/8000
a=rtpmap:98 speex/32000
a=rtpmap:99 iLBC/8000
a=fmtp:99 mode=30
a=rtpmap:3 GSM/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:9 G722/8000
a=rtpmap:120 telephone-event/16000
a=fmtp:120 0-16
a=rtpmap:121 telephone-event/8000
a=fmtp:121 0-16
a=rtpmap:122 telephone-event/32000
a=fmtp:122 0-16
a=sendrecv
a=rtcp:18401
Note that I've updated the following on the B-leg:
$fn = "Updated Name" // originally nothing
$fu = sip:12125557777@example.com // originally sip:12223334444@example.com
$tu = sip:15551112222@togateway.com // originally sip:15551112222@example.com
While the from uri, and to uri do get updated, the from name is injected in the wrong place of the from header. This only seems to happen when the A-leg is missing the "<" and ">" characters enclosing the from headers.
Should I not be updating the pseudo variables in this manner to update the from name, to uri and from uri; is there another way to update these attributes of the header without malforming it?
Thank you.
[View Less]
Hello,
Last week, I submitted a request on the Asipto website to purchase the Kamailio Admin Book and received an automatic confirmation email. However, I have not received any further instructions on how to complete the purchase. I replied to the automatic email to follow up, but still, there has been no response. I need to get the book as soon as possible.
Please note, I am writing from a different email address than the one I used to make the request on Asipto's site. If there are any …
[View More]issues with their contact email, or if further verification is needed, please let me know how to proceed securely without sharing personal details publicly on this list.
Regards,
Mohamed.
[View Less]
Hi,
I have one question about dispatcher module in kamailio V.5.3.1.
Why the ds_ping_interval parameter is only global value? Is it possible introduce the customization value for single destination?
Customization from destination is already possible for ds_ping_from parameter using special attributes in destination list file or db table, is it possible introduce the same management for ds_ping_interval?
Thanks,
Giuseppe
________________________________
NOTA BENE: Le informazioni contenute …
[View More]nel presente messaggio, compresi gli eventuali allegati, sono strettamente confidenziali ed indirizzate unicamente al destinatario indicato. Qualora non foste il destinatario Vi invitiamo a cancellare il messaggio, ed ogni eventuale documento allegato, non divulgare il contenuto a terze persone ed a volerci avvisare a mezzo posta elettronica. Grazie. A TLC S.r.l. tratta i vostri dati personali nel rispetto della normativa vigente in materia di Privacy (D.Lgs.196/2003 modificato dal D.Lgs.101/2018 e GDPR Regolamento UE n.679/2016). Per consultare l’Informativa completa la invitiamo a visitare il nostro sito web “www.aethra.com<http://www.aethra.com/>”
PLEASE NOTE: This message and any attachments are confidential and may contain privileged information. If you are not the intended recipient, you are kindly requested to cancel it, not to disclose the contents to any other person and to notify the sender immediately by return e-mail. Thanks. A TLC S.r.l. collects your personal data in compliance with applicable data protection laws (D.Lgs. 196/2003 amended by Legislative Decree 101/018 and GDPR EU Regulation n. 679/2016). Please visit our website ”www.aethra.com<http://www.aethra.com>” to consult the complete Policy.
[View Less]
Hello all,
The xhttp_module can export all stats under "stats.get_statistics" RPC command.
I was thinking of adding an optional "uptime" stat that will return
the kamailio server uptime (like the "core.uptime" RPC command). This
will make it easier to add an uptime panel in grafana.
The new stat would be controlled by a module parameter (by default disabled).
Something like:
modparam("xhttp_prom", "xhttp_prom_uptime_stat" 1)
And this will generate something like:
kam_uptime 671 1712249054631
…
[View More]This can be already implemented in the script using the
"prom_gauge_set()" and retrieving the uptime via "jsonrpc_exec()", but
it would be nicer and faster to implement it in the module itself.
Comments?
-ovidiu
[View Less]