Files
scrypted/plugins/sip/src/compositeSipMessageHandler.ts
slyoldfox e8ee21e567 btcino 0.0.7 / sip 0.0.6 (#644)
* * Fix an issues in SIP.js where the ACK and BYE replies didn't go to the correct uri

* * Implemented outgoing SIP MESSAGE sending
* Adding voice mail check
* Adding a lock for a bticino doorbell

* Cleanup dependencies, code in sip, bticino plugins

* Cleanup dependencies, code in sip, bticino plugins

* Clear stale devices from our map and clear the voicemail check

* Do not require register() for a SIP call

* Narrow down the event matching to deletes of devices

* Use releaseDevice to clean up stale entries

* Fix uuid version

* Attempt to make two way audio work

* Attempt to make two way audio work - fine tuning

* Enable incoming doorbell events

* SipCall was never a "sip call" but more like a manager
SipSession was more the "sip call"

* * Rename sip registered session to persistent sip manager
* Allow handling of call pickup in homekit (hopefully!)

* * use the consoles from the camera object

* * use the consoles from the camera object

* * Fix the retry timer

* * Added webhook url

* * parse record route correctly

* * Add gruu and use a custom fork of sip.js which supports keepAlive SIP clients (and dropped Websocket)
* use cross-env in package.json

* Added webhook urls for faster handling of events

* Added videoclips

* plugins/sip 0.0.6

* plugins/bticino 0.0.7
2023-03-20 07:19:08 -07:00

15 lines
441 B
TypeScript

import { SipRequestHandler, SipRequest } from "./sip-manager";
export class CompositeSipMessageHandler extends SipRequestHandler {
private handlers : SipRequestHandler[] = []
constructor() {
super()
}
handle(request: SipRequest) {
this.handlers.forEach( (handler) => handler.handle( request ) )
}
add( handler : SipRequestHandler ) {
this.handlers.push( handler )
return this
}
}