Hello,
I'd like to start tracking a call history/log as soon as I receive a call.
I'd like the customer to be able to see that there's an incoming call to
one of their numbers in real time.
I'm thinking of using the RABBITMQ Module to manually emit an event from my
main route when I receive an INVITE. Is that a bad idea? What if the broker
isn't located on the same host (latency/availability)? I don't want to
negatively affect the call processing.
I was looking at the Dialog Module and it has three event routes:
* event_route[dialog:start]
* event_route[dialog:end]
* event_route[dialog:failed]
It's really close to what I want, but I'd like to capture the dialog before
it starts (Unconfirmed or Early). Maybe another option is to scan the
Dialog table with an external process and emit events from there.
Has anyone had success in creating a realtime call history? Is there a
better way to go about doing so?
Thanks!
--
Anthony Wittig
Mango Voice Developer
Hello,
a quick note to the community forums to announce that the registration
for the next Kamailio World Conference (June 5-7, 2022, in Berlin,
Germany) is now open! The event returns to an in-person conference
format, at the same wonderful location in the city center of Berlin!
More details are available at:
* https://www.kamailioworld.com/k2023/registration/
Call for presentations is also open, there is already a group of very
interesting submissions, we aim to publish details about them in the
near future.
Looking forward to meeting many of you in Berlin!
Cheers,
Daniel
--
Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio World Conference - June 5-7, 2023 - www.kamailioworld.com
Kamailio Advanced Training - Online - March 27-30, 2023 - www.asipto.com
Hi
Having this situation while elaborating topos in lab.
* Kamailio Registration Instance with topos enabled where customers are
registered.
* Kamailio Core Instance with Dialogue enabled and handling
interconnections.
Calls in transit from customer to IC work flawlessly, topos does what
it should, hides and restores headers needed on the core.
But I have run into an issue with customer calling another customer on
same registrar instance. To generate a CDR with diaglogue and for
decision where to route the calls to (registrar is kept simple and only
handles registrations and locations), those calls are also routed via
core.
This works as long as PRACK is disabled.
When PRACK is enabled and CPE B is requesting 100rel, the PRACK send
from CPE A has no route set (it was removed by topos). Therefore the
PRACK only makes it to the core who then does not know where to route
that PRACK.
It looks like topos on the REG only restores ONE Route pointing to the
core (maybe because the 2nd one pointed to itself?) header when
restoring them.
I have attempted to spam more record_route() here and there in the
config of the core and the registrar to try to force creation of route
headers, but failed.
Is this a known limitation of using topos?
--
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 Jon,
you could of course try to add some heuristic, in the end the used IPs are a smaller sub-set. But to just quote from the official docs, it seems to be pretty clear:
"You need to open ports for all these IP address ranges in your firewall to allow incoming and outgoing traffic to and from the addresses for signaling."
Cheers,
Henning
________________________________
From: Jon Bonilla (Manwe)
Sent: Monday, February 20, 2023 15:49
To: Henning Westerholt; Kamailio (SER) - Users Mailing List
Subject: Re: [SR-Users] OT: MS Teams source IP address ranges
El Mon, 20 Feb 2023 13:06:30 +0000
Henning Westerholt <hw(a)gilawa.com> escribió:
> Hello,
>
> correct me if I am wrong, but the second group of addresses ("/16") is
> included in the first group ("/14"), right?
>
> Regarding the large IP scope, this is the way Microsoft designed it,
> unfortunately. There is not that much what you can do about.
>
>
Right. Didn't check the masks. they all were 16 in my mind :)
So, if I add those ranges in the permissions table my only way of avoiding
spoofed calls is certificate validation? I'm already doing that and also
checking the company domain and ms account email address. Just wanted to be
sure that nothing "essential" was missing.
--
PekePBX, the multitenant PBX solution
https://pekepbx.com
Hi,
maybe I'm stupid, but I can not find out how to send 4 byte UDP NAT
packets to the sip server.
loadmodule "nathelper.so"
modparam("nathelper", "natping_interval", 15)
modparam("nathelper|registrar", "received_avp", "$avp(s:rcv)")
I'm a absolute beginner with kamailio and the page about the nathelper
Module is not really helpful.
At the moment no pings are sendet.
But I receive 4 byte packets from the sip server.
After 15 minutes my calls are cancelled because of the missing pings.
Without proxy, the phone send the pings directly to the sip server and
the call stays alive.
When I experiment with some other nathelper settings, kamailo start
results in errors.
Any help would be appreciated.
Best regards,
Bernd
Hello ,
im using kamailio with two interfaces external and internal.
i need a way either to :
* enable topoh hiding only when outgoing interface is external ( mask contact and Via ip only when ougoing interface is external
* or if it is not possible to enable it only in one direction.i want to know how to configure dynamic(for example in xavp or avp) ip to put in Contact and Via when topoh is enabled.
i see that the 'mask_ip' parameter of topoh module is a string. so we can not set a dynamic value here unfortunately.
Thanks
Hey all
I have started using the uac module to be able to mirror username
changes on both legs of a call.
But now I found an issue:
Assume this situation:
Call IC => Customer
IC is e164, Customer wants 'local' numbers.
IC From: +41991234567 => Customer From: 0991234567
uac_replace_from("sip:" + $avp(from_local) + "@" + $(fu{uri.host}));
Customer is absent, after timeout in failure_route call is dispatched to
Voicemail Server, which is configured for e164 numbers:
uac_replace_from("sip:" + $avp(from_e164) + "@" + $(fu{uri.host}));
But then uac complains:
replace_uri(): Already called uac_replace for this dialog
Why isn't just the most from version kept and used?
--
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,
I can log incoming SIPS TLS version and cipher with PV $tls_version
and $tls_cipher_info.
How can I log these variables on incoming HTTP/WebSocket.
Thanks
Michal H.
Hello colleagues.
I'm starting to use Kamailio for educational purposes, as an IMS test zone.
Registration of subscribers, calls go successfully, but the following
errors are constantly pouring into the log:
Feb 16 14:40:46 ct-pcscf /usr/local/sbin/kamailio[2849]: ERROR: <core>
[core/rvalue.c:1378]: int_intop2(): rv div by 0
Feb 16 14:40:46 ct-pcscf /usr/local/sbin/kamailio[2849]: ERROR: <core>
[core/rvalue.c:1378]: int_intop2(): rv div by 0
Feb 16 14:40:46 ct-pcscf /usr/local/sbin/kamailio[2849]: ERROR: <core>
[core/rvalue.c:2381]: rval_expr_eval(): rval expression evaluation failed
(735,15-735,55)
Feb 16 14:40:46 ct-pcscf /usr/local/sbin/kamailio[2849]: ERROR: <core>
[core/rvalue.c:2381]: rval_expr_eval(): rval expression evaluation failed
(735,15-735,55)
Feb 16 14:40:46 ct-pcscf /usr/local/sbin/kamailio[2849]: ERROR: <core>
[core/lvalue.c:386]: lval_assign(): rval expression evaluation failed
(735,15-735,55)
Feb 16 14:40:46 ct-pcscf /usr/local/sbin/kamailio[2849]: ERROR: <core>
[core/lvalue.c:386]: lval_assign(): rval expression evaluation failed
(735,15-735,55)
Apparently they don’t carry anything critical, but they clog the log,
natively I can’t understand the meaning of the errors.
Please tell me what they mean and how to eliminate their cause? If
necessary, I will provide the pcscf config.
When you do "kamcmd uac.reg_reload" frequently enough, you'll get an error:
# kamcmd uac.reg_reload
error: 500 - Failed to shift records - check log messages
Logs:
ERROR: uac [uac_reg.c:416]: uac_reg_ht_shift(): shifting in-memory table
is not possible in less than 150 secs
What is the reason behind 150 sec limitation for how frequent reloads
can be done?
Is it configurable in any way?
Use case:
Remote app needs to disable uac registration. It deletes record in DB
and calls kamcmd uac.reg_reload to activate the change. With 150 sec
limit it can't apply DB changes immediately.
Please advise.
Thanks,
Dmytro