[OpenSIPS-Users] Automated Testing Scenario with OpenSIPS
Nick Khamis
symack at gmail.com
Sat Feb 9 01:49:57 CET 2013
Pink,
A great resource that can get you up and going in at most a week can
be found here:
http://www.google.com/url?q=http://www.h6315.com/ast_book/Building%2520Telephony%2520Systems%2520with%2520OpenSIPS%25201.6.pdf&sa=U&ei=AJ0VUdahEvG10AGl4IDIDA&ved=0CB8QFjAA&sig2=q5gYZ0W2OeVVhS-YaZ0xjg&usg=AFQjCNFrbF0lgZG6kcTaZwI5uu-azQSx-w
Happy Routing!
Nick.
On 2/8/13, Bogdan-Andrei Iancu <bogdan at opensips.org> wrote:
> Hi,
>
> On 02/08/2013 12:17 AM, Pink Cupcake wrote:
>> Hi Bogdan-Andrei,
>>
>> Your response really doesn't help me or deal with the questions I laid
>> out in my original post. Perhaps I was not being clear. Let me start
>> over.
>>
> Well, my answer was related to the error logs you posted :).
>
>>
>>
>> I need to implement an automated testing scenario on an OS X build
>> machine.
>>
>> The test requires two different SIP UAs -- which are both running
>> locally on the same machine -- to successfully engage in a SIP
>> call. In order for two UAs to talk to one another, they need to be
>> registered with a SIP server.
>>
>> I am trying to determine if OpenSIPS can be used as the server
>> component in my testing scenario.
>>
>> Since this is an integration test and doesn't require any state being
>> retained, the test steps look like this: (1) bring up an OpenSIPS
>> server in userspace, (2) have the two SIP UA clients register with
>> that server, as simply as possible, (3) have the two SIP UA clients
>> engage in and then end a SIP call, (4) stop the SIP UA clients, (5)
>> shut down the server.
>>
>> If anything is unclear from the above, please reply back.
> Clear and no issues here,
>
>>
>>
>>
>> Please can someone answer the following:
>>
>> If I can run OpenSIPS in userspace, I would also not like to have it
>> "installed" on the build machine. I used the "prefix" parameter to
>> `make install` into a separate directory and I am attempting to run
>> OpenSIPS from that directory.
>> It looks like I can run OpenSIPS in userspace. Is that correct?
> true
>>
>> From the documentation is looks like OpenSIPS does not use a database
>> by default, and keeps everything in memory. Is that correct?
> true
>>
>> Can any SIP UA client "REGISTER" with OpenSIPS when it is launched in
>> the "default" mode? If so, is there any special way the clients should
>> send the request?
> if using the opensips default script, no authentication will be required
> - but you need to use in the REGISTER RURI the IP of the server (so that
> opensips will consider them be handled locally).
>>
>> If it is necessary for OpenSIPS to be run with a database in order to
>> allow clients to register? If so, will the db_text module suffice? If
>> so, how do I perform this configuration (given my testing scenario)?
> no, no need for DB - by default, in cfg, the usrloc module comes with no
> DB support.
>
> Regards,
> Bogdan
>>
>>
>> PKCK
>>
>>
>>
>> On Thu, Feb 7, 2013 at 5:13 AM, Bogdan-Andrei Iancu
>> <bogdan at opensips.org <mailto:bogdan at opensips.org>> wrote:
>>
>> Hi,
>>
>> Without a trace I cannot tell for sure, but I suspect your clients
>> send several REGISTER requests without increasing the CSEQ no
>> (which is mandatory) - this is the meaning of the error you get.
>>
>> So, to be sure, make a network capture with the sip traffic
>> (ngrep) and see what are the replies from opensips.
>>
>> Regards,
>>
>> Bogdan-Andrei Iancu
>> OpenSIPS Founder and Developer
>> http://www.opensips-solutions.com
>>
>>
>> On 02/07/2013 12:01 AM, Pink Cupcake wrote:
>>> Hello,
>>>
>>> I'm investigating the suitability of OpenSIPS for use in a new
>>> system we are designing. Not only for use in a production
>>> environment, but also how it can be used to facilitate automated
>>> integration tests.
>>>
>>> I have a automated testing scenario where I need to have two SIP
>>> UAs that need to have a SIP session. What I would like to do is
>>> bring up a SIP server (in userspace) before the integration test
>>> starts, and bring it down after the integration test ends
>>> (fails/succeeds). The automated test will run on OS X.
>>>
>>> I downloaded OpenSIPS and built it on my iMac without any major
>>> problems. I am able to run it in userspace simply by calling it
>>> from the command line like `/sbin/opensips -D -f
>>> /path/to/opensips.cfg`.
>>>
>>> In section D of the INSTALL file, "opensips with Persistent Data
>>> Storage", it says:
>>>
>>> "The default configuration is very simple and features many
>>> simplifications.
>>> In particular, it does not authenticate users and loses User
>>> Location database
>>> on reboot. To provide persistence, keep user credentials and
>>> remember users'
>>> locations across reboots, opensips can be configured to use
>>> MySQL. Before you
>>> proceed, you need to make sure MySQL is installed on your box."
>>>
>>> This sounds ideal to me; I don't need any real kind of account
>>> management or authentication. I would like OpenSIPS to start,
>>> accept whatever REGISTER/INVITE from my two UAs, and then stop
>>> after I'm done. I would prefer not to require any database and
>>> keep it all in-memory, so there's nothing to clean up before or
>>> after the test (and no other dependencies to clean up before and
>>> after, e.g. MySQL databases).
>>>
>>> However, I can't seem to connect a SIP UA client to OpenSIPS when
>>> it's started up like this. I am trying to connect with Jitsi, a
>>> Mac client, as well as the ipjsua test app that ships with the
>>> pjsip C library. (I am able to connect both of those to the
>>> sip2sip.info <http://sip2sip.info> service, so I know they are
>>> both functional.)
>>>
>>> With Jitsi, I set up a SIP account with Advanced settings
>>> (username: test1, password: test1, display name: test1,
>>> registrar: 127.0.0.1, port: 5060, manual proxy configuration,
>>> proxy: 127.0.0.1, port: 5060).
>>>
>>> Log output from opensips in Console.app looks like this:
>>>
>>> 13-02-06 1:48:21.934 PM opensips: WARNING:core:warn: warning in
>>> config file /path/to/opensips-with-local-changes.cfg, line 50,
>>> column 13-16: tls support not compiled in
>>> 13-02-06 1:48:22.010 PM opensips: WARNING:core:main: no fork mode
>>> 13-02-06 1:48:22.011 PM opensips: NOTICE:core:main: version:
>>> opensips 1.8.2-notls (x86_64/darwin)
>>> 13-02-06 1:48:22.013 PM opensips: NOTICE:signaling:mod_init:
>>> initializing module ...
>>> 13-02-06 1:50:58.328 PM opensips:
>>> ERROR:registrar:update_contacts: invalid cseq for aor <test1>
>>> 13-02-06 1:51:02.335 PM opensips:
>>> ERROR:registrar:update_contacts: invalid cseq for aor <test1>
>>> 13-02-06 1:51:06.342 PM opensips:
>>> ERROR:registrar:update_contacts: invalid cseq for aor <test1>
>>> ...
>>>
>>> With ipjsua/pjsip, I use the following configuration switches:
>>>
>>> --id sip:test1 at 127.0.0.1 <mailto:sip%3Atest1 at 127.0.0.1>
>>> --registrar sip:127.0.0.1
>>> --realm *
>>> --username test1
>>> --password test1
>>> --nameserver 127.0.0.1
>>> --outbound sip:127.0.0.1
>>>
>>> Log output in Console.app looks the same as with Jitsi except for
>>> the "invalid cseq" lines:
>>>
>>> 13-02-06 1:56:39.004 PM opensips:
>>> ERROR:registrar:update_contacts: invalid cseq for aor <>
>>>
>>>
>>> What do I need to do to run OpenSIPS in userspace, have it accept
>>> connections from my two SIP UAs, allow them to call each other,
>>> and do it all without requiring a database running?
>>>
>>> Do I absolutely require a database? If so, can someone explain
>>> how to configure the db_text module to work for my testing scenario?
>>>
>>> Thanks!
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>
More information about the Users
mailing list