ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Automating your
OpenSIPS config tests
Andreas Granig <agranig@sipfront.com>
It¡¯s me, Andreas
¡°Let¡¯s build our own test framework ¡­¡±
¡°... but I already run Homer!¡±
Issues happen.
Time for some (Github) Action!
Github CI Trigger
sipfront-app
command & control
baresip
SIP UA
kamailio
SIP proxy
rtpengine
media handler
sipfront-persistor
Kafka to DB
TimestreamDB
metrics
PostgreSQL
events
sipfront-finalizer
condition evaluator
System
under
Test
MQTT SIP
RTP/RTCP
stats via
MQTT/Kafka
HTTPS
SQL
SIP
RTP/RTCP
Github
GH action
via Sipfront API
Agent Anatomy
System
under
Test
Orchestration
Aggregation
generate
terminate
kamailio rtpengine
kamailio rtpengine
sipp baresip codecept
kamailio rtpengine
Docker
asterisk
Types of Tests
¡ñ SIP ? SIP calls
¡ñ Mobile App ? SIP calls
¡ñ Browser WebRTC ? SIP calls
¡ñ FAX
¡ñ ¡­
T-38 is fantastic
T-38 is fantastic
Northrop T-38 Talon
T-38 is fantastic
Northrop T-38 Talon T.38 Fax
Surprises!
¡ñ Offer/Answer handling
(Re-INVITE, 415, 488)
¡ñ Transcoding on SBCs
Fax Setup
System
under
Test
Orchestration
Aggregation
sipfront-agent
kamailio rtpengine
asterisk
AMI
internal
external
SIP
UDP
IP4
RTP
IP4
G711/T.38
SIP
UDP/TCP/TLS
IP4/6
RTP
SDES/DTLS
IP4/6
G711/T.38
FAX_MODE_T38
FAX_MODE_G711
FAX_SUCCESSFUL
FAX_FAILED
App/WebRTC ? SIP
¡ñ Many variations in the wild
¡ð OS, Browser
¡ð IPv4/v6
¡ð RTP/SRTP
¡ð G711/Opus
¡ñ Device Farms help!
Lifting the carpet
Lifting the carpet
WebRTC Setup
Web App
sipfront-agent
appium Browserstack
codeceptjs
HTTPS
WebRTC
Orchestration
Aggregation
Audio recordings
SDP offer/answer
RTCP statistics
to SIP agent on B side
SIP ? SIP
¡ñ Basic Call + Media at scale
¡ñ Presence
¡ñ ¡°Exotic¡± call flows
¡ð E911 + multipart/mime
¡ð SCAIP/NowIP Telecare
¡ñ IMS?
SIP Setup
System
under
Test
sipfront-agent
kamailio rtpengine
sipp
ctrl_udp
internal
external
SIP
UDP
IP4
play-media
SIP
UDP/TCP/TLS
IP4/6
RTP
SDES/DTLS
IP4/6
Orchestration
Aggregation
Post Dial Delay
CLI Info
Retransmits
Loss
RTT
Jitter
Loss
Packets/Bytes in/out
¡°The boy who cried wolf¡±
Key Takeaways
&
Learnings
¡ñ Test early & often
¡ñ Keep usage barrier low
¡ñ Make it reliable
THANK
YOU
Andreas Granig
<agranig@sipfront.com>

More Related Content

Automate your OpenSIPS config tests - OpenSIPS Summit 2024