Is there a way I can tie a BYE to an INVITE? The setflag() and isflagset() commands only work on a transaction, right? And, a BYE is a new transaction, so how could I tell if a BYE is related to a previous INVITE?
Doug.
____________________________________________________________________________________
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
**Hi everybody,
I'm really happy to announce that the first one hundred percent book
dedicated to the OpenSER software is finally out. *"Building Telephony
Systems with OpenSER"* goes where no one has went before - writing a
book to help people to understand OpenSER software and to teach them how
to setup OpenSER based platforms - installation, configuration,
integration.
Such a book was waited by community for some time, and there are many
thinks about it to be said - for more on this book, please see the
announcement on the openser web page -
http://www.openser.org/mos/view/News/NewsItem/OpenSER-First-Book/
Regards,
Bogdan
Dear all,
I'm trying to install in a debian sid machine the openser 1.3 in order
to use it as presence server. I downloaded the openser and the presence
module from the official debian repository.
As database I'm using mysql.
Unfortunately, when I try to start the openSer I receive this error:
"ERROR:presence:mod_init: Wrong version v-1 for table <presentity>,
need v2"
I found the presentity table structure in this link:
http://www.openser.org/docs/db-tables/openser-db-1.3.x.html#GEN-DB-PRESENTI…
and I compared it with the presentity table in my system (this is the
output):
mysql> describe presentity;
+---------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL |
auto_increment |
| username | varchar(64) | NO | MUL | NULL
| |
| domain | varchar(64) | NO | | NULL
| |
| event | varchar(64) | NO | | NULL
| |
| etag | varchar(64) | NO | | NULL
| |
| expires | int(11) | NO | | NULL
| |
| received_time | int(11) | NO | | NULL
| |
| body | blob | NO | | NULL
| |
+---------------+------------------+------+-----+---------+----------------+
8 rows in set (0.03 sec)
How you can see, they seam identical.
I searched this error in your mailing list but I didn't find anything.
Please, could you help me to understood witch is the error?
the presence parameters in my openser.cfg are:
modparam("presence", "db_url",
"mysql://openser:openserrw@127.0.0.1/openser")
modparam("presence", "presentity_table", "presentity")
modparam("presence", "server_address", "sip:192.168.100.22:5060")
Thank you in advance for your help,
Best Regards
Andrea Polidoro
--
********************************************
Andrea Polidoro
PhD Student
University of Rome "Tor Vergata"
Department of Electronics Engineering
Via del Politecnico, 1 - 00133 Rome - ITALY
phone: +39 06 7259 7773
mobile: +39 320 4391892
email: andrea.polidoro(a)uniroma2.it
********************************************
Hello All!
Are any ways to define global variables in openser's scripts?
I need somethng like
==========================================
$var(router1) = "192.168.1.1"
$var(router2) = "192.168.1.2"
route {
...
myfunc1("$ru")
switch($retcode)
case 1:
$ruri = "sip:" + $rU + "@" + $var(route1);
case 2:
$ruri = "sip:" + $rU + "@" + $var(route2);
}
failure_route[1] {
myfunc2("$ru")
switch($retcode)
case 1:
$ruri = "sip:" + $rU + "@" + $var(route1);
case 2:
$ruri = "sip:" + $rU + "@" + $var(route2);
}
onreply_route[1] {
myfunc3("$ru")
switch($retcode)
case 1:
$ruri = "sip:" + $rU + "@" + $var(route1);
case 2:
$ruri = "sip:" + $rU + "@" + $var(route2);
}
==========================================
Right now (AFAIK) variables may be defined only within one route.
Maybe I missing something? What's the scope of visibility of variables
within configuration script?
--
With best regards!
Dear all,
I'm trying to install in a debian sid machine the openser 1.3 in order
to use it as presence server. I downloaded the openser and the presence
module from the official debian repository.
As database I'm using mysql.
Unfortunately, when I try to start the openSer I receive this error:
"ERROR:presence:mod_init: Wrong version v-1 for table <presentity>,
need v2"
I found the presentity table structure in this link:
http://www.openser.org/docs/db-tables/openser-db-1.3.x.html#GEN-DB-PRESENTI…
and I compared it with the presentity table in my system (this is the
output):
mysql> describe presentity;
+---------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL |
auto_increment |
| username | varchar(64) | NO | MUL | NULL
| |
| domain | varchar(64) | NO | | NULL
| |
| event | varchar(64) | NO | | NULL
| |
| etag | varchar(64) | NO | | NULL
| |
| expires | int(11) | NO | | NULL
| |
| received_time | int(11) | NO | | NULL
| |
| body | blob | NO | | NULL
| |
+---------------+------------------+------+-----+---------+----------------+
8 rows in set (0.03 sec)
How you can see, they seam identical.
I searched this error in your mailing list but I didn't find anything.
Please, could you help me to understood witch is the error?
the presence parameters in my openser.cfg are:
modparam("presence", "db_url",
"mysql://openser:openserrw@127.0.0.1/openser")
modparam("presence", "presentity_table", "presentity")
modparam("presence", "server_address", "sip:192.168.100.22:5060")
Thank you in advance for your help,
Best Regards
Andrea Polidoro
--
********************************************
Andrea Polidoro
PhD Student
University of Rome "Tor Vergata"
Department of Electronics Engineering
Via del Politecnico, 1 - 00133 Rome - ITALY
phone: +39 06 7259 7773
mobile: +39 320 4391892
email: andrea.polidoro(a)uniroma2.it
********************************************
Hi,
We are in the process of evaluating the architecture of OpenSER for a
local deployment. For this purpose I was looking at the State Machine
implemented in OpenSER.
More specifically I am looking at the state machine related to the
INVITE transaction.
In order to know the State machine, what files do I have to look at? Can
anyone please guide me.
Has the state machine been documented at some place, so that I can read
about it?
Any help would be appreciated.
Thanks a lot,
Aadil
Folks,
I developed a new feature in the Media Proxy project of AG-Proyect.
With this new feature the Media Proxy Server is now able to manage the
problem of the NAT IP change in an established call. It is
currently in production and working without any problem.
Somebody wants to test it?
I would like to know what to do to make this feature available to
everybody. Does anybody know?
Regards,
------------------------------
Details:
-------
Supose that there is an established rtp connection between two
endpoints and the media proxy is in the middle doing the relay of
the rtp streams, let´s say
(MP = mediaproxy)
EP A <--------->[NAT with IP1]<-----------> MP <--------------------> EP B
EP A sends rtp to MP_IP:MP_PORT passing through the NAT box.
EP B sends rtp to MP_IP:MP_PORT without passing through a NAT box.
The MP know that the caller = NAT_IP1:NAT_PORT1, and the called =
EP_B_IP:EP_B_PORT
Now, supose that the NAT box change their PUBLIC IP from IP1 to IP2, so
this escenary
EP A <------->[NAT with IP1]<---------> MP <-------------> EP B
will change to this
EP A <------->[NAT with IP2]<---------> MP <--------------> EP B
so the MP should detect that change of IPs and continue relaying the rtp
streams but now to IP2:PORT2 instead of IP1:PORT1.
Well, that was the situation y have experienced.
To fix this, I developed this solution, changing rtphandler.py file:
1) When the first rtp packet of a source arrives, save the SSRC field in
the MP.
- Save the SSRC of the caller.
- Save the SSRC of the called.
2) If arrives a rtp packet with unknown source IP but with the same SSRC
field of some of the two streams, updates the binding (with the new IP
detected) between the caller and the MP or between the called and the MP
according to the field SSRC previously saved.
Note: SSRC (RFC 3550 RTP), (from the rfc: "The SSRC identifier carried in
the RTP header and in various fields of RTCP packets is a random 32-bit
number that is required to be globally unique within an RTP session ")
--------------------------------
--
Gonzalo J. Sambucaro
Ingeniería de Software
Tel: +54-341-4230504
MSLC
gonzalo.sambucaro(a)mslc.com.ar
www.mslc.com.ar
Ocampo y Esmeralda - Vivero de Empresas de Base Tecnológica
Ciudad Universitaria Rosario UNR, CCT CONICET
Rosario - Santa Fé - Argentina
--
Gonzalo J. Sambucaro
Ingeniería de Software
Tel: +54-341-4230504
MSLC
gonzalo.sambucaro(a)mslc.com.ar
www.mslc.com.ar
Ocampo y Esmeralda - Vivero de Empresas de Base Tecnológica
Ciudad Universitaria Rosario UNR, CCT CONICET
Rosario - Santa Fé - Argentina
Is it possible to use speeddial to associate one number with two
destinations. E.g. user dials 10 which then calls both sip:bob@domain.com
and sip:jane@domain.com. If not then could anyone suggest an alternative
scheme whereby a user dials a short code which can be associated with
multiple URIs for parallel or serial forking?
Thanks
Cameron
Hello,
I have done a project for a SIP provider who is rapidly growing.
Designed as a SBC for about 50.000 subscribers at first, I setup a
system with a high availability cluster (HA/DRBD) on 2 servers which had
one single database on the DRBD volume. Failover works like a charm with
only very limited downtime.
Now we have to consider to scale the system to about 2-5 Mio subs, so I
have to challenge with some things I cannot oversee at the moment.
My question is: How do you deal with big installations?
- how do you load balance the openser? Is it advisable put put some
dedicated SIP hardware in front for load balancing? Or is the dispatcher
module on a seperate machine sufficiant (again HA-issue)?
- we have a portion of calls who have to go through mediaproxy (How do
you load balance this?)
- Do you face database issues? We think about setting up a database on 2
seperate servers. Is MySQL ok for this or do you use other DBMS?
- Form your exoperience: Are there other things I have to consider?
Best regards and thanks for your support.
Peter