I recently installed the latest version of openser and this time used
mediaproxy rather than rtpproxy. Everything seems to work but if a sip
device is called the phone rings and is instantally disconnected and the far
end is left off-hook. This worked before but I did modify my script to work
with mediaproxy. Below is the wireshark decode of the sip messagining. Any
help or suggestions on where to look would be great. Calls from the sip
device works flawlessly. I am using a MaxTNT as the gateway.
|Time | 152.93.36.91 | siprt1.me.net| 152.93.37.83 |
|22.031 | INVITE SDP ( telephone-event) |
|SIP From: sip:8385021101@152.53.16.91:5060 To:sip: 8385024200@
siprt1.me.net:5060
| |(5060) ------------------> (5060) | |
|22.031 | 100 Giving a try | |SIP
Status
| |(5060) <------------------ (5060) | |
|22.031 | | INVITE SDP ( telephone-event)
|SIP Request
| | |(5060) ------------------> (5060) |
|22.040 | | 100 Trying| |SIP
Status
| | |(5060) <------------------ (5060) |
|22.042 | | 180 Ringing |SIP
Status
| | |(5060) <------------------ (5060) |
|22.042 | 180 Ringing | |SIP
Status
| |(5060) <------------------ (5060) | |
|25.244 | | 200 OK SDP ( telephone-event)
|SIP Status
| | |(5060) <------------------ (5060) |
|25.245 | 200 OK SDP ( telephone-event) |
|SIP Status
| |(5060) <------------------ (5060) | |
|25.269 | ACK | | |SIP
Request
| |(5060) ------------------> (5060) | |
|25.269 | | ACK | |SIP
Request
| | |(5060) ------------------> (5060) |
|25.269 | INVITE SDP ( telephone-event) |
|SIP From: sip: 8385021101@152.93.36.91:5060 To:sip: 8385024200@
siprt1.me.net:5060
| |(5060) ------------------> (5060) | |
|25.270 | 407 Proxy Authentication Required |
|SIP Status
| |(5060) <------------------ (5060) | |
|25.291 | ACK | | |SIP
Request
| |(5060) ------------------> (5060) | |
|25.291 | BYE | | |SIP
Request
| |(5060) ------------------> (5060) | |
|25.293 | | BYE | |SIP
Request
| | |(5060) ------------------> (5060) |
|25.326 | | 200 OK | |SIP
Status
| | |(5060) <------------------ (5060) |
|25.327 | 200 OK | | |SIP
Status
| |(5060) <------------------ (5060) | |
Shane
Good day all,
Currently I'm working on an interface/design where I have openser
relaying messages to asterisk servers. The stumbling block I've run into
is having openser relay
SUBSCRIBE, NOTIFY or PUBLISH messages to Asterisk.
So far, I've tried using openser's forward() and t_relay() functions
without success; By the way, these work just fine with INVITE and
REGISGER messages.
Any pointers would be greatly appreciated
Thanks,
Marvin Ottley
Email: marvino(a)nbsvoice.com <mailto:marvino@nbsvoice.com>
This email may contain confidential and/or privileged information, and
is intended solely for the addressee identified above. Any unauthorized
use, disclosure or dissemination of the information contained in this
email is strictly prohibited. If you have received this email in error,
then please notify the sender immediately, and delete this email and all
copies.
Hi!
I read the docs of the presence module and have some question. Maybe
someone can enlighten me ;-)
1. If I understand correctly, the pua module acts as a "UAC". Thus, it can
be used to send PUBLISH or SUBSCRIBE. I wonder what is the usecase for
sending SUBSCRIBE? Usually, a client which sends a SUBSCRIBE receives
subsequent NOTIFY messages. How can these NOTIFY messages be handled?
2. If an external application sends PUBLISH via the uac_mi interface, how
can be distinguished between a "new" PUBLISH or an "update" PUBLISH? For
example if the MI interface returns the E-Tag from the 200 Ok response
this could be used in the next request to group identify PUBLISH reqeusts
which belong together.
3. There is a bug in the pua module docs: the db_url(str) parameter is
described twice.
4. The following module documentations lack of default values for the
module parameters: pua, pua_usrloc, presence (maybe some example show the
default value, but IMO the default value should be explicitely stated)
5. How can I update the presence status from a third party application? Is
it possible to write directly into the tables of the presence modules?
Or can I fake an update using the pua_mi to loop a PUBLISH to itself for
handling it afterwards with handle_publish()? May this cause problems
because it interferes the subsequent PUBLISH request from the client
(etag)?
regards
Klaus
Hi,
In fact, now, every phone does not response.
The options didn't go thought the FW, so, the phone cannot answer.
I don't understand why the traffic don't go thought it !!
I have test this configuration with two firewall: a sonicwall and a soho.
Cheers,
Thomas
-----Message d'origine-----
De : Daniel-Constantin Mierla [mailto:daniel@voice-system.ro]
Envoyé : mercredi, 3. janvier 2007 14:52
À : Thomas Deillon
Cc : users(a)openser.org
Objet : Re: [Users] SER as proxy in front of Asterisk
Hello,
what is the type of NAT/Firewall you have in front of Thomson? As I can
see from the diagram, the phone does not reply to OPTIONS request, and I
guess, the nat/firewall needs outward traffic to keep the pinhole open.
Check why thomson ignores the options requests.
Cheers,
Daniel
On 01/03/07 15:17, Thomas Deillon wrote:
>
> Hi,
>
> I have made more tries and now, all my phones don't work ...
>
> The firewall opens a connection to REGISTER phone but after a while
> the OPTION message from the Asterisk will be DROP by the FW ...
>
> You can find a diagram of the exchange here:
> http://deillon.eu/tmp/exchange_sip.png
>
> A list of all exchange: http://deillon.eu/tmp/ip_sip.txt
>
> And all sip message: http://deillon.eu/tmp/message.txt
>
> Thanks a lot for your help,
>
> Thomas
>
> ------------------------------------------------------------------------
>
> *De :* users-bounces(a)openser.org [mailto:users-bounces@openser.org]
> *De la part de* Thomas Deillon
> *Envoyé :* mardi, 2. janvier 2007 11:44
> *À :* users(a)openser.org
> *Objet :* [Users] SER as proxy in front of Asterisk
>
> Hi all,
>
> I wish you first a happy new year !!
> One again, I ask you some help. Thanks a lot for your patience and
> your answers that really helped me.
>
> So, I want to put a SER in front of one Asterisk for the moment (more
> after).
> All Servers have public IP address and so, I don't care about the
> RTP/SDP messages.
> All phones are behind NAT somewhere in Switerland :)
>
>
> I have the configuration below in openser:
>
>
> modparam("dispatcher", "list_file", "/etc/openser/dispatcher.list")
> #modparam("dispatcher", "force_dst", 1)
> modparam("dispatcher", "flags", 2)
>
> modparam("usrloc", "db_mode", 0)
> #modparam("rr", "enable_full_lr", 1)
>
> route{
>
>
> xlog("L_ALERT", "[$rm] from [$fu] to [$tu]\n");
>
> if (!mf_process_maxfwd_header("10")) {
> sl_send_reply("483","Too Many Hops");
> exit;
> };
>
> if (msg:len >= 2048 ) {
> sl_send_reply("513", "Message too big");
> exit;
> };
>
> # if (search("User-Agent:.*Thomson.*")) {
> # };
>
>
> if ((src_ip==212.xxx.xxx.152) || (src_ip==212.xxx.xxx.153)) {
> if(method=="OPTIONS") {
> };
> avp_pushto("$ru","$tu");
> forward();
>
> }else {
> fix_nated_contact();
> force_rport();
> if(method=="REGISTER"){
> ds_select_dst("4", "0");
> t_relay();
> }
> else {
> ds_select_dst("0", "4");
> forward();
> }
> }
> }
>
>
> And in my dispatcher.list I have:
>
> 0 sip:212.xxx.xxx.153:5060
> 4 sip:212.xxx.xxx.153:5060
>
>
>
> With this configuration, a snom phone, a X-lite phone and a Cisco
> phone seams to work ....
> But with the Thomson ST2030, it doesn't work.
> In fact, the Thomson REGISTER on asterisk, the Asterisk send a OPTION
> message to the FW IP adress and the right port where the thomson is
> and then, after a while, the FW close the connection. The thomson
> phone is so "UNREACHABLE" on asterisk status and nobody can call it.
> I'm not sure that my configuration is ok in ser but I think that is a
> problem with the Thomson2030. Do you had the same kind of problem or
> do you understand the problem here ?
>
>
> Thanks for your help,
>
> Thomas Deillon
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Users mailing list
> Users(a)openser.org
> http://openser.org/cgi-bin/mailman/listinfo/users
>
Hi,
I have made more tries and now, all my phones don't work ...
The firewall opens a connection to REGISTER phone but after a while the OPTION message from the Asterisk will be DROP by the FW ...
You can find a diagram of the exchange here: http://deillon.eu/tmp/exchange_sip.png
A list of all exchange: http://deillon.eu/tmp/ip_sip.txt
And all sip message: http://deillon.eu/tmp/message.txt
Thanks a lot for your help,
Thomas
________________________________
De : users-bounces(a)openser.org [mailto:users-bounces@openser.org] De la part de Thomas Deillon
Envoyé : mardi, 2. janvier 2007 11:44
À : users(a)openser.org
Objet : [Users] SER as proxy in front of Asterisk
Hi all,
I wish you first a happy new year !!
One again, I ask you some help. Thanks a lot for your patience and your answers that really helped me.
So, I want to put a SER in front of one Asterisk for the moment (more after).
All Servers have public IP address and so, I don't care about the RTP/SDP messages.
All phones are behind NAT somewhere in Switerland :)
I have the configuration below in openser:
modparam("dispatcher", "list_file", "/etc/openser/dispatcher.list")
#modparam("dispatcher", "force_dst", 1)
modparam("dispatcher", "flags", 2)
modparam("usrloc", "db_mode", 0)
#modparam("rr", "enable_full_lr", 1)
route{
xlog("L_ALERT", "[$rm] from [$fu] to [$tu]\n");
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
exit;
};
if (msg:len >= 2048 ) {
sl_send_reply("513", "Message too big");
exit;
};
# if (search("User-Agent:.*Thomson.*")) {
# };
if ((src_ip==212.xxx.xxx.152) || (src_ip==212.xxx.xxx.153)) {
if(method=="OPTIONS") {
};
avp_pushto("$ru","$tu");
forward();
}else {
fix_nated_contact();
force_rport();
if(method=="REGISTER"){
ds_select_dst("4", "0");
t_relay();
}
else {
ds_select_dst("0", "4");
forward();
}
}
}
And in my dispatcher.list I have:
0 sip:212.xxx.xxx.153:5060
4 sip:212.xxx.xxx.153:5060
With this configuration, a snom phone, a X-lite phone and a Cisco phone seams to work ....
But with the Thomson ST2030, it doesn't work.
In fact, the Thomson REGISTER on asterisk, the Asterisk send a OPTION message to the FW IP adress and the right port where the thomson is and then, after a while, the FW close the connection. The thomson phone is so "UNREACHABLE" on asterisk status and nobody can call it.
I'm not sure that my configuration is ok in ser but I think that is a problem with the Thomson2030. Do you had the same kind of problem or do you understand the problem here ?
Thanks for your help,
Thomas Deillon
Hi,
i can not compile openser 1.1.0 for solaris 10. any idea why?
gcc -g -O9 -funroll-loops -Wall -mcpu=ultrasparc -mtune=ultrasparc
-DNAME='"openser"' -DVERSION='"1.1.0-notls"' -DARCH='"sparc64"'
-DOS='"solaris"' -DCOMPILER='"gcc 3.4.3"' -D__CPU_sparc64 -D__OS_solaris
-D__SMP_no -DCFG_DIR='"/usr/local/etc/openser/"' -DPKG_MALLOC -DSHM_MEM
-DSHM_MMAP -DUSE_IPV6 -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE
-DHAVE_RESOLV_RES -DF_MALLOC -DSTATISTICS -DFAST_LOCK -DADAPTIVE_WAIT
-DADAPTIVE_WAIT_LOOPS=1024 -DHAVE_GETIPNODEBYNAME -DHAVE_SYS_SOCKIO_H
-DHAVE_SCHED_YIELD -DHAVE_ALLOCA_H -DUSE_SIGACTION -DHAVE_DEVPOLL
-DHAVE_SELECT -c cfg.tab.c -o cfg.tab.o
/usr/ccs/bin/yaccpar:5: warning: ignoring #pragma ident
cfg.y: In function `yyparse':
cfg.y:859: error: `IPTOS_MINCOST' undeclared (first use in this function)
cfg.y:859: error: (Each undeclared identifier is reported only once
cfg.y:859: error: for each function it appears in.)
/usr/ccs/bin/yaccpar:164: warning: label `yynewstate' defined but not used
/usr/ccs/bin/yaccpar:374: warning: label `yyerrlab' defined but not used
gmake: *** [cfg.tab.o] Error 1
Hi,
I am trying to make my non-TLS/TLS UA register with my TLS enabled openSER.
Currently I am just working on my local machine with the client UAs on the
same subnet,(so there is only one domain, but its not named). Below is my
configuration file:
disable_tls = 0
listen = tls:10.30.100.41:5061
tls_verify_server = 1
tls_verify_client = 0
tls_require_client_certificate = 0
tls_method = TLSv1
tls_certificate = "/usr/local/etc/openser/tls/user/user- cert.pem"
tls_private_key = "/usr/local/etc/openser/tls/user/user- privkey.pem"
tls_ca_list = "usr/local/etc/openser/tls/user/user-calist.pem"
However, with the above configuration the client UAs couldnot register and I
got 408 Request Time out Message. Is there any field that is missing to make
this simple scenario work? What should be the values of "tls_client_domain"
and "tls_server_domain" fields in this case?
I noticed that when I start the openSER without TLS support using
"openserctl start" and do "ps -e" after that, there are more openSER
processes running than if I start openSER with TLS support in which case I
see very few of these processes running.
Your help is much appreciated....
Best regards,
NCheeku
This is pertaining to call cancel operation where the calling UA sends a CANCEL request via openser to the called UA.
After the UA sends ACK in response to 487 Transaction Terminated response, 487 responses are re-transmitted by openser to the UA as if the SIP proxy didn't regcognise the ACK request. I have tested with other UA and compare the differences between the ACK sent by UA that worked and UA which has this problem. The difference is that the ACK sent by the UA having this problem has a route header added.
Foon-Yew Kok
[This e-mail is confidential and may be priviledged. If you are not the
intended recipient, please kindly notify us immediately and delete the message
from your system; please do not copy or use it for any purpose, nor disclose
its contents to any other person. Thank you.]
---ST Electronics Group---
Hello,
I am currently trying to do accurate billing with openser. I found that
dialog and sst modules can be used to determine failed transactions. i.e. If
UA crashed and no BYE received at all. I tried to configure dialog and sst
modules as specified in the documentation. But active dialogs keep
incrementing even after hangup. It would be nice if someone can post a good
example. I am using cvs head of openser.
Snippet of config is as below:
###################### DIALOG ######################
modparam("dialog", "dlg_flag", 13)
modparam("dialog", "timeout_avp", "$avp(i:10)")
modparam("dialog", "use_tight_match", 1)
modparam("dialog", "enable_stats", 1)
###################### SST ######################
modparam("sst", "enable_stats", 1)
modparam("sst", "timeout_avp", "$avp(i:10)")
modparam("sst", "sst_flag", 14)
route
{
........
........
if(method=="INVITE")
{
setflag(13); # set the dialog flag
setflag(14); # Set the sst flag
avp_write("15","$avp(i:10)");
};
if (method=="INVITE")
{
record_route_preset("192.168.1.2:5060;nat=yes;did=1");
};
.........
.........
}
--
Regards
Asterisk Expert
Hello,
Today I installed the openser in my debian etch since the CVS, I was
looking information about how I can creat accounts SIP for my Endpoints
(softphone and Hardphone ATA), please help me I'm new with the OPENSER
Best regards