Version 2.0.3 (released in 2016-01-29)
- Suitable for Debian Jessie and for Ruby >= 1.9.3 and Ruby 2.X.X.
Version 2.0.0 (released in 2014-09-24)
- (437abd4) Remove Posix Message Queue dependency. OverSIP can now run in OSX.
Version 1.4.0 (released in 2013-09-15)
(7befa37) RFC 6228 (199 response) implemented in
Proxy#drop_response(response). The method now allows passing the
OverSIP::SIP::Responseinstance to drop and, in case it is a XX response and the received request includes "Supported: 199" then a 199 response is sent upstream.
OverSIP::SIP::Request#ruri=(uri)method which replaces the Request URI of the request by passing an
OverSIP::SIP::Uriinstance or a string. Also allow passing a URI as string to
UacRequest.initializeand route based on it (if no
dst_hostparam is given to the
Uacinstance routing such a request). New class methods
OverSIP::SIP::NameAddr.parse(string)which generate instances of those classes.
OverSIP::ParsingErrorexception which is raised when invalid data is passed to
OverSIP::SIP::Uacinstances now allow setting multiple callbacks (for events like
on_success_response) and all of them will be executed sequentially.
(4b7c47f) New method
(774de3b) New instance methods
clear_callbacks()to clear existing callbacks in
(e58974f) New design of
add_outbound_to_contact()now requires passing an
OverSIP::SIP::Proxyas argument rather than a request, and it internally adds the callback to the 2XX response (for reverting the custom ;ov-ob param) so
remove_outbound_from_contact()is no longer required and has been removed.
OverSIP::SIP::Uri#clear_params()which removes all the params from the URI.
advertised_ipv6configuration options for running OverSIP in NAT'ed boxes.
Version 1.3.8 (released in 2013-05-16)
request.fix_nat()works now for initial requests regardless
request.loose_route()is not called (thanks to Vlad Paiu for reporting).
Version 1.3.7 (released in 2013-01-28)
- (ac18ff2) Added
OverSIP.root_fiberattribute which stores the root
Version 1.3.6 (released in 2013-01-03)
(0a858b1) Encode the body in UTF-8 also when received via WebSocket.
Version 1.3.5 (released in 2012-12-17)
(6ee6b8c) Fixed a bug in name_addr.rb that prevents the NameAddr to be printed until some URI field is modified.
(9b20db3) Add via_branch_id attr reader to UacRequest to avoid a bug in
Version 1.3.3 (released in 2012-11-15)
Version 1.3.2 (released in 2012-11-03)
- (3d7fa9e) Fixed a bug that writes an empty Record-Route header when an INVITE asking for incoming Outbound support comes from a TCP connection initiated by OverSIP.
Version 1.3.1 (released in 2012-10-04)
- (042fdaf) Fixed an important bug in record-routing mechanism that makes OverSIP not to add Record-Route/Path headers.
Version 1.3.0 (released in 2012-10-04)
(b950bba) New class
OverSIP::SIP::Uacthat allows OverSIP behaving as a UAC for generating and sending SIP requests. New class
OverSIP::SIP::UacRequestfor generating requests to be sent via
OverSIP::SIP::Uac#routemethod (also allows sending a received
OverSIP::SIP::Client, parent class of
OverSIP::SIP::Uac. New method
OverSIP::SIP::Client#on_error()method is now called with a third argument: a Ruby symbol trat represents the exact (internal) error code.
OverSIP::SIP::Client#on_target()callback is now called with a single parameter: the instance of
(7e9733e) New feature: automatic blacklists. When a destination (target) fails due to timeout, connection error or TLS validation error, the target is added to a temporal blacklist and future requests to same target are not attempted until the entry in the blacklist expires.
Version 1.2.0 (released in 2012-09-04)
(7e54d1c) Don't raise an exception if the received STUN request contains an invalid IP family (vulnerability!).
(f7eefd6) If request.from or request.to (
NameAddrinstances) are modified before routing the request, changes are applied for the outgoing request and reverted when sending responses upstream.
(0f9d3ec) If request.contact
NameAddrfields are modified then changes are applied in the forwarded request.
SystemCallbacksmodule for 3rd party modules to set custom callbacks when OverSIP is started, reloaded (HUP signal) or stopped.
OverSIP::SIP::Uri#aor()method which returns "sip:user@domain" for a SIP/SIPS URI (no port or params) and "tel:number" for a TEL URI (no params).
(56e099b) Added a new method
OverSIP::SystemEvents.on_initialize()useful for 3rd party modules configuration by the user.