In Part 1 of this series, we got SIPp running from the ground up including installation, XML scenarios, RTP audio, and CSV injection for testing multiple numbers at once. In Part 2, we wrapped all of that in Python, built a proper test runner class, and started dumping results to JSON so testing extensions in bulk didn’t mean babysitting a terminal window.
That covers the engine. But not everyone on your team wants to run a Python script from a terminal, and if you’re testing DIDs after every CUCM change or handing this off to someone less technical, a script isn’t really the answer.
So for Part 3, I built a GUI on top of it. It’s a Django dashboard where you can punch in a DID/extension or upload a CSV of them, hit run and watch results come in live instead of tailing logs. I’m also walking through the data model behind it, which turned out to be a more interesting design problem than I expected. Here is a video explanation of it
As always, feel free to drop your questions or feedback in the comments below. Until then, Keep Learning!!
