[asterisk-app-dev] Testing an ARI application using SIPp

Tickling Contest tickling.contest at gmail.com
Wed Mar 2 14:35:15 CST 2016


Thanks again, Ben. I am trying to use sippy_cup, but unfortunately, I am
not able to get REGISTERed as the protocol it uses is always UDP, even if I
try TCP like so (also, is the format for invite correct?):

source: 192.168.1.5
destination: 192.168.1.90
register: sillyuser sillypassword
transport: tcp
max_concurrent: 10
calls_per_second: 5
number_of_calls: 20
steps:
  - invite 1001
  - wait_for_answer
  - ack_answer
  - sleep 3
  - send_digits '3125551234'
  - sleep 5
  - send_digits '#'
  - wait_for_hangup


So, yes, I would like to register two sippy_cup sessions, with two clients,
clientA and clientB, like so

(a) In one terminal, do sippy_cup clientA.yml (registers and calls clientB)
(b) In another terminal,k do sippy_cup clientB.yml (registers and waits for
calls from clientA).
(c) When I get the above working, I guess I will be testing many of these
sessions simultaneously.

On Wed, Mar 2, 2016 at 1:17 PM, Ben Klang <bklang at mojolingo.com> wrote:

> On Mar 2, 2016, at 12:57 PM, Tickling Contest <tickling.contest at gmail.com>
> wrote:
>
>
> Thanks for your response, Ben.
>
> To clarify, I'd like to just wait for an INVITE and then ANSWER. And then
> I'd like to do it a random number of times (so I can ANSWER a random number
> of calls). I don't need to hear audio, but I do want to simulate two people
> being on a call (no need to call a real endpoint etc.).
>
>
> Are you talking about having SIPp A call SIPp B? If so, it’s possible, you
> just need two separate scenarios: One to send the INVITE  and wait for the
> ANSWER, and another to (optionally) REGISTER and wait for the INVITE, then
> send the ANSWER.  You can also use RTP Echo within SIPp to reflect any
> received media back to the far end, which is an easy way to pass audio
> without messing with recordings.
>
>
> BTW, when I try to install sippy_cup, I get an error:
>
> ~/sipp-3.5.0$ sudo gem install sippy_cup
> Fetching: network_interface-0.0.1.gem (100%)
> Building native extensions.  This could take a while...
> ERROR:  Error installing sippy_cup:
> ERROR: Failed to build gem native extension.
>
>         /usr/bin/ruby1.9.1 extconf.rb
> /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot
> load such file -- mkmf (LoadError)
> from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
> from extconf.rb:1:in `<main>'
>
>
> Gem files will remain installed in
> /var/lib/gems/1.9.1/gems/network_interface-0.0.1 for inspection.
> Results logged to
> /var/lib/gems/1.9.1/gems/network_interface-0.0.1/ext/network_interface_ext/gem_make.out
>
>
>
> You need the Ruby development package installed to get mkmf, something
> like “apt-get install ruby-dev".  If you have further questions on SippyCup
> I’ll be happy to help you off-list, as it’s not really relevant here. Feel
> free to open an issue at https://github.com/mojolingo/sippy_cup/issues/new
>
> /BAK/
>
> --
> Ben Klang
> Principal/Technology Strategist, Mojo Lingo
> bklang at mojolingo.com
> +1.404.475.4841
>
> Mojo Lingo -- *Voice applications that work like magic*
> http://mojolingo.com
> Twitter: @MojoLingo
>
>
>
> On Wed, Mar 2, 2016 at 12:28 PM, Ben Klang <bklang at mojolingo.com> wrote:
>
>>
>> On Mar 2, 2016, at 11:30 AM, Tickling Contest <tickling.contest at gmail.com>
>> wrote:
>>
>> Hello,
>>
>> I have an ARI application that I would like to load test using SIPp (
>> http://sipp.sourceforge.net/).
>>
>>
>> Shameless plug: you may find SippyCup will help make creating load test
>> profiles easier: https://mojolingo.github.com/sippy_cup
>>
>> I understand how to REGISTER and send an INVITE out to a callee, but it
>> is not clear to me:
>>
>> (a) how to choose a RANDOM port for each client I launch using say
>> http://tomeko.net/other/sipp/sipp_cheatsheet.php?lang=pl
>> (REGISTER_INVITE_client.xml). Should I generate this beforehand and pass
>> it as field3, say? Or is there a method already available in SIPp to do
>> this?
>>
>>
>> I don’t know about making the ports random, but you can allocate a unique
>> port-per-connect by passing the “-t un” flag to sipp. Did you really need
>> them random, or just unique? And out of curiosity, why?  Most of the time,
>> the default of “-t u1”, which is a single UDP port shared for all dialogs,
>> works fine.
>>
>> (b)  How do I receive a call into a SIPp client? In other words, how do I
>> simulate a SIPp client to REGISTER and then wait for a call (from a SIPp
>> client connected to the same PBX)?
>>
>>
>> This gets tricky because SIPp isn’t a real UA.  However, you can write a
>> SIPp scenario that sends a REGISTER then waits for an INVITE.  The Sippy
>> Cup documentation has an example of this.
>>
>> (c) Can I play an audio file (or an mp3) after the call starts from both
>> the caller and callee?
>>
>>
>> You can replay audio in the form of a pcap file. If I need real audio,
>> the easiest path is usually to place a real call with tcpdump running.
>> http://sipp.sourceforge.net/doc/reference.html#PCAP+Play
>>
>>
>> /BAK/
>>
>> --
>> Ben Klang
>> Principal/Technology Strategist, Mojo Lingo
>> bklang at mojolingo.com
>> +1.404.475.4841
>>
>> Mojo Lingo -- *Voice applications that work like magic*
>> http://mojolingo.com
>> Twitter: @MojoLingo
>>
>>
>>
>> Your help is received with thanks!
>> _______________________________________________
>> asterisk-app-dev mailing list
>> asterisk-app-dev at lists.digium.com
>> http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev
>>
>>
>>
>> _______________________________________________
>> asterisk-app-dev mailing list
>> asterisk-app-dev at lists.digium.com
>> http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev
>>
>>
> _______________________________________________
> asterisk-app-dev mailing list
> asterisk-app-dev at lists.digium.com
> http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev
>
>
>
> _______________________________________________
> asterisk-app-dev mailing list
> asterisk-app-dev at lists.digium.com
> http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-app-dev/attachments/20160302/7ceb4c14/attachment-0001.html>


More information about the asterisk-app-dev mailing list