SlideShare a Scribd company logo
Programmable Testing
for Programmable Telcos
Andreas Granig <agranig@sipfront.com>
About me
Testing?
Monitoring?
● Two sides of same coin
But why?
Getting back in control!
3 Steps
● Passive Monitoring
● Active Monitoring
● Ad-Hoc Testing
Passive Monitoring
System
under
Test
tracing
tapping
Calling
Party
Calling
Party
Passive Monitoring
Solution
capture
agent
capture
agent
tapping
kamailio rtpengine
kamailio rtpengine
Active Monitoring
System
under
Test
Orchestration
Aggregation
sipp baresip
chromium
headless
kamailio rtpengine
Docker
Android
Emulator
Remote control
● baresip offers MQTT and HTTP
● sipp offers UDP
● Appium offers Selenium Webdriver
● Kamailio/rtpengine offer MQTT
Active Monitoring
SIP Test Flow
Active Monitoring
Ad-Hoc Testing
System
under
Test
sipp
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE scenario SYSTEM "sipp.dtd">
<scenario name="basic-call">
<send>
<![CDATA[
INVITE sip:bob@example.com SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
Max-Forwards: 70
From: "Alice" <sip:alice@example.com>;tag=[call_number]
To: "Bob" <sip:bob@example.com>
Call-ID: [call_id]
CSeq: [cseq] INVITE
Contact: <sip:alice@[local_ip]:[local_port]>
User-Agent: sipp
Content-Type: application/sdp
Content-Length: [len]
v=0
o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip]
s=-
t=0 0
c=IN IP[media_ip_type] [media_ip]
m=audio [media_port] RTP/AVP 8
a=rtpmap:8 PCMA/8000
]]>
</send>
<recv response="100" optional="true">
</recv>
<recv response="180">
</recv>
…
</scenario>
SIPP Scenario Generator
“This is nice, BUT…”
API Testing
curl -X POST 
“https://app.sipfront.com/api/v2/run” 
-u “$SIPFRONT_USER:$SIPFRONT_TOKEN” 
--data-urlencode “test.name=wait-for-call”
curl -X POST 
"https://api.twilio.com/2010-04-01/Accounts/$SID/Calls.json" 
-u $TWILIO_USER:$TWILIO_TOKEN 
--data-urlencode "Url=http://demo.twilio.com/docs/voice.xml" 
--data-urlencode "To=+19991000" 
--data-urlencode "From=+19992000"
API Testing
curl -X POST 
“https://app.sipfront.com/api/v2/run” 
-u “$SIPFRONT_USER:$SIPFRONT_TOKEN” 
--data-urlencode “test.name=basic-call-a-b”
THANK YOU

More Related Content

PDF
Automate your Kamailio Test Calls - Kamailio World 2024
PDF
Hacking Trust Relationships Between SIP Gateways
PDF
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
PPTX
Session Initiation Protocol - In depth analysis
PPT
VoIP - Cisco CME &amp; IP Communicator
PPTX
Pentesting VoIP
PDF
SiPBlast-2906
POT
SIP servers on embedded systems: Powering SoHo communications
Automate your Kamailio Test Calls - Kamailio World 2024
Hacking Trust Relationships Between SIP Gateways
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Session Initiation Protocol - In depth analysis
VoIP - Cisco CME &amp; IP Communicator
Pentesting VoIP
SiPBlast-2906
SIP servers on embedded systems: Powering SoHo communications

Similar to Programmable Testing for Programmable Telcos, Andreas Granig (20)

PDF
SiPCPE-108-1
PDF
Phone Apps... para el teléfono de escritorio
PDF
SIP Testing with FreeSWITCH
PDF
Fact sheet sip v1
PDF
OSMC 2014: Monitoring VoIP Systems | Sebastian Damm
PDF
Monitoring VoIP Systems
PDF
TekSIP Datasheet
PDF
JavaOne - A Sip Of Java - RJ Auburn
PPT
SIP in action Itexpo West
PPT
PDF
BlackHat Hacking - Hacking VoIP.
PPT
Si pp introduction_2
PDF
A tale of two RTC fuzzing approaches
PDF
SIP Express Media Server SBC application as powerful SBC and SIP toolbox
PPTX
Sip basic KT
PDF
SIP/WebRTC load testing @ KamailioWorld 2017
PPTX
Portfolio
KEY
Experience on-freeswitch-cluecon2011
PPTX
PraJHA TALK
SiPCPE-108-1
Phone Apps... para el teléfono de escritorio
SIP Testing with FreeSWITCH
Fact sheet sip v1
OSMC 2014: Monitoring VoIP Systems | Sebastian Damm
Monitoring VoIP Systems
TekSIP Datasheet
JavaOne - A Sip Of Java - RJ Auburn
SIP in action Itexpo West
BlackHat Hacking - Hacking VoIP.
Si pp introduction_2
A tale of two RTC fuzzing approaches
SIP Express Media Server SBC application as powerful SBC and SIP toolbox
Sip basic KT
SIP/WebRTC load testing @ KamailioWorld 2017
Portfolio
Experience on-freeswitch-cluecon2011
PraJHA TALK
Ad

More from Alan Quayle (20)

PDF
What is a vCon?
PDF
Supercharging CPaaS Growth & Margins with Identity and Authentication, Aditya...
PPTX
Building a sub-second virtual ThunderDome: Considerations for mass scale sub-...
PDF
What makes a cellular IoT API great? Tobias Goebel
PDF
eSIM as Root of Trust for IoT security, João Casal
PPTX
Architecting your WebRTC application for scalability, Arin Sime
PPTX
CPaaS Conversational Platforms and Conversational Customer Service – The Expe...
PDF
How to best maximize the conversation data stream for your business? Surbhi R...
PDF
Latest Updates and Experiences in Launching Local Language Tools, Karel Bourgois
PDF
What Everyone Needs to Know about Protecting the CPaaS Ecosystem from Unlawfu...
PDF
Master the Audience Experience Multiverse: AX Best Practices and Success Stor...
PDF
Open Source Telecom Software Survey 2022, Alan Quayle
PDF
OpenSIPS 3.3 – Messaging in the IMS and UC ecosystems. Bogdan-Andrei Iancu
PDF
TADS 2022 - Shifting from Voice to Workflow Management, Filipe Leitao
PDF
What happened since we last met TADSummit 2022, Alan Quayle
PDF
Stacuity - TAD Summit 2022 - Time to ditch the dumb-pipe, Mike Bromwich
PDF
AWA – a Telco bootstrapping product development: Challenges with dynamic mark...
PDF
Founding a Startup in Telecoms. The good, the bad and the ugly. João Camarate
PDF
How to bring down your own RTC platform. Sandro Gauci
PPTX
Radisys - Engage Digital - TADSummit Nov 2022
What is a vCon?
Supercharging CPaaS Growth & Margins with Identity and Authentication, Aditya...
Building a sub-second virtual ThunderDome: Considerations for mass scale sub-...
What makes a cellular IoT API great? Tobias Goebel
eSIM as Root of Trust for IoT security, João Casal
Architecting your WebRTC application for scalability, Arin Sime
CPaaS Conversational Platforms and Conversational Customer Service – The Expe...
How to best maximize the conversation data stream for your business? Surbhi R...
Latest Updates and Experiences in Launching Local Language Tools, Karel Bourgois
What Everyone Needs to Know about Protecting the CPaaS Ecosystem from Unlawfu...
Master the Audience Experience Multiverse: AX Best Practices and Success Stor...
Open Source Telecom Software Survey 2022, Alan Quayle
OpenSIPS 3.3 – Messaging in the IMS and UC ecosystems. Bogdan-Andrei Iancu
TADS 2022 - Shifting from Voice to Workflow Management, Filipe Leitao
What happened since we last met TADSummit 2022, Alan Quayle
Stacuity - TAD Summit 2022 - Time to ditch the dumb-pipe, Mike Bromwich
AWA – a Telco bootstrapping product development: Challenges with dynamic mark...
Founding a Startup in Telecoms. The good, the bad and the ugly. João Camarate
How to bring down your own RTC platform. Sandro Gauci
Radisys - Engage Digital - TADSummit Nov 2022
Ad

Recently uploaded (20)

PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPT
Teaching material agriculture food technology
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
Big Data Technologies - Introduction.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
KodekX | Application Modernization Development
PPTX
Cloud computing and distributed systems.
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Machine learning based COVID-19 study performance prediction
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Network Security Unit 5.pdf for BCA BBA.
Per capita expenditure prediction using model stacking based on satellite ima...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Teaching material agriculture food technology
Spectral efficient network and resource selection model in 5G networks
NewMind AI Weekly Chronicles - August'25 Week I
Big Data Technologies - Introduction.pptx
A Presentation on Artificial Intelligence
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
KodekX | Application Modernization Development
Cloud computing and distributed systems.
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Unlocking AI with Model Context Protocol (MCP)
Machine learning based COVID-19 study performance prediction
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Mobile App Security Testing_ A Comprehensive Guide.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Network Security Unit 5.pdf for BCA BBA.

Programmable Testing for Programmable Telcos, Andreas Granig