Hello all,
I've been trying to handle OPTIONS statelessly, but proper handling fails
for UACs behind NAT without ALG. I thought I'd overcome this by setting the
$du pseudovariable, but apparently I'm missing something. The following
does not work:
if ($Rp == "6050") {
force_send_socket(udp:10.10.10.10:6050);
}
$du = "sip:" + $si + ":" + $sp;
sl_send_reply("200","OK");
exit;
I'm now realising that I put this in request_route() so force_send_socket()
and $du have no use whatsoever, since the request is not forwarded
anywhere. Is this the reason?
So the question is, how can I do the following things for a stateless
reply: a) choose a sending socket for the reply and b) change the
destination for the reply to something other than the URI in the first Via
header.
Thanks!
BR,
George
Hi all,
I want to fork a new branch, while the first one is ringing.
Forking will take place in a rtimer process.
So I will save the invite transaction in a htable, and using this
transaction info I need to append a branch.
I saw TSILO module provides some methods to append branch.
However documentation says that it can be used when register message
received.
What is the best way to implement this?
Thanks,
Koray
Several people are complaining on baresip git that Kamailio is among
those SIP servers that don't handle stale nonce properly, i.e., don't
include stale=true flag in WWW-Authenticate header of 401 response.
I have tried to tell that Kamailio does what it has been configured to
do, but the response is that "by default" Kamailio works incorrectly. "By
default" I guess refers to the example Kamailio kamailio.cfg in etc dir.
How about adding stale nonce handling to the example config, for
example, like in below?
-- Juha
*** kamailio.cfg 2019-06-13 17:17:17.182148989 +0300
--- /tmp/kamailio.cfg 2019-07-02 18:02:02.947183503 +0300
***************
*** 745,753 ****
if (is_method("REGISTER") || from_uri==myself) {
# authenticate requests
! if (!auth_check("$fd", "subscriber", "1")) {
! auth_challenge("$fd", "0");
! exit;
}
# user authenticated - remove auth header
if(!is_method("REGISTER|PUBLISH"))
--- 745,759 ----
if (is_method("REGISTER") || from_uri==myself) {
# authenticate requests
! switch (auth_check("$fd", "subscriber", "1")) {
! case 1:
! break;
! case -4:
! auth_challenge("$fd", 17);
! exit;
! default:
! auth_challenge("$fd", "0");
! exit;
}
# user authenticated - remove auth header
if(!is_method("REGISTER|PUBLISH"))
Please note change of my new email address –
samirkundu(a)samirkundultd.plus.com
Thank you
Samir
======================================================================
COMPUTING & COMMUNICATION
HARDWARE & SOFTWARE SOLUTIONS PROVIDER
======================================================================
e-mail is confidential --- "SAVE PAPER - THINK BEFORE YOU PRINT!"
Samir Kundu Ltd | Tel: 0191 538 8280 | Email: samir_kundu(a)samirkundugroup.co.uk
Address: 3 Beechwood Terrace, Sunderland SR2 7LY
Registered in England & Wales No. 09051111
______________________________________________________________________
This email has been scanned by the Symantec Email Security.cloud service.
For more information please visit http://www.symanteccloud.com
______________________________________________________________________
Hi,
I am trying to replicate a REGISTER request between several nodes.
When I am using dmq_t_replicate(), it ends the execution of the script.
It this correct or I have missed anything?
I can not find anything in the documentation of the DMQ module the says that it will end the script execution.
Is it recommended to use the DMQ module or should I simply forward the request instead as described in https://medium.com/@tumalevich/kamailio-registration-replication-without-dm…
Best Regards,
Lars
Hello,
We are using DMQ module to sync dialogs between 3 Kamailio boxes.
We are using last Kamailio version (5.2.3).
>From our understanding, the state DLG_STATE_CONFIRMED_NA is not synced over DMQ (https://github.com/kamailio/kamailio/blob/a84a3ea618f0e602a8892c37fce7f4e72…)
With containerized environement, the ACK's can go to any Kamailio instance, which lead to :
On first box :
-> INVITE received -> Dialog created + KDMQ sent (state DLG_STATE_UNCONFIRMED)
-> 180 | 183 received -> Dialog updated + KDMQ sent (state DLG_STATE_EARLY)
-> 200 received -> Dialog updated + KDMQ NOT sent (DLG_STATE_CONFIRMED_NA)
On second box :
-> ACK received :
- next_state_dlg(): bogus event 6 in state 2 for dlg
- dialog not updated
- KDMQ with state DLG_STATE_CONFIRMED not sent
On first box, after timeout :
-> After timeout :
- dialg with incorrect timeouts (since box2 didn't send dialog update)
- tm sends BYE in both ways
- bye_reply_cb(): inconsitent dlg timer data on dlg
We see two solutions :
- We add DLG_STATE_CONFIRMED_NA to states we sync on dlg_dmq_replicate_action
- We manage to route the ACK on the same instance that received first INVITE (could be tricky)
Which one is preferable ?
Kind regards,
Mathieu Bodjikian
Hello,
I have a question about record route and via headers. My scenario is
the following:
[asterisk] ---- [kam] -------- [trunk]
10.142.0.27 10.142.0.6 200.x.x.x
I have an asterisk an a kamailio in a private ip network
(10.142.0.0/24). Kamailio has the address 10.142.0.6 but is also
natted 1:1 to a public ip (35.0.0.6).
My problem is that when the invite are replied the asterisk replies to
the external ip (35.0.0.6) instead of the internal ip (even though
the kamailio replies goes through the internal network) . I tried
adding a reply route to change the advertised address to no avail.
any advice would be appreciated.
this is my conf:
LISTEN="listen=udp:0.0.0.0:5060 advertise 35.0.0.6:5060"
disable_tcp=yes
loadmodule "jsonrpcs.so"
loadmodule "kex.so"
loadmodule "corex.so"
loadmodule "tm.so"
loadmodule "tmx.so"
loadmodule "sl.so"
loadmodule "rr.so"
loadmodule "pv.so"
loadmodule "maxfwd.so"
loadmodule "usrloc.so"
loadmodule "textops.so"
loadmodule "siputils.so"
loadmodule "xlog.so"
loadmodule "sanity.so"
loadmodule "ctl.so"
loadmodule "cfg_rpc.so"
loadmodule "acc.so"
loadmodule "counters.so"
loadmodule "permissions.so"
loadmodule "ipops.so"
modparam("jsonrpcs", "pretty_format", 1)
modparam("tm", "failure_reply_mode", 3)
modparam("tm", "fr_timer", 30000)
modparam("tm", "fr_inv_timer", 120000)
modparam("rr", "enable_full_lr", 0)
modparam("rr", "append_fromtag", 0)
reply_route {
xinfo("source $si");
if(!is_in_subnet($si, "10.0.0.0/8")) {
set_advertised_address("10.142.0.6");
}
else {
xinfo("not in subnet");
}
}
request_route {
# per request initial checks
route(REQINIT);
# CANCEL processing
if (is_method("CANCEL")) {
if (t_check_trans()) {
route(RELAY);
}
exit;
}
# handle retransmissions
if (!is_method("ACK")) {
if(t_precheck_trans()) {
t_check_trans();
exit;
}
t_check_trans();
}
# handle requests within SIP dialogs
route(WITHINDLG);
### only initial requests (no To tag)
# authentication
#route(AUTH);
# record routing for dialog forming requests (in case they are routed)
# - remove preloaded route headers
remove_hf("Route");
if (is_method("INVITE|SUBSCRIBE")) {
record_route();
}
# dispatch requests to foreign domains
route(SIPOUT);
if ($rU==$null) {
# request with no Username in RURI
sl_send_reply("484","Address Incomplete");
exit;
}
}
# Wrapper for relaying requests
route[RELAY] {
if (!t_relay()) {
sl_reply_error();
}
exit;
}
# Per SIP request initial checks
route[REQINIT] {
if($ua =~ "friendly-scanner|sipcli|VaxSIPUserAgent") {
# silent drop for scanners - uncomment next line if want to reply
# sl_send_reply("200", "OK");
exit;
}
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
exit;
}
if(is_method("OPTIONS") && uri==myself && $rU==$null) {
sl_send_reply("200","Keepalive");
exit;
}
if(!sanity_check("1511", "7")) {
xlog("Malformed SIP message from $si:$sp\n");
exit;
}
}
# Handle requests within SIP dialogs
route[WITHINDLG] {
if (!has_totag()) return;
# sequential request withing a dialog should
# take the path determined by record-routing
if (loose_route()) {
if ( is_method("NOTIFY") ) {
record_route();
}
route(RELAY);
exit;
}
if (is_method("SUBSCRIBE") && uri == myself) {
send_reply("405", "Method Not Allowed");
exit;
}
if ( is_method("ACK") ) {
if ( t_check_trans() ) {
# no loose-route, but stateful ACK;
# must be an ACK after a 487
# or e.g. 404 from upstream server
route(RELAY);
exit;
} else {
# ACK without matching transaction ... ignore and discard
exit;
}
}
sl_send_reply("404","Not here");
exit;
}
route[SIPOUT] {
if (uri==myself) return;
append_hf("P-hint: outbound\r\n");
route(RELAY);
exit;
}
--
Iván Aponte
Office: +58(212)9923193
Mobile: +58(412)2774713
chat over sip where and how save it
On Mon, Jul 1, 2019 at 1:03 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 the World Wide Web, visit
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
> 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. Re: ATCF/ATGW functionality (Mojtaba)
> 2. Re: ATCF/ATGW functionality (Mojtaba)
> 3. Re: ATCF/ATGW functionality (Maryam Baghdadi)
> 4. kamailio wiht PJSIP IOS client (Gaurav Bmotra)
> 5. Re: ATCF/ATGW functionality (Mojtaba)
> 6. Re: Late offer ACKs not passing through branch_route
> (Enrico Bandiera)
> 7. kamailio 4.4.4 fills IPv6 contact address when sending packet
> over IPv4 (Pali Rohár)
> 8. Re: install mongoDB module with kamailio-cli doker image
> (Gaurav Bmotra)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Sun, 30 Jun 2019 15:40:07 +0430
> From: Mojtaba <mespio(a)gmail.com>
> To: "Kamailio (SER) - Users Mailing List"
> <sr-users(a)lists.kamailio.org>
> Cc: users(a)lists.kamailio.org
> Subject: Re: [SR-Users] ATCF/ATGW functionality
> Message-ID:
> <
> CABVi_Ew5Ti0bH5z4kcoBwx9jvv8S06GtEqgzCKPfxE7jfh7aJQ(a)mail.gmail.com>
> Content-Type: text/plain; charset="UTF-8"
>
> Unfortunately you can't, because SRVCC is a capable between MME and
> MCS in your network. When the UE is moving on, the MME send "Take
> handover of the call" to MSC and move the surrect session control to
> MSC. You could read more about SRVCC in 3GPP TS 29.280.
> And FHOSS does not support interface between MME and HSS,
> With Best Regards.Mojtaba
>
> On Sun, Jun 30, 2019 at 11:28 AM Maryam Baghdadi
> <maryam.baghdadi(a)gmail.com> wrote:
> >
> > Hello,
> >
> > Is it possible to add ATCF/ATGW functionality in kamailio as P-cscf ?
> > I have IMS network with kamailio as P-cscf, icscf, scscf and FHoss .
> > ATCF/ATGW is necessary for handovers between 2G/3G and LTE networks.
> >
> > _______________________________________________
> > Kamailio (SER) - Users Mailing List
> > sr-users(a)lists.kamailio.org
> > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
>
>
> --
> --Mojtaba Esfandiari.S
>
>
>
> ------------------------------
>
> Message: 2
> Date: Sun, 30 Jun 2019 15:40:07 +0430
> From: Mojtaba <mespio(a)gmail.com>
> To: "Kamailio (SER) - Users Mailing List"
> <sr-users(a)lists.kamailio.org>
> Cc: users(a)lists.kamailio.org
> Subject: Re: [SR-Users] ATCF/ATGW functionality
> Message-ID:
> <
> CABVi_Ew5Ti0bH5z4kcoBwx9jvv8S06GtEqgzCKPfxE7jfh7aJQ(a)mail.gmail.com>
> Content-Type: text/plain; charset="UTF-8"
>
> Unfortunately you can't, because SRVCC is a capable between MME and
> MCS in your network. When the UE is moving on, the MME send "Take
> handover of the call" to MSC and move the surrect session control to
> MSC. You could read more about SRVCC in 3GPP TS 29.280.
> And FHOSS does not support interface between MME and HSS,
> With Best Regards.Mojtaba
>
> On Sun, Jun 30, 2019 at 11:28 AM Maryam Baghdadi
> <maryam.baghdadi(a)gmail.com> wrote:
> >
> > Hello,
> >
> > Is it possible to add ATCF/ATGW functionality in kamailio as P-cscf ?
> > I have IMS network with kamailio as P-cscf, icscf, scscf and FHoss .
> > ATCF/ATGW is necessary for handovers between 2G/3G and LTE networks.
> >
> > _______________________________________________
> > Kamailio (SER) - Users Mailing List
> > sr-users(a)lists.kamailio.org
> > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
>
>
> --
> --Mojtaba Esfandiari.S
>
>
>
> ------------------------------
>
> Message: 3
> Date: Sun, 30 Jun 2019 16:32:01 +0430
> From: Maryam Baghdadi <maryam.baghdadi(a)gmail.com>
> To: "Kamailio (SER) - Users Mailing List"
> <sr-users(a)lists.kamailio.org>
> Subject: Re: [SR-Users] ATCF/ATGW functionality
> Message-ID:
> <CAPrdAbAnnTULTA1rZ-b=
> PG1FE+4HfqRHtKg_3R49WEBUXbM+Fw(a)mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Thank you for your response,
> If we need to handover of call in our network, What's the solution? is it
> possible to add external MSC Server to out network? or add a SBC with this
> ability ?
>
> On Sun, Jun 30, 2019 at 3:40 PM Mojtaba <mespio(a)gmail.com> wrote:
>
> > Unfortunately you can't, because SRVCC is a capable between MME and
> > MCS in your network. When the UE is moving on, the MME send "Take
> > handover of the call" to MSC and move the surrect session control to
> > MSC. You could read more about SRVCC in 3GPP TS 29.280.
> > And FHOSS does not support interface between MME and HSS,
> > With Best Regards.Mojtaba
> >
> > On Sun, Jun 30, 2019 at 11:28 AM Maryam Baghdadi
> > <maryam.baghdadi(a)gmail.com> wrote:
> > >
> > > Hello,
> > >
> > > Is it possible to add ATCF/ATGW functionality in kamailio as P-cscf ?
> > > I have IMS network with kamailio as P-cscf, icscf, scscf and FHoss .
> > > ATCF/ATGW is necessary for handovers between 2G/3G and LTE networks.
> > >
> > > _______________________________________________
> > > Kamailio (SER) - Users Mailing List
> > > sr-users(a)lists.kamailio.org
> > > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
> >
> >
> >
> > --
> > --Mojtaba Esfandiari.S
> >
> > _______________________________________________
> > Kamailio (SER) - Users Mailing List
> > sr-users(a)lists.kamailio.org
> > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
> >
>
hi
i na using kamailio 5.1.2 and i m developing ios client with PJSIP
audio is working fine ..but on video it work one side but not showing other
side
it is working fine on other client like zoiper for audio/video both
can anyone help me
--
*Regards:*
Gaurav Kumar
Hello list
i'm facing strange behavior in my lap which consists of p-cscf, i-cscf,
s-cscsf, FHoSS for HSS
Registration is ok and ICSCF is performing well but when it comes to calls,
INVITE Call between two ims users is not passing from scscf to icscf
the flow should be : P-->S-->I-->hss
i can see invite massage is going out scscf to icscf with all monitoring
tools, but no incoming Invite massage to icscf not on sip level and nor on
networking level (tcpdump)
Actually i don't know where the INVITE packets are going
Any advice
Regards