Hi

I'm using SIPp to load/stress test  several SIP UserAgents. The scenario is 
usually that I start SIPp in UAS mode and let thousands of UserAgents be 
simulated in my code to make calls to SIPp, that answers correctly to be able 
to setup the call. Sometimes I let SIPp be the UAC and initiate many many calls 
to my sip user agents. For now this works fine and I'm happy with the features

But as you all know, theres a long way to go before its possible to do some 
load tests. Therefore I have the need to test just a few calls sometimes. At 
those times I would like my code (the many UAs) to act as both A and B side of 
the call and let SIPp act more like a core network connecting calls. I have 
always thought that its not possible but today I read the reference document 
for another reason and stumbled over lookup and injection files. At a first 
look it looks like SIPp can be used as a Registrar but I didnt find any example 
scenarios by googling so maybe I'm wrong?

Basicaly what I want to do can be divided into two tasks. Remember that this 
will happen with very few calls/subscribers so I don't think there is an issue 
with reading/writing from file.

The first scenario would require SIPp to receive an REGISTER request and save a 
key/value pair in a file:
I would like SIPp to receive an REGISTER, issue a challenge for authentication 
and then act on the second REGISTER that comes in. I have no need of checking 
that the authentication is correct. But when the second REGISTER comes in, 
parse out the username variable from the Authorization header (save it to 
"username") and also parse out the ip and port from the Contact header (save it 
to "destination"). The next step would be for SIPp to save these two values in 
a file "registerdb.conf" like this:
andreas, 1.2.3.4:5060
alice, 2.2.3.3:5060
bob, 5.6.7.8:5060

Of course, sometimes the username is already present in the file and therefore 
needs to be replaces. I saw that there are commands like "lookup" and "replace" 
that maybe can be used for this?
Does it exist some example scenario files for this case?

If that first step is possible I need to create some kind of 3pcc scenario (or 
maybe its possible from just one single scenario file?) that in case of an 
incoming call, extract the userpart of the reqLn, lookup that field in file 
registerdb.conf to get the ip and port where that subscriber is registered and 
then make sure to send out an INVITE to that particular address.

If someone has done something like this before, please give me some hints if 
this is possible and if there are already some scenarios for this available

I guess the whole question can be simplified to a simpler testcase: I have two 
phones A and B. Both are configured to send all sip traffic to SIPp scripts and 
will always start by sending an REGISTER. After some time, I will pickup phone 
A and make a call to B, and all SIP signaling is sent from A to sipp, that 
needs to find out where B is registered and forward the request to B.

Regards,
// Andreas

------------------------------------------------------------------------------
_______________________________________________
Sipp-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sipp-users

Reply via email to