{"id":9685,"date":"2026-05-12T10:08:00","date_gmt":"2026-05-12T02:08:00","guid":{"rendered":"http:\/\/www.freesip.org\/?p=9685"},"modified":"2026-05-12T10:08:35","modified_gmt":"2026-05-12T02:08:35","slug":"sipstress-sip-testing-tool","status":"publish","type":"post","link":"https:\/\/www.freesip.org\/?p=9685","title":{"rendered":"sipstress-SIP testing tool"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>sipstress<\/strong>&nbsp;is a&nbsp;<strong>Python SIP call generator and diagnostic tool<\/strong>. It places real&nbsp;<strong>INVITE<\/strong>&nbsp;dialogs through a&nbsp;<strong>director<\/strong>&nbsp;(SBC \/ OpenSIPS \/ similar), keeps&nbsp;<strong>RTP<\/strong>&nbsp;open for a configurable time, then hangs up. It does&nbsp;<strong>not<\/strong>&nbsp;embed your whole IVR it drives the&nbsp;<strong>SIP\/RTP leg<\/strong>&nbsp;and records what the&nbsp;<strong>network and platform<\/strong>&nbsp;did: response codes, timings, jitter, loss, per-call traces, optional WAV captures, and PASS\/FAIL health checks.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">download:<\/p>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/github.com\/achrafka\/sipstress\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>sipstress&nbsp;is a&nbsp;Python SIP call generator and diagnostic tool. It places real&nbsp;INVITE&nbsp;dialogs through a&nbsp;director&nbsp;(SBC \/ OpenSIPS \/ similar), keeps&nbsp;RTP&nbsp;open for a configurable time, then hangs up. It does&nbsp;not&nbsp;embed your whole IVR it drives the&nbsp;SIP\/RTP leg&nbsp;and records what the&nbsp;network and platform&nbsp;did: response codes, timings, jitter, loss, per-call traces, optional WAV captures, and PASS\/FAIL health checks. download:<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-9685","post","type-post","status-publish","format-standard","hentry","category-projects"],"_links":{"self":[{"href":"https:\/\/www.freesip.org\/index.php?rest_route=\/wp\/v2\/posts\/9685","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.freesip.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.freesip.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.freesip.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.freesip.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=9685"}],"version-history":[{"count":2,"href":"https:\/\/www.freesip.org\/index.php?rest_route=\/wp\/v2\/posts\/9685\/revisions"}],"predecessor-version":[{"id":9687,"href":"https:\/\/www.freesip.org\/index.php?rest_route=\/wp\/v2\/posts\/9685\/revisions\/9687"}],"wp:attachment":[{"href":"https:\/\/www.freesip.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=9685"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.freesip.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=9685"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.freesip.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=9685"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}