Releases

Version 4.4.45
  • migrate CI from travis to github actions
  • log and discard unparseable messages rather than crashing
Version 4.4.44
  • feature request #99: support for generating dialoginfo events (RFC 4235). The srf.createXXX methods now optionally can take an opts.dialogStateEmitter which must be an EventEmitter. If provided, the stateChange event will be emitted as dialogs are created and change state.
class StateEmitter extends Emitter {
  constructor() {
    super();
  }

  this.on('stateChange', (evt) => {  
    const {id, localTag, remoteTag, aor, direction, state, callId} = evt;
  }
}

..

const emitter = new StateEmitter();
srf.invite((req, res) => {
  srf.createB2BUA(req, res, uri, {
    dialogStateEmitter: emitter,
    ..
  }
});