These are rough notes from whatever I was working on, interested in or thinking about at the time. They vary greatly in quality and length, but prove useful to me, and hopefully to you too!
Lightweight Python SIP library
- software engineering
Need to create SIP requests and parse SIP responses as defined in RFC 3261. Do not need a “heavyweight” solution that runs a SIP server/proxy. Needs to support Python 2.7 and 3.6.
|Name||License||Python 2.7||Python 3.6||RFC 3261 compliant||Notes|
|Twisted||MIT||Yes||Yes||No||Conforms to RFC 2543, not RFC 3261. Adding RFC 3261 support has not progressed for 6 years.|
|rtclite (39 peers)||LGPL||Yes||No||Yes||Described as being a lightweight reference implementation. Consists of four files, including two other RFCs it imports and a common file. However contains many TODOs in the source.|
|dionaea||GPL v2||Yes?||Maybe?||Maybe?||Appears to be a trap for malware. Does not look suitable.|
|Sippy||BSD 2-clause||Yes||No||Yes||Appears rather heavyweight.|
|pysipp||GPL v2||Yes||Yes||Maybe?||Appears to be an interface to a separate tool, SIPp. Does not look suitable.|
|PJSUA||GPL v2||?||?||?||Low-level C Python extension. Appears rather heavyweight.|
|dpkt||BSD 3-clause||Yes||Almost (Python 3.5)||No?||Looks incomplete, SIP support last touched 2 years ago.|
|SIP Simple Client||GPL v3||Yes||No?||Yes||Appears rather heavyweight.|
SIPit is a week long event where people bring their SIP implementations to make sure they work together. It runs every 18 to 24 months.