Have you confirmed if the NOTIFY is sent? Attempted to be sent? Noticed you said "but no NOTIFY is received"
-----Original Message-----
From: sr-users <sr-users-bounces(a)lists.kamailio.org> On Behalf Of sr-users-request(a)lists.kamailio.org
Sent: 19 November 2022 11:00
To: sr-users(a)lists.kamailio.org
Subject: sr-users Digest, Vol 210, Issue 19
Send sr-users mailing list submissions to
sr-users(a)lists.kamailio.org
To subscribe or unsubscribe via the World Wide Web, visit
https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.kam…
or, 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. RLS is not sending Notify on resource list updated (Joey Golan)
----------------------------------------------------------------------
Message: 1
Date: Fri, 18 Nov 2022 21:33:29 +0200
From: Joey Golan <joeygo(a)gmail.com>
To: "Kamailio (SER) - Users Mailing List"
<sr-users(a)lists.kamailio.org>
Subject: [SR-Users] RLS is not sending Notify on resource list updated
Message-ID:
<CAAOPBYfHikYXKSRga5Mnf+fgUisrDk5PgHoCZ7anMgqqAmnU-w(a)mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
Hello,
I'm using Kamailio v5.6.2 with presence, presence_xml, xcap_server, and rls modules.
I pushed 2 documents to the xcap server:
1. urn:ietf:params:xml:ns:resource-lists
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<resource-lists xmlns="urn:ietf:params:xml:ns:resource-lists">
<list name="friends">
<entry uri="sip:1001@example.com">
<display-name>1001</display-name>
</entry>
<entry uri="sip:1002@example.com">
<display-name>1002</display-name>
</entry>
</list>
</resource-lists>
2. urn:ietf:params:xml:ns:rls-services
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<rls-services xmlns="urn:ietf:params:xml:ns:rls-services"
xmlns:rl="urn:ietf:params:xml:ns:resource-lists" xmlns:xsi="
https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.w3.org…">
<service uri="sip:1000+presence@example.com">
<resource-list>
https://kamailio:5061/xcap-root/resource-lists/users/sip:1000@example.com/i…
"friends"]</resource-list>
<packages>
<package>presence</package>
</packages>
</service>
</rls-services>
I'm subscribing to presence event on rls-service
SUBSCRIBE sip:1000+presence@example.com SIP/2.0
Via: SIP/2.0/TLS 10.255.0.3:33883
;rport;branch=z9hG4bKPjbe079f60-d0e0-4f1e-9f93-b18e467be5e8;alias
Max-Forwards: 70
From: "1000" <sip:1000@example.com>;tag=97ef0748-da39-442f-9a02-468b67134ad6
To: <sip:1000+presence@example.com>
Contact: <sip:20416583@10.255.0.3:5061;transport=tls>
Call-ID: 9773a68c-b001-49f0-9ffa-093beb3d8e36
CSeq: 18636 SUBSCRIBE
Event: presence
Expires: 600
Supported: 100rel, replaces, norefersub, gruu
Accept: multipart/related, application/rlmi+xml, application/pidf+xml
Allow-Events: presence
Supported: eventlist
User-Agent: sipsimple 5.2.6
Content-Length: 0
The RLS sends a NOTIFY immediately upon accepting the subscription according to RFC 4662 and also the RLS is virtually subscribing to the presence event on the 2 resources in the friends list
NOTIFY sip:20416583@10.255.0.3:5061;transport=tls SIP/2.0
Via: SIP/2.0/TLS joey-local-proxy.example.com:5061
;branch=z9hG4bKa93d.b63e0697000000000000000000000000.0
To: <sip:1000@example.com>;tag=97ef0748-da39-442f-9a02-468b67134ad6
From: <sip:1000+presence@example.com
>;tag=e02a02cb113b2bdb8ebdb022d767e6d2-a1677c19
CSeq: 1 NOTIFY
Call-ID: 9773a68c-b001-49f0-9ffa-093beb3d8e36
Content-Length: 468
Max-Forwards: 70
Event: presence
Contact: <sip:kamailio@example.com:5060>
Subscription-State: active;expires=600
Require: eventlist
Content-Type:
multipart/related;type="application/rlmi+xml";start="<1668755827.sip:1000+presence@example.com.1700642067
>";boundary="1W1NaaaIIq6dOtLRXODFwqmC"
--1W1NaaaIIq6dOtLRXODFwqmC
Content-Transfer-Encoding: binary
Content-ID: <1668755827.sip:1000+presence@example.com.1700642067>
Content-Type: application/rlmi+xml;charset="UTF-8"
<?xml version="1.0"?>
<list uri="sip:1000+presence@example.com"
xmlns="urn:ietf:params:xml:ns:rlmi" version="1" fullState="true">
<resource uri="sip:1001@example.com"/>
<resource uri="sip:1002@example.com"/>
</list>
--1W1NaaaIIq6dOtLRXODFwqmC--
Now I?m changing the resource list using XCAP.
I?m sending a PUT request with a new document and I see that the change is pushed to the DB but user 1000 is not receiving a NOTIFY with the updated list.
This is the updated document:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<resource-lists xmlns="urn:ietf:params:xml:ns:resource-lists">
<list name="friends">
<entry uri="sip:1001@example.com">
<display-name>1001</display-name>
</entry>
<entry uri="sip:1002@example.com">
<display-name>1002</display-name>
</entry>
<entry uri="sip:1003@example.com">
<display-name>1003</display-name>
</entry>
</list>
</resource-lists>
I see that Kamailio is virtually subscribing on 1003 (The newly added user) but NOTIFY is not received.
Also tried to subscribe on xcap-diff event, and the subscription was accepted successfully but no NOTIFY is received.
Am I missing something?
Thanks,
Joey
Hello,
I'm trying to set up kamailio on a Cent OS 9 server but I'm unable to
install the kamailio-mysql module. Can someone suggest any possible
solutions here,
Tried to setup kamdbctl after changing the configuration to use mysql,
➜ ~ kamdbctl create
ERROR: could not load the script in
/usr/lib64/kamailio//kamctl/kamdbctl.mysql for database engine MYSQL
ERROR: database engine not loaded - tried 'MYSQL'
Contents of /usr/lib64/kamailio/kamctl/, I'm not sure why there's a double
slash in the message above
➜ ~ ls /usr/lib64/kamailio/kamctl/
dbtextdb kamctl.base kamctl.ctlbase kamctl.dbtext kamctl.rpcfifo
kamctl.ser kamctl.sqlbase kamdbctl.base kamdbctl.dbtext
I'm unable to install kamailio-mysql
➜ ~ dnf install kamailio-mysql
Last metadata expiration check: 0:00:23 ago on Thursday 01 December 2022
03:53:45 AM.
Error:
Problem: conflicting requests
- nothing provides libmysqlclient.so.21()(64bit) needed by
kamailio-mysql-5.6.2-0.el9.centos.x86_64
- nothing provides libmysqlclient.so.21(libmysqlclient_21.0)(64bit)
needed by kamailio-mysql-5.6.2-0.el9.centos.x86_64
- nothing provides mysql-libs needed by
kamailio-mysql-5.6.2-0.el9.centos.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to
use not only best candidate packages)
I've checked that I do have the following repolists,
➜ kamctl dnf repolist
repo id repo name
appstream CentOS Stream 9 -
AppStream
baseos CentOS Stream 9 -
BaseOS
epel Extra Packages for
Enterprise Linux 9 - x86_64
epel-next Extra Packages for
Enterprise Linux 9 - Next - x86_64
extras-common CentOS Stream 9 -
Extras packages
kamailio Kamailio - latest
- Packages for the Kamailio latest release
mariadb-main MariaDB Server
mariadb-maxscale MariaDB MaxScale
mariadb-tools MariaDB Tools
tailscale-stable Tailscale stable
This is after a fresh installation of CentOS 9. I believe that I might have
a missing repolist or probably have something incorrect in the
configuration.
Hello Igor,
yes - you can use a RPC command, I think its in corex module.
Cheers,
Henning
--
Henning Westerholt - https://skalatan.de/blog/
Kamailio services - https://gilawa.com<https://gilawa.com/>
From: Igor Potjevlesch <igor.potjevlesch(a)gmail.com>
Sent: Wednesday, November 30, 2022 5:14 PM
To: Henning Westerholt <hw(a)gilawa.com>
Subject: RE: [SR-Users] kamctl cr reload doesn't reload all routes
Hello Henning,
Not really. I just place a call to the prefix and I can see that the route is still the previous one, not the one updated in DB.
Can I set INFO loglevel without restarting?
Regards,
Igor.
De : Henning Westerholt <hw(a)gilawa.com<mailto:hw@gilawa.com>>
Envoyé : mercredi 30 novembre 2022 15:03
À : Igor Potjevlesch <igor.potjevlesch(a)gmail.com<mailto:igor.potjevlesch@gmail.com>>; 'Kamailio (SER) - Users Mailing List' <sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Objet : RE: [SR-Users] kamctl cr reload doesn't reload all routes
Hello Igor,
Strange. If not already done, you can try to set INFO loglevel to get maybe a bit more information.
How do you verify the routes, but looking to RPC output probably?
Cheers,
Henning
--
Henning Westerholt - https://skalatan.de/blog/
Kamailio services - https://gilawa.com<https://gilawa.com/>
From: Igor Potjevlesch <igor.potjevlesch(a)gmail.com<mailto:igor.potjevlesch@gmail.com>>
Sent: Wednesday, November 30, 2022 2:58 PM
To: Henning Westerholt <hw(a)gilawa.com<mailto:hw@gilawa.com>>; 'Kamailio (SER) - Users Mailing List' <sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Subject: RE: [SR-Users] kamctl cr reload doesn't reload all routes
Hi Henning,
The problem is still there on the concerned instance. I tried to reload again, and I didn't see the error but the routes are not updated.
Regards,
Igor.
De : Henning Westerholt <hw(a)gilawa.com<mailto:hw@gilawa.com>>
Envoyé : mercredi 30 novembre 2022 14:44
À : Igor Potjevlesch <igor.potjevlesch(a)gmail.com<mailto:igor.potjevlesch@gmail.com>>; 'Kamailio (SER) - Users Mailing List' <sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Objet : RE: [SR-Users] kamctl cr reload doesn't reload all routes
Hi Igor,
ok, might be some issue with the DB, if it does not happen anymore. You probably notice when it happens again and can investigate then.
Regarding the table, just note that there is also a fourth table involved, domain_name:
https://kamailio.org/docs/db-tables/kamailio-db-5.5.x.html#idm812
Cheers,
Henning
--
Henning Westerholt - https://skalatan.de/blog/
Kamailio services - https://gilawa.com<https://gilawa.com/>
From: Igor Potjevlesch <igor.potjevlesch(a)gmail.com<mailto:igor.potjevlesch@gmail.com>>
Sent: Wednesday, November 30, 2022 2:35 PM
To: Henning Westerholt <hw(a)gilawa.com<mailto:hw@gilawa.com>>; 'Kamailio (SER) - Users Mailing List' <sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Subject: RE: [SR-Users] kamctl cr reload doesn't reload all routes
Hello Henning,
I tried to review all the routes. Unfortunately, I didn't have access to the logs of the last reboot and its not easy to reboot the instance.
I tried to copy the same tables (carrierroute, carrierfailureroute and carrier_name) on another instance and cr reload has been executed without any issue.
Not easy to highlight where the problem comes from.
Regards,
Igor.
De : Henning Westerholt <hw(a)gilawa.com<mailto:hw@gilawa.com>>
Envoyé : mardi 29 novembre 2022 21:13
À : Igor Potjevlesch <igor.potjevlesch(a)gmail.com<mailto:igor.potjevlesch@gmail.com>>; 'Kamailio (SER) - Users Mailing List' <sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Objet : RE: [SR-Users] kamctl cr reload doesn't reload all routes
Hello Igor,
This is usually caused from wrong or incomplete routing data in the DB. Review if you e.g. have some missing domains or carrier entries in the respective tables.
Also look for some errors or warnings related to carrierroute at a restart.
Cheers,
Henning
--
Henning Westerholt - https://skalatan.de/blog/
Kamailio services - https://gilawa.com<https://gilawa.com/>
From: Igor Potjevlesch <igor.potjevlesch(a)gmail.com<mailto:igor.potjevlesch@gmail.com>>
Sent: Tuesday, November 29, 2022 6:08 PM
To: Henning Westerholt <hw(a)gilawa.com<mailto:hw@gilawa.com>>; 'Kamailio (SER) - Users Mailing List' <sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Subject: RE: [SR-Users] kamctl cr reload doesn't reload all routes
Hello Henning,
That's a good point. I tried again and I could see this:
ERROR: carrierroute [cr_rpc.c:60]: cr_rpc_reload_routes(): failed to load routing data
Nothing more precise.
Regards,
Igor.
De : Henning Westerholt <hw(a)gilawa.com<mailto:hw@gilawa.com>>
Envoyé : mardi 29 novembre 2022 16:12
À : Kamailio (SER) - Users Mailing List <sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Cc : Igor Potjevlesch <igor.potjevlesch(a)gmail.com<mailto:igor.potjevlesch@gmail.com>>
Objet : RE: [SR-Users] kamctl cr reload doesn't reload all routes
Hello,
any error message in the logs from carrierroute reload?
Cheers,
Henning
--
Henning Westerholt - https://skalatan.de/blog/
Kamailio services - https://gilawa.com<https://gilawa.com/>
From: sr-users <sr-users-bounces(a)lists.kamailio.org<mailto:sr-users-bounces@lists.kamailio.org>> On Behalf Of Igor Potjevlesch
Sent: Tuesday, November 29, 2022 4:04 PM
To: sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>
Subject: [SR-Users] kamctl cr reload doesn't reload all routes
Hello!
I'm facing a problem with one of my Kamailio instance: "kamctl cr reload" returns OK, but, finally, the route I modified, or I added are not takes.
I'm still on a previous route.
If I completely reboot Kamailio it's okay. So, the last time, I rebooted with more memory, and I was thinking that it could fix the problem, but not.
Do you have any idea?
Regards,
Igor.
[Das Bild wurde vom Absender entfernt.]<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campai…>
Sans virus.www.avast.com<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campai…>
Hello!
I'm facing a problem with one of my Kamailio instance: "kamctl cr reload"
returns OK, but, finally, the route I modified, or I added are not takes.
I'm still on a previous route.
If I completely reboot Kamailio it's okay. So, the last time, I rebooted
with more memory, and I was thinking that it could fix the problem, but not.
Do you have any idea?
Regards,
Igor.
--
Cet e-mail a été vérifié par le logiciel antivirus d'Avast.
www.avast.com
Hi Team,
I need a help to remove the dmq list entry from the kamailio,
I have executed the command
*kamcmd dmq.list_nodes, below is the output*{
host: xx.xx.xx.xx
port: 5080
resolved_ip: xx.xx.xx.xx
status: active
last_notification: 0
local: 0
}
{
host: yy.yy.yy.yy
port: 5060
resolved_ip: yy.yy.yy.yy
status: active
last_notification: 0
local: 0
}
I need to remove the
*yy.yy.yy.yy.Note: I have used to remove the node with below command but it
is not able to delete the entry.*
kamctl rpc dmq.remove sip:yy.yy.yy.yy:5060
Hello not a usual question but i would like to know if somebody using topos module with redis backend can provide me an optimized redis conf for redis for using it topos module. and possibly also when using it with dialog module.
Thanks.
Hello,
not sure if I fully understand the problem. But regarding another user is registered with the same IP address as a previous user, there are several mitigations.
To give two options: you could choose a really short re-registration time, you could use TCP and when you lose the connection you delete the contact.
Cheers,
Henning
--
Henning Westerholt – https://skalatan.de/blog/
Kamailio services – https://gilawa.com<https://gilawa.com/>
From: sr-users <sr-users-bounces(a)lists.kamailio.org> On Behalf Of ???
Sent: Wednesday, November 30, 2022 2:57 AM
To: sr-users(a)lists.kamailio.org
Subject: [SR-Users] uac_req_send() multi-process synchronization problem
When I use uac_req_send() to send a MESSAGE to the client. Will the following occur? The result of the message sent to user A is that B has received it. From the logs, the address of user A in the location table is the same as the IP address and port of user B, and the information of user A in the location table is not deleted in time. I took the address of user A directly from the location table without using KSR.registrar.reg_fetch_contacts(). If I use KSR.registrar.reg_fetch_contacts() can this be avoided. This is a multi-process synchronization problem, after user A registers, the IP port information in the address is 172.16.22.222:12345, and then user A disconnects the link because of some abnormal conditions, but it is not normal to cancel the registration, the socket link has failed, but it has not had time to delete the location, at this time user B registers, whether will it get the same IP port information as user A 172.16.22.222 : 12345, if possible? User A's location still exists, Using KSR.registrar.reg_fetch_contacts() TO query user A's location, and then using uac_req_send() to send a message to user A, User B will receive the MESSAGE. Whether this problem occurs?
从 Windows 版邮件<https://go.microsoft.com/fwlink/?LinkId=550986>发送
When I use uac_req_send() to send a MESSAGE to the client. Will the following occur? The result of the message sent to user A is that B has received it. From the logs, the address of user A in the location table is the same as the IP address and port of user B, and the information of user A in the location table is not deleted in time. I took the address of user A directly from the location table without using KSR.registrar.reg_fetch_contacts(). If I use KSR.registrar.reg_fetch_contacts() can this be avoided. This is a multi-process synchronization problem, after user A registers, the IP port information in the address is 172.16.22.222:12345, and then user A disconnects the link because of some abnormal conditions, but it is not normal to cancel the registration, the socket link has failed, but it has not had time to delete the location, at this time user B registers, whether will it get the same IP port information as user A 172.16.22.222 : 12345, if possible? User A's location still exists, Using KSR.registrar.reg_fetch_contacts() TO query user A's location, and then using uac_req_send() to send a message to user A, User B will receive the MESSAGE. Whether this problem occurs?
从 Windows 版邮件发送
Hello,
I’m a DIY entrepreneurial developer beginning to build a system and I stumbled upon Kamailio. I’ve installed asterisk and kamailio in hopes of setting up an IVR to collect voice to speech information from incoming calls. I’m skilled with PHP to Javascript application development. In my research of PBX and discovery of Asterisk I have found enough information online to begin developing with Asterisk ARI; however, somewhere in my discovery process was the suggestion that Kamailio can offer close to real time voice recognition streaming whereas Asterisk is more of a record, pause, translate, respond process.
In an AstriCon presentation by Fred Posner I saw recommendations for new applications the suggestion to develop with Kamailio: https://www.youtube.com/watch?v=IaYOboZQEw0?t=23m10s
I’m a newbie to SIP, but it seems really promising, can you help point me in the right direction for aforementioned use-case for Kamailio? or am I misunderstanding some if its capability?
Regards,
Clint Crabtree
Hello,
the next year Kamailio World Conference is planed to return in Berlin
for an in-person event at the usual location in the city center.
For the moment, we would like to announce the dates, respectively June
5-7, 2023.
If nothing unexpected happens meanwhile, the call for speakers and
registrations will be open at the beginning of 2023. We aim for a
similar structure like the past in-person events, with first day
starting around noon and targeting to be tutorial-oriented, followed by
2 days of conference presentations.
More details soon!
Daniel
--
Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
Hi Team
Inserts require resources, especially on high load situations and if
there are a couple of indexes on the table.
As I use the dialogue module to create CDR, I would like to disable
the normal transaction based accounting.
I have attempted by not calling:
setflag(FLT_ACC)
setflag(FLT_ACCFAILED)
but I still get both, CDR and Transaction entries created in the
corresponding database tables.
How could I turn off transaction accounting?
Mit freundlichen Grüssen
-Benoît Panizzon-
--
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
______________________________________________________
Hi,
I'm trying to capture and substitute the host IP of contact header using
the subst_hf but it's not working as expected. I tested my regex in a
tester and it works fine there but not in Kamailio config.
*Regex:* @(.+?)>
*Substitution:* @PUBLIC_IP:5060>
*Three contact headers that I'm trying to match;*
Contact:<sip:0065*7766@199.48.100.166:5060
>;methods="INVITE,ACK,BYE,CANCEL,OPTIONS,INFO,MESSAGE,SUBSCRIBE,NOTIFY,PRACK,UPDATE,REFER"
Contact: <sip:0065*7788@172.16.1.216
;transport=udp>;expires=3600;reg-id=1;+sip.instance="<urn:uuid:03660bc5-bb70-4784-8ac5-000413B108BA>"
Contact: <sip:0925*0007@199.48.100.166:5060>
*Outcome I'm expecting for the three contact headers;*
Contact:<sip:0065*7766*@PUBLIC_IP:5060>*
;methods="INVITE,ACK,BYE,CANCEL,OPTIONS,INFO,MESSAGE,SUBSCRIBE,NOTIFY,PRACK,UPDATE,REFER"
Contact: <sip:0065*7788*@PUBLIC_IP:5060>*
;expires=3600;reg-id=1;+sip.instance="<urn:uuid:03660bc5-bb70-4784-8ac5-000413B108BA>"
Contact: <sip:0925*0007*@PUBLIC_IP:5060>*
This regex in Kamailio works fine for the first and third contact header
but for the second contact header it matches all the way to the end of the
contact header excluding the quote (") sign. I've tried so many other
combinations [like *(a)(.+?)>;?* ] of regex but nothing seems to work.
Is there a way to accomplish this with one regex?
Thanks,
Sal
your expectation is wrong, that's how it works, all channels are
bi-directional and for that they use a queue.
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Thu, 24 Nov 2022 12:48:58 +0530
> From: Sharmila Sundar <sharmila.sundar(a)ecosmob.com>
> To: sr-users(a)lists.kamailio.org
> Subject: [SR-Users] To stop automatic creation of RabbitMQ queues by
> kazoo module
> Message-ID:
> <CACcTecP1CfjuKdu33jEvZWUK2bE5ZSK37m-6xE1iEB=
> 9XwUCgg(a)mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Hello Team,
>
> I run into a problem with Kazoo module.
>
> We noticed that , amqp_max_channels parameter creates automatic queues in
> Rabbitmq-server based on the channel number provided.
> Expecting that , it should create only channels not queues.
>
> This is the modparam I added
> modparam("kazoo", "amqp_max_channels", 12)
>
> Can any one help on this issue as why the kazoo module creates an automatic
> queue based on amqp_max_channels param ?
>
> Please find the screenshot attached from rabbitmq server
>
> Regards
> SharmilaS
>
>
Hello everyone,
According to this old thread, the db_extra fields in the acc module cannot be
integer:
https://lists.kamailio.org/pipermail/sr-users/2015-February/087053.html
Does this answer is still valid or is there another form to represent an
integer? since in my acc table I added an integer value field.
--
Jose Figueroa
Hello Team,
I run into a problem with Kazoo module.
We noticed that , amqp_max_channels parameter creates automatic queues in
Rabbitmq-server based on the channel number provided.
Expecting that , it should create only channels not queues.
This is the modparam I added
modparam("kazoo", "amqp_max_channels", 12)
Can any one help on this issue as why the kazoo module creates an automatic
queue based on amqp_max_channels param ?
Please find the screenshot attached from rabbitmq server
Regards
SharmilaS
--
* <https://www.ecosmob.com/>
*
*Disclaimer*
In addition to generic
Disclaimer which you have agreed on our website, any views or opinions
presented in this email are solely those of the originator and do not
necessarily represent those of the Company or its sister concerns. Any
liability (in negligence, contract or otherwise) arising from any third
party taking any action, or refraining from taking any action on the basis
of any of the information contained in this email is hereby excluded.
*Confidentiality*
This communication (including any attachment/s) is
intended only for the use of the addressee(s) and contains information that
is PRIVILEGED AND CONFIDENTIAL. Unauthorized reading, dissemination,
distribution, or copying of this communication is prohibited. Please inform
originator if you have received it in error.
*Caution for viruses,
malware etc.*
This communication, including any attachments, may not be
free of viruses, trojans, similar or new contaminants/malware,
interceptions or interference, and may not be compatible with your systems.
You shall carry out virus/malware scanning on your own before opening any
attachment to this e-mail. The sender of this e-mail and Company including
its sister concerns shall not be liable for any damage that may incur to
you as a result of viruses, incompleteness of this message, a delay in
receipt of this message or any other computer problems.
Hello,
I'm using Kamailio v5.6.2 with presence, presence_xml, xcap_server, and rls
modules.
I pushed 2 documents to the xcap server:
1. urn:ietf:params:xml:ns:resource-lists
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<resource-lists xmlns="urn:ietf:params:xml:ns:resource-lists">
<list name="friends">
<entry uri="sip:1001@example.com">
<display-name>1001</display-name>
</entry>
<entry uri="sip:1002@example.com">
<display-name>1002</display-name>
</entry>
</list>
</resource-lists>
2. urn:ietf:params:xml:ns:rls-services
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<rls-services xmlns="urn:ietf:params:xml:ns:rls-services"
xmlns:rl="urn:ietf:params:xml:ns:resource-lists" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance">
<service uri="sip:1000+presence@example.com">
<resource-list>
https://kamailio:5061/xcap-root/resource-lists/users/sip:1000@example.com/i…
"friends"]</resource-list>
<packages>
<package>presence</package>
</packages>
</service>
</rls-services>
I'm subscribing to presence event on rls-service
SUBSCRIBE sip:1000+presence@example.com SIP/2.0
Via: SIP/2.0/TLS 10.255.0.3:33883
;rport;branch=z9hG4bKPjbe079f60-d0e0-4f1e-9f93-b18e467be5e8;alias
Max-Forwards: 70
From: "1000" <sip:1000@example.com>;tag=97ef0748-da39-442f-9a02-468b67134ad6
To: <sip:1000+presence@example.com>
Contact: <sip:20416583@10.255.0.3:5061;transport=tls>
Call-ID: 9773a68c-b001-49f0-9ffa-093beb3d8e36
CSeq: 18636 SUBSCRIBE
Event: presence
Expires: 600
Supported: 100rel, replaces, norefersub, gruu
Accept: multipart/related, application/rlmi+xml, application/pidf+xml
Allow-Events: presence
Supported: eventlist
User-Agent: sipsimple 5.2.6
Content-Length: 0
The RLS sends a NOTIFY immediately upon accepting the subscription
according to RFC 4662 and also the RLS is virtually subscribing to the
presence event on the 2 resources in the friends list
NOTIFY sip:20416583@10.255.0.3:5061;transport=tls SIP/2.0
Via: SIP/2.0/TLS joey-local-proxy.example.com:5061
;branch=z9hG4bKa93d.b63e0697000000000000000000000000.0
To: <sip:1000@example.com>;tag=97ef0748-da39-442f-9a02-468b67134ad6
From: <sip:1000+presence@example.com
>;tag=e02a02cb113b2bdb8ebdb022d767e6d2-a1677c19
CSeq: 1 NOTIFY
Call-ID: 9773a68c-b001-49f0-9ffa-093beb3d8e36
Content-Length: 468
Max-Forwards: 70
Event: presence
Contact: <sip:kamailio@example.com:5060>
Subscription-State: active;expires=600
Require: eventlist
Content-Type:
multipart/related;type="application/rlmi+xml";start="<1668755827.sip:1000+presence@example.com.1700642067
>";boundary="1W1NaaaIIq6dOtLRXODFwqmC"
--1W1NaaaIIq6dOtLRXODFwqmC
Content-Transfer-Encoding: binary
Content-ID: <1668755827.sip:1000+presence@example.com.1700642067>
Content-Type: application/rlmi+xml;charset="UTF-8"
<?xml version="1.0"?>
<list uri="sip:1000+presence@example.com"
xmlns="urn:ietf:params:xml:ns:rlmi" version="1" fullState="true">
<resource uri="sip:1001@example.com"/>
<resource uri="sip:1002@example.com"/>
</list>
--1W1NaaaIIq6dOtLRXODFwqmC--
Now I’m changing the resource list using XCAP.
I’m sending a PUT request with a new document and I see that the change is
pushed to the DB but user 1000 is not receiving a NOTIFY with the updated
list.
This is the updated document:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<resource-lists xmlns="urn:ietf:params:xml:ns:resource-lists">
<list name="friends">
<entry uri="sip:1001@example.com">
<display-name>1001</display-name>
</entry>
<entry uri="sip:1002@example.com">
<display-name>1002</display-name>
</entry>
<entry uri="sip:1003@example.com">
<display-name>1003</display-name>
</entry>
</list>
</resource-lists>
I see that Kamailio is virtually subscribing on 1003 (The newly added user)
but NOTIFY is not received.
Also tried to subscribe on xcap-diff event, and the subscription was
accepted successfully but no NOTIFY is received.
Am I missing something?
Thanks,
Joey
Hi Kamailio community,
I am running an IPsec server beside Kamailio, so I am interested to know if there is any method to create a SIP listener on a specific port on the fly. I mean, when I create the IPsec SAs through the IPsec server, I ask Kamailio to create a listener/handler for that port too.This case might be very rare, but it is always good to hear community ideas.
Thank you.
Regards,Hossein
Hi.
Working on ims integration with the actual handset, have got a problem with
ipsec establishment to complete registration.
Initial steps are fine, including diameter exchange and 401 (with security
server details) toward UE. On the next step UE and kamailio should
establish ipsec connection, and UE to submit the next register with a
response. As per trace UE is trying to establish the same (can see initial
TCP SYN encapsulated onto ESP), using port-s, provided in Security-Server,
but get an ICMP packet from server with destination/protocol unreachable.
No more info either in P-SCSF log, no in kern.log. Proxy is listening to
that port, it is tcp and available over telnet, so should not be a
connectivity issue.
Please let know if any ideas how to troubleshoot that further,
--
obelousov.tel
Hi members,
I run into a problemm with htable.
For user push notifications I need a loop.
So I did the following for a first test:
modparam("htable", "htable", "user=>size=3;autoexpire=5")
...
event_route[htable:mod-init] {
xinfo("htable init");
$sht(user=>testkey) = "testvalue";
}
event_route[htable:expired:user] {
xinfo("Record expired $shtrecord(key) => $shtrecord(value)");
$sht(user=>$shtrecord(key)) = $shtrecord(value);
}
I see the htable init, and I reach Record expired, but only once.
The 'new' entry
$sht(user=>$shtrecord(key)) = $shtrecord(value);
seams not to be re-added, because I never reach the expired event again.
I expected to see cyclic expired events.
Also strange:
expire is set to 5 seconds I get:
Nov 21 08:34:50 xxx /usr/sbin/kamailio[254662]: INFO: <script>: htable init
...
Nov 21 08:35:10 xxx /usr/sbin/kamailio[254671]: INFO: <script>: Record
expired testkey => testvalue
If I'm right, this are 20 seconds and not 5.
Any ideas what's wrong?
Best regards
Hi,
I have P-CSCF, I-CSCF, and S-CSCF instances of Kamailio running with
rtpengine. I can have a VoLTE call over a 4G network (using Open5GS) using
Kamailio with two phones on the same IMS network, no problem. I have
leveraged the docker_open5gs project to do this.
For Kamailio, I have some IMS-related questions for when the Called-Party
is not within the IMS network as I'm interested in what may be required to
interconnect two Kamailio IMS networks.
- Does Kamailio (or anyone you may know) have example configuration files
for instances of a BGCF, IBCF, or TrGW?
- If the S-CSCF determines that the Called-Party is not within the IMS
network, is there an example configuration file of where the S-CSCF can
forward the SIP INVITE to a BGCF / contact the IBCF directly?
- If "no" to the above, are the BGCF, IBCF, and TrGW instances necessary to
facilitate a call between two networks? Can Kamailio emulate multiple
networks and instead have the S-CSCF of the originating network simply send
the SIP request to the I-CSCF of the destination network (selected via DNS
lookup) and use the single rtpengine instance between the two networks
rather than using a BGCF, IBCF, and TrGW?
Thank you very much for your help,
Derek
Hi,
for the first time we tried to build all routing in kemi with
app_python3, and it works well.
But app_python.reload only reloads the file in:
modparam("app_python3", "load", "/etc/kamailio/kemi/kamailio.py")
And that is a little problem for us, since we are using multiple files
to use modules etc. At the moment we have 8 files besides kamailio.py.
Is there a way to reload all of them, without restarting kamailio?
/niklas
Hello,
as some of you may know from previous announcements, a few of us meet
tomorrow and the day after in Dusseldorf at sipgate.de for a Kamailio
development event. Should anyone want to join remotely, we can make
available a video conference bridge.
Join if you want to work together to add new features to Kamailio or
help improving existing tools and documentation. It is not an event for
discussing about Kamailio or how to use it.
Reply to this email (can be only to me this time) if you want to join
remotely and eventually provide the time you think you would be around
and, if you have something in mind, what you would like to work on. You
can also join if you don't have already something to work on, you can
become part of another team and help them.
You will receive privately the details of how to join the video
conference room.
Tomorrow we plan to to start the day around 10:30 Berlin time zone (UTC
+ 1), probably wrapping up around 17:00. The schedule for Thursday will
be given tomorrow once it is decided.
Cheers,
Daniel
--
Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
Hello NG,
we are using Kamailio 5.4.2 with the USRLOC module configured with db_mode 2 (Write-Back scheme). The database is Postgres 11. Sometimes some records are not written to the database, however I can lookup them by "kamcmd ul.lookup ..." . There are no database errors (like constraint violations or value too large errors) to see in the postgres.log. Not even when I execute "kamcmd ul.flush" manually. There are also no related error messages to see in the Kamailio.log during "kamcmd ul.flush".
Has anyone else seen that issue or is this might already fixed in a newer version?
Thanks and regards
Markus
Hi
I am wondering, if a profile with value can on the same time be used as
profile without value of this usages exclude each other.
Like doing:
set_dlg_profile("caller");
set_dlg_profile("caller","$si");
get_profile_size("caller","$var(c_total)");
get_profile_size("caller","$si","$var(c_ip)");
xlog("L_INFO", "$cfg(route): Total Caller: $var(c_total)\n");
xlog("L_INFO", "$cfg(route): Caller from $si: $var(c_ip)\n");
I fear this is not possible, as I keep getting:
w_set_dlg_profile_helper(): invalid value parameter
and
w_get_profile_size_helper(): invalid value parameter
right?
Mit freundlichen Grüssen
-Benoît Panizzon-
--
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
______________________________________________________
Hello all,
Question:
Say there’s a client connecting via websocket, makes a call and then
unregisters. But kamailio sends a 401 expecting the client to authenticate.
If the client doesn’t, and simply stays there, at what point is the socket
closed? Is it the OS timeout?
Thanks!
David
--
Regards,
David Villasmil
email: david.villasmil.work(a)gmail.com
phone: +34669448337
Hi,
what would be the reason for the *Un-even* distribution of calls from
kamailio proxy to freeswitches. The dispatcher lists are having the same
weight.
For example: If we are having 4 freeswitches, the calls are evenly
distributing for 3 freeswitches but there is high calls for the 4th
freeswitch.
The dispatcher weight for the freeswitches are: rweight=50;weight=50;cc=1;
Thanks and regards,
Satya
Hi List
I fear I am loosing dialogues somehow.
We have implemented counting concurrent connections from customers by
using set_dlg_profile.
Sometimes, the concurrent channel count does not decrease, despite the
dialog end being detected.
Now I suppose I have maybe a dozen concurrent calls running, but kamcmd
dlg.list is unable to dump the list.
kamcmd dlg.dump_file generates quite a large file.
I was running into SHM issues while load-testing and had to increase SHM
to 1024 to accommodate all dialogues and vars. I fear this could have
caused corrupted dialogues?
Dialog Data is replicated via DMQ between two instances which I too
care never to restart at the same time.
Will completely stop and then restart the two affected instances and
clear the dialog and dialog_vars tables to see if this issue is
manifesting itself again.
--
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
______________________________________________________
Hello!
I was wondering how everyone uses exec_cmd(). I'm using it to call an
external script directly from a worker route which locks it for the time of
execution. If all that is needed is to call it and forget, should the best
option be to call the async route with exec_cmd()?
Thanks a lot for any input on this topic!
Hello!
I'm trying to use app_python module to perform periodic actions.
This is a simple python code
def _update():
while True:
_action()
time.sleep(60)
class noop_handler:
def child_init(self, rank):
return 0
def ksr_request_route(self, msg):
return 1
def mod_init():
# signal.signal(signal.SIGTERM, signal.default_int_handler)
proc = multiprocessing.Process(target=_update)
# proc.daemon = True
proc.start()
ksr.notice('Forked process {} to update\n'.format(proc.pid))
return noop_handler()
After killing kamailio processes with SIGTERM signal (killall kamailio) I
see zombie process.
And if I try to process the signal in daemon mode (see the comments in the
snippet above), I get critical errors in the logs and still see processes:
0(37001) NOTICE: <core> [core/kemi.c:124]: sr_kemi_core_notice(): Forked
process 37002 to update
1(37003) ERROR: <core> [core/udp_server.c:464]: udp_rcv_loop(): recvfrom:[4]
Interrupted system call
Process Process-1:
Traceback (most recent call last):
File "/usr/lib64/python2.7/multiprocessing/process.py", line 258, in
_bootstrap
self.run()
File "/usr/lib64/python2.7/multiprocessing/process.py", line 114, in run
self._target(*self._args, **self._kwargs)
File "/tmp/script.py", line 155, in _update
time.sleep(period)
KeyboardInterrupt
0(37001) ALERT: <core> [main.c:774]: handle_sigs(): child process 37002
exited normally, status=1
0(37001) INFO: <core> [main.c:802]: handle_sigs(): terminating due to
SIGCHLD
1(37003) ERROR: <core> [core/udp_server.c:464]: udp_rcv_loop(): recvfrom:[4]
Interrupted system call
8(37014) CRITICAL: <core> [core/pass_fd.c:277]: receive_fd(): EOF on 4
1(37003) ERROR: <core> [core/udp_server.c:464]: udp_rcv_loop(): recvfrom:[4]
Interrupted system call
So, how I can kill child process by SIGTERM signal?
Hi
Is there a way to get register messages into accounting?
This could come in handy while helping figure out if clients were not
registered while calls attemted to reach them.
--
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
______________________________________________________
Hi Team,
I want to know this reason - why kamailio only can connect to mysql
using */tmp/mysql.sock
<https://phonecom.atlassian.net/browse/VOIP-1760?atlOrigin=eyJpIjoiNzY1NjU4Y…>*
and
why it can’t use /run/mysql/mysql.sock
Thanks and regards,
Satya.
--
* <https://www.ecosmob.com/>
*
*Disclaimer*
In addition to generic
Disclaimer which you have agreed on our website, any views or opinions
presented in this email are solely those of the originator and do not
necessarily represent those of the Company or its sister concerns. Any
liability (in negligence, contract or otherwise) arising from any third
party taking any action, or refraining from taking any action on the basis
of any of the information contained in this email is hereby excluded.
*Confidentiality*
This communication (including any attachment/s) is
intended only for the use of the addressee(s) and contains information that
is PRIVILEGED AND CONFIDENTIAL. Unauthorized reading, dissemination,
distribution, or copying of this communication is prohibited. Please inform
originator if you have received it in error.
*Caution for viruses,
malware etc.*
This communication, including any attachments, may not be
free of viruses, trojans, similar or new contaminants/malware,
interceptions or interference, and may not be compatible with your systems.
You shall carry out virus/malware scanning on your own before opening any
attachment to this e-mail. The sender of this e-mail and Company including
its sister concerns shall not be liable for any damage that may incur to
you as a result of viruses, incompleteness of this message, a delay in
receipt of this message or any other computer problems.
Hi,
I am t_continue()ing a transaction inside of event_route[evapi:message-received]. The $evapi(msg) has quite a bit of payload that will be needed by the resumed transaction.
Is there a good way to inject this data into the transaction scope externally? No [X]AVPs created in the event_route persist, of course, since the route is scoped outside of the transaction.
I have been using htable to pass data into the transaction, keyed by the index and label. But, this strikes me as a kind of clumsy memory synchronisation anti-pattern. Is there a better way?
Cheers,
— Alex
--
Alex Balashov | Principal | Evariste Systems LLC
Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
Hello! I hope all of you are having a nice day.
I would like some help. I recently had some troublesome events in my
Kamailio setup, at a particular time of the day specifically after lunch
when my platform's traffic spikes Kamailio suddenly stops responding to any
connection and restarting it didn't fix the problem basically I have to
restart the hardware to get out of that failed state.
The only unusual log is the following:
Oct 28 16:49:10 ip-172-32-16-97 /usr/sbin/kamailio[952]: ERROR: topos
[tps_storage.c:615]: tps_storage_record(): failed to store
Someone recently posted a problem that occurred when doing stress tests
with the siptrace module active and the service that collects the traces
was failing, I wonder if this may be the case because it is possible that
something similar is happening in my case.
Unfortunately, I don't have much more information since I had to implement
a quick fix that mitigates the problem for now, but I would like to be able
to go back to the previous configuration that seemed more appropriate.
My plan is to test now that I have solved the problem I had with the traces
service, but I wanted to know if anyone had experienced a similar situation.
Atenciosamente,
[image: photo] <https://www.techer.com.br/>
*Carlos Escalona*
IT - Development
41 3073-0091 | R 1011
www.techer.com.br
--
O conteúdo desta mensagem é confidencial. Se você não se encontra na lista
de destinatários ou tenha recebido por engano, não a copie, imprima, envie,
ou utilize, de qualquer forma, seu conteúdo. Neste caso, destrua a mensagem
e, por favor, notifique o remetente.
Hello,
I have a challenge here to do serial forking, not when the call is failed
on the first destination, but when the call is ended. So, the first will go
to one destination, will be answered, and when it's ended the BYE message
should be dropped and forward the initial INVITE to another location.
Is that possible?
Hi All,
At the risk of possibly dragging up an old thread (https://lists.kamailio.org/pipermail/sr-users/2021-June/112791.html <https://lists.kamailio.org/pipermail/sr-users/2021-June/112791.html>) I’m seeing unusual behaviour where $Rp is still showing what I think is the ‘wrong’ behaviour, but given Daniel’s reply on the earlier thread I want to be sure this isn’t the intended behaviour.
The thread above confirms that $Rp is not taken from the IP layer but is intended to give the attribute of the listen socket associated with the SIP traffic, which is fine and what I’m expecting, but in my case it doesn’t seem to be working this way.
(I’ve tried with and without tcp_reuse_port=yes and tcp_connection_match=1 too just in case one of the above parameters has changed this behaviour)
If Kamailio listening on multiple ports e.g.
listen=tcp:10.30.22.73:7701
listen=tcp:10.30.22.73:7702
listen=tcp:10.30.22.73:7703
listen=tls:10.30.22.73:7801
listen=tls:10.30.22.73:7802
listen=tls:10.30.22.73:7803
And I use $fs to force the socket of an outbound message to one of the above before t_relay() it works as expected (with tcp_reuse_port it originates from the given port number above, without that set it will originate from a different ephemeral port even to the same destination, so $fs is working as expected)
Then, in reply_route{} I have a simple line to add the port it was received on to the headers (I’ve also tried with $RAp)
append_hf("X-Rcvd-Port: $Rp\r\n”);
In every case, the reply seems to contain the *first* port of the protocol type (so in the above example every TCP reply irrespective of whether it is to 7701/02/03 will show $Rp 7701, and every TLS reply will show 7801)
Any advice or insight anyone can offer would be much appreciated.
Thanks,
Ross
Hello,
Found an interesting scenario, maybe something could be done here.
I have a siptrace module configured like
modparam("siptrace", "duplicate_uri", "sip:<MY_HOMER_SERVER>:9060")
modparam("siptrace", "hep_mode_on", 1)
modparam("siptrace", "trace_to_database", 0)
modparam("siptrace", "trace_on", 1)
modparam("siptrace", "hep_version", 3)
modparam("siptrace", "trace_mode", 1)
When Kamailio is under stress test (sipflood via OPTIONS/TLS), with this
settings it transfers all flood to HOMER server.
At some point Kamailio just stops accepting any new TLS connections.
Turning off siptrace solves this issue.
As I got, siptrace module is not changing protocol of the message (means
not converting TCP/UDP) or so. Could it be possible, that at some point
siptrace "eats" all TCP connections (especially if remote HOMER is down or
not answering) which leads Kamailio to stop processing any new connections?
And is it possible to send HEP traffic only via UDP to prevent this?
Yes, sure other option is to trace only "legal" traffic
--
Best regards,
Ihor (Igor)
Greetings,
I've been using the pipelimit module and the pl_check function to control
users rates in my proxy.
if (!pl_check("$var(UserID)", "TAILDROP", "$var(UserRate)")) {
pl_drop();
exit;
}
In this case $var(UserID) is the pipe and $var(UserRate) is the maximum
rate.
The value of the rate is retrieved on every call via query to a DB.
If I change the UserRate value to 0 CPS on the DB calls are not rejected
unless they go over 1 CPS. However, if I restart Kamailio all calls are
correctly rejected.
Why does this happen? Can I change this behaviour?
Cheers,
Duarte
Hi,
Is there a means of appending new branches from config script for a transaction which is already proceeding in the background, without using `tsilo`?
That is to say, I have an async transaction which is resumed in an async worker and is t_relay()’d away to some destination. Meanwhile, I have learned about new destinations for it to try via an incoming registration, and would like to append additional parallel forking branches to that transaction, even though it is already proceeding.
ts_append() does this for me; the issue I have is that it is mediated through a registrar, but I am not a registrar. My registrar is upstream, and my proxy is just a front-end to it. So, in essence, I require something like `tsilo` at a more general level, where contacts can be populated by some other mechanism rather than being learned via callbacks out of `usrloc`.
Is there a way to accomplish this?
Cheers,
— Alex
--
Alex Balashov | Principal | Evariste Systems LLC
Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
Hi List
I noticed, that one of our CPE copies the Proxy-Authorization HF in
almost all messages sent.
As PRACK were not authenticated, those headers were potentially sent on
to the destination disclosing the authentication username and realm.
So assuming, if credentials are present, the client wishes them to be
validated, I added:
if (has_credentials("$fd")) {
xlog("L_INFO", "$cfg(route): got $rm with credentials. Validate them!\n");
route(AUTH);
}
and in route[AUTH] I call:
pv_auth_check() which returns 1 thus success upon which I use:
if(!is_method("REGISTER|PUBLISH"))
consume_credentials();
If the method is INVITE:
Proxy-Authorization HF is removed by consume_credentials()
if the method is PRACK:
Proxy-Authorization HF is still present on the outbound leg.
Mit freundlichen Grüssen
-Benoît Panizzon-
--
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
______________________________________________________
Hi
As mentioned in the last email, we have a CPE which adds credentials to
any request so I would like to validate them.
We use $rd as realm. Let's use example.com as example.
During the initial INVITE, this works as expected.
I try to only show the headers I think are relevant to the issue I face.
INVITE sip:1234@example.com SIP/2.0
Proxy-Authorization: [...] realm="example.com"
Contact: <sip:9876@192.168.1.1:5060>
Authentication user in realm "example.com" == $rd is validated and
accepted.
The connection is establised:
200 OK
From: <sip:9876@example.com>;tag=1
To: <sip:1234@example.com>;tag=2
Contact: <sip:1234@192.168.7.7:5060>
The caller terminates the connection:
BYE: sip:1234@192.168.7.7:5060 SIP/2.0
From: <sip:9876@example.com>;tag=1
To: <sip:1234@example.com>;tag=2
Proxy-Authorization: [...] realm="example.com"
Performing:
$var(authres) = pv_auth_check("$rd", "$avp(authsecret)", "0", "1");
fails wirh result -5 as there is no authsecret for realm "192.168.7.7"
So an unnecessarey challenge is issued:
SIP/2.0 407 Proxy Authentication Required
To: <sip:1234@example.com>
From: <sip:9876@example.com>
CSeq: 3 BYE
Proxy-Authenticate: Digest realm="192.168.7.7"
To which the client replies with the changed realm:
Proxy-Authorization: Digest username="****",realm="157.161.7.7",[...]
and succeeds authentication.
Is there a way to accept 'any' realm? Or to avoid this unnecessary
change of realm just because the remote site submitted a domain
realm in the contact header?
Mit freundlichen Grüssen
-Benoît Panizzon-
--
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
______________________________________________________
Hello,
I need to route SIP INVITE towards a specific node based on the MSISDN of the Request URI.
I saw that the dispatcher module should be able to make this with the function ds_select_dst and the algorithm "hash over request-URI user" but I don't understand how the routing is done if we can't associate the request-URI user with the destination address in the dispatcher DB.
Maybe my understanding of this module is wrong. Could you help me to achieve this?
Thanks
Anthony