muverum / sipengine

SIP processing engine that allows processing of messages concurrently based on a pipeline of functions

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SipEngine

image

SipEngine is a go-based take on the traditional SIP proxy (FreeSwitch, OpenSIPS). As opposed to creating a lexed configuration language, this library can be imported and implemented however you choose.

The engine itself takes a slice of SIPStep functions, which have a signature of func (message *Message) error. You simply build your steps, put them into a slice and they will execute against every message that comes in

Exiting

There are scenarios where we want to abandon processing at an earlier stage. If you return a MessageTerminationError, the engine will stop further processing. This does mean, however, that you will still have to put your message onto the egress channel for processing before returning that message.

About

SIP processing engine that allows processing of messages concurrently based on a pipeline of functions

License:MIT License


Languages

Language:Go 100.0%