Skip to content

Releases: emiago/sipgo

v0.13.1

03 Oct 08:19
Compare
Choose a tag to compare

What's Changed

  • Use default random source in sip.RandStringBytesMask by @a12n in #45

New Contributors

  • @a12n made their first contribution in #45

Full Changelog: v0.13.0...v0.13.1

v0.13.0

20 Sep 19:17
Compare
Choose a tag to compare

What's Changed

  • PARSER STREAM FOR TCP is major add. Now TCP supports large message parsing
  • fix: Log only received bytes instead of complete buffer by @oystedal in #42
  • Add fuzzer for SIP parser by @oystedal in #41
  • More proper VIA header handling by transport. That is setting sent-by port is not fixed
  • In case client forces host and port, connections will be created now with that local addr. This also affects Via header. Mostly
    client should avoid setting port, but in some cases like reuse of connection it is needed
  • Connections are now long lived. It is done by controling IdleConnection. More in comments 74b8706
  • Many other fixes..

New Contributors

Full Changelog: v0.12.1...v0.13.0

v0.12.1

21 Aug 22:45
Compare
Choose a tag to compare
  • Via sent-by setting fixed
  • Improve dns resolve and creating connection (Performance improvement)
  • Connection pool races and closing
  • SIP Status code constants added
  • And lot of small fixes

v0.12.0

14 Aug 12:06
Compare
Choose a tag to compare
  • Added WSS support
  • fixed ListenAndServe context handling
  • some refactoring and better transport testing
  • Websocket sets protocols ["sip"] (used similar approach from ctxSIP) but can be modified globaly via
    transport.WebSocketProtocols

v0.11.1

11 Aug 23:11
Compare
Choose a tag to compare

Full Changelog: v0.11.0...v0.11.1

v0.11.0

24 Jul 06:49
Compare
Choose a tag to compare
  • Added SIP BYE request
  • Client can define host and port (Setting IP on UA may get removed, but keeping for now)
  • Fix concurent map when starting server on different ports
    Full Changelog: v0.10.1...v0.11.0

v0.10.1

17 Jun 22:22
Compare
Choose a tag to compare

Working more on client.
Adding some fixes when auto populating headers on transaction request.

  • Add via only if does not exists
  • add from tag
    Fix branch random generation

v0.10.0

13 Jun 22:11
Compare
Choose a tag to compare
  • This is huge refactor on transport layer to remove client handle dependency on connection setup.
    Now creating solo clients will not require running server listeners.
  • By default transports will be created once on transport layer setup
  • UDP transport will create new connection (connected) if there is no UDP PacketConn (listener) created
  • There is still problem reusing UDP connection for forwarding request out of subnet
  • Bug with bad index on comma Via header parsing is fixed
  • comma seperated values parsing are fixed for Route and Record-Route header
  • Documentaion is updated

Full Changelog: v0.9.0...v0.10.0

v0.9.0

03 Jun 18:42
Compare
Choose a tag to compare

What's Changed

#17 Exported unhandled handler for customization. Using srv.OnNoRoute(handler RequestHandler) all no routed SIP trafic can be handled custom, and detect some wrong behavior
#20 Headers like Via will not be anymore encoded neither parsed as csv value. All values will be formated as new headers in case SIP headers are received like this. There was no performance impact, actually it could improve further logic.

Full Changelog: v0.8.0...v0.9.0

v0.8.0

20 Mar 17:44
Compare
Choose a tag to compare

This release introduces some API changes:

  • sip.Message interface is reduced to support only that is used by SIP. This interface has no use from outside but it is used internally
  • terminating transaction in unhandled handler made issue. Now this is refactored #12
  • <-tx.Error() channel is now replaced with func tx.Err() . Similar like go context you can check last Error of transaction after it was terminated. This also removed blocking behavior in client handle #15
  • sip.NewHeader(name, value) is now added as better way to create generic type header and sip.GenericHeader is now hidden to avoid usage
  • sip Parser interface is redesigned to use more exact ParseSIP func. Parser is refactored and added docs #18
  • parser.Parser can now be customized with custom headers parsing. Parser now accepts optional parameter. Check parser package docs for more. DefaultHeadersParser is added as default header parsing used by SIP package. This now allows custom header parsing. #18

Full Changelog: v0.7.2...v0.8.0