News
SIP SIMPLE client SDK 3.0.0
python-sipsimple (3.0.0) unstable; urgency=medium
- Added OTR encryption support in the chat stream
- Use openfile where we need control over the file creation
- Use defaultweakobjectmap defined in python-application
- Simplified verifying the transferred file's hash
- Added FileSelectorHash class to simplify code and improve readability
- Fixed recovering session state in certain failure conditions
- Do not wait for notifications if we couldn't notify transfer progress
- Capture unhandled exceptions and log errors from new_from_sdp
- Capture errors while parsing the file selector
- Handle the MedisStreamDidNotInitialize notification when adding streams
- Read code and reason from the notification when posting SIPSessionDidFail
- Don't rely on the failure reason being set for failed transfers
- Modified the SimplePayload and CPIMPayload to only work with bytes
- Handle parsing errors for is-composing documents
- Added package info module
- Fixed MediaStreamBase not posting MediaStreamDidNotInitialize sometimes
- Remove transfer_source from notifications
- Set transfer origin to the remote identity if Referred-By is missing
- Don't add a Referred-By header if it wasn't specified
- Handle exception when closing a file that is being read in another thread
- Prevent Session.transfer from being called while a transfer is in progress
- Changed default transfer reject code from 486 (Busy) to 603 (Decline)
- Protect SIPPublicationWillExpire from being called by an older publication
- Handle race condition where state is SameState for initial PUBLISH
- Remove bundled RFC/draft files
- zrtp: prefer standard AES to Twofish cipher
- Log Engine failures using application.log
- Set locks to NULL after destroying them
- pjsip: fix compilation warnings with recent versions of FFmpeg
- pjsip: removed unused files
- pjsip: update to revision 5249
- Always build pjsip in non-debug mode
- Avoid running timers if subscription dialog was destroyed
- Suppress some compilation warnings
- Avoid lockups on Engine shutdown
- Post notification when SIPApplication gets a fatal error
SIP SIMPLE client SDK 2.5.0
New version with VP8 codec and several fixes
- Added VP8 video codec support
- Added basic RTCP PLI support, used for requesting keyframes
- Fixed crash when handling bogus Opus packets
- Simplified registering audio codecs in the core
- Handle socket errors when fetching XCAP documents
- Fixed several compilation warnings
- Added python-application as a build dependency
- Fixed getting file offset on Windows
SIP SIMPLE client SDK 2.4.0
There is a new release of the SDK with MSRP file transfer pause/resume support and several bug fixes.
Changelog¶
python-sipsimple (2.4.0) unstable; urgency=medium
- Refactor file transfers and add resume support
- Interrupt stream.initialize if session is cancelled
- Add ISIPSimpleApplicationDataStorage interface
- Adapt to API changes in MSRPlib
- Simplified RTP streams initialization code
python-msrplib (0.17.0) unstable; urgency=medium
- Remove file sending capability from MSRPSession
- Fix sending response to unknown chunks
- Fix building responses to non-SEND chunks
- Refactor make_chunk into make_request and make_send_request
- Removed leftovers from virtual chunking removal
SIP SIMPLE client SDK 2.3.0
python-sipsimple (2.3.0)¶
- Added ZRTP support
- Add setting for opportunistic SRTP encryption
- Fix Opus SDP encoding
- Reject video streams without a profile-level-id attribute
- Renamed RTP stream related notifications
- Renamed audio stream recording related notifications
- Fix setting FFmpeg libraries path in some cases on OSX
- Fix posting ICE state change notifications
- Fix sending initial keyframes when ICE is used
- Run _send_keyframes on the Twisted thread
- Add ability to override the sender for chat messages
- pjsip: fix rendering on OSX
- pjsip: avoid crashes on OSX if video size changes
- Work around issue with the RTP transport lock being hold for too long
- Stop the VideoTransport in the device-io thread
- Removed caching of statistics on the RTP transports when stopping
- Fix draining the message queue in ChatStream
- Post SIPApplicationWillStart before starting the core
- Make SIPApplication start / stop consistent
- Fix race conditions when handling SIPApplication.state
- Avoid exceptions when un-pickling XCAP journal
- Add chatroom_capabilities property to ChatStream
ZRTP end-to-end audio and video encryption
SIP SIMPLE Client SDK has now end-to-end encryption for audio and video calls using ZRTP protocol (RFC 6168 http://tools.ietf.org/html/rfc6189). The software is in trunk and can be fetched using darcs.
SIP SIMPLE client SDK version 2.0.0 released
python-sipsimple (2.0.0) unstable; urgency=medium¶
- Add video support (H264 codec)
- Add support for handling initial INVITE requests without SDP
- Restart TCP and TLS transports when network conditions change
- Reuse disabled SDP streams
- Fix parsing makefile options
- Fix linking with OSX frameworks
- Unregister and unpublish when network conditions change, before restarting
- Leave symbols in even on release builds
- Fix not ending streams in some cases when Session.remove_streams fails
- Make stream initialization and ending consistent
- Report stream failure in MediaStreamDidEnd
- Add ExponentialTimer helper class to util
- Improved handling failures when processing remote proposals
- Reply with 488 if a remote SDP offer has deleted streams
- Fix race conditions when handling remote proposals
- Refresh SRTP crypto lines when updating local SDP
- Simplify code for obtaining the path to the OSX SDK
- Use 488 code when a proposal with streams fails
- Use timezone aware timestamps for Session start_time and stop_time
- Parse and generate bandwidth info attributes (b=) on the SDP
- Include address information with the MSRPTransportTrace notification
- Use SSLv23 method for TLSi (SSLv2 and SSLv3 are disabled)
- Updated bundled PJSIP to revision 4961
- Make sure a removed stream always has a connection line
- Remove bandwidth attributes when disabling a stream
- Reject incoming re-INVITE if we couldn't reply to it
- Fix setting SDP connection line when accepting a proposal
Note to SylkServer users: hold your update until a new release of SylkServer is made, adapting to some API changes in the SDK.
Note to Debian Wheezy users: You need to have the wheezy-backports repository enabled because we depend on backported libav. Also, make sure you have libxml2_2.8.0+dfsg1-7+wheezy1 installed, since the newest available version in wheezy is broken.
http://sipsimpleclient.org/projects/sipsimpleclient/wiki/SipInstallation
Video Streams now in trunk
Current trunk has now video support!
- H.264 codec with full HD
- ICE support
- sRTP encryption
Fetch it using darcs.
SIP SIMPLE client SDK version 1.4.2 released
python-sipsimple (1.4.2)¶
- Avoid recompiling the whole PJSIP every time the core is recompiled
- Fix encoding when expanding user home path
- Made the XMLDocument schema path configurable
sipclients (1.4.2)¶
- Removed no longer needed future imports
- Fixed handling html and multiline messages in chat
- Fixed doubly defined notification handler
The documentation for how to build the toolkit on Microsoft Windows has been updated.
SIP SIMPLE client SDK version 1.4.1 released
This release contains screen sharing using VNC over MSRP and several bug fixes and improvents.
python-sipsimple (1.4.1)¶
- Close external VNC viewer socket when the stream has ended
- Don't try to set TLS options if there is no default account
- Increased the connect timeout for external screen sharing handlers
python-sipsimple (1.4.0)¶
- Add support for adding/removing multiple streams at once
- Refactored SDP handling
- Send re-INVITE after ICE negotiation is done
- Refactored API for creating screen sharing streams and handlers
- Enable RTP keep-alive using empty RTP packets
- Disabled speex codec by default
- Fixed race condition when saving ICE state
- Made the VNC handler connection timeout a class attribute
- Allow the default VNC server and viewer handlers to be configurable
- Fix closing media transport to avoid leaking STUN sockets
- Store our Python object in the user_data field of pjmedia_transport
- Simplified srtp_active property
- Make ice_active property dynamic
- Make sure session state and proposed_streams are set to correct values
when processing proposals - Use a shorter timeout for re-INVITEs that need to be answered without user
interaction - Silence unused-function warning caused by python
SIP SIMPLE client SDK version 1.3.0 released
python-sipsimple (1.3.0) unstable; urgency=medium
- Initialize core from main thread
- Add AudioStream.recorder property and remove obsolete ones
- Allow AudioStream.start_recording to be called early
- Ensure MediaStreamDidEnd is always posted for MSRP streams
- Fixed cancel_proposal when no streams were proposed
- Fixed setting proposed streams on hold when holding during a re-INVITE
- Fixed originator for SIPSessionProposalRejected
- Fixed pickling for some core objects
- Fixed compilation with latest Cython version
- Fixed processing AudioPortDidChangeSlots if bridge was stopped
- Avoid sending failure reports for MSRP keep-alive chunks
- Avoid resetting greenlet when session is about to end or cancel a proposal
- Removed unused tls_timeout configuration parameter
- pjsip: don't compile libmilenage
http://sipsimpleclient.org/projects/sipsimpleclient/wiki/SipInstallation
Also available in: Atom