SipOps SIP Testing Tool

SipOps and PySipOps are an extension of some work posted in a previous article SIP OPTIONS with Scapy. PySipOps is a basic version of SipOps written as a simple example. 

SipOps is written in Java and supports sending the following SIP messages

  • SIP Early Offer Invite (& SIP ACK)
  • SIP Delayed Offer Invite
  • SIP Options

It is a simple piece of code and not meant to be a commercial SIP testing tool replacement by any means, nor is it designed to be a fully fledged SIP UA. What it is useful for is testing how a device will respond to various SIP or SDP header fields, such as an issue I raised to the Cisco support forums after using the tool to isolate a problem encountered with the Cisco Meeting Server, see it here.

If you are reading this article, hopefully, you find the tool useful and any feedback is welcome over at the GitHub repository.

Example Usage

Early offer

java -jar .\SipOps.jar early "destination UA" "URI user part" "URI domain part" "Source IP"

java -jar .\SipOps.jar early 1

Delayed offer

java -jar .\SipOps.jar delayed "destination UA" "URI user part" "URI domain part" "Source IP"

java -jar .\SipOps.jar delayed 1


java -jar .\SipOps.jar options "destination UA" "Source IP"

java -jar .\SipOps.jar options


java -jar .\SipOps.jar -h

Example Output

Example output of a SIP Early Offer INVITE