This adds a sip profile parameter parse-all-invite-headers that when
set parses all headers from an INVITE into channel variables. The
headers are converted to lowercase, underscores are replaced with
dashes, and the result is prefixed with sip_i_. Headers than exist
more than once are set as arrays.
FS-6075 --resolve
Thanks-to: Peter Olsson <peter@olssononline.se>
When an endpoint registers to us we internally mark the expiration as
some seconds longer than the actual registration. Previously this
value was fixed at 60 seconds.
Some people need this value to be shorter so they can meet their SLA
by taking a different action when a device doesn't re-register when
expected.
This commit adds a SIP profile parameter sip-expires-late-margin which
allows setting the margin value we apply here.
FS-6101 --resolve
Thanks-to: Emmanuel Schmidbauer <e.schmidbauer@gmail.com>
If this is set to true (default false) we assume the storage-dir is
shared, organized by realm/domain, with uses other than voicemail, so
we adopt a directory structure of:
<storage_dir>/<realm>/voicemail/<id>
This replaces the semantics of the storage-dir parameter without the
deprecation notice. The behavior of storage-dir never should have
been deprecated, though it was probably correct to deprecate the name
itself.
Rather than having both vm-storage-dir and vm-domain-storage-dir it
might be nice if the config system could just notice at what level it
was defined and do the right thing. Indeed, this is why I'd left
things as-is for so long.
But as Master Foo famously said, "which one will reach the other side
of the river: the one who dreams of a raft, or the one that hitchhikes
to the next bridge?"
FS-5329
Some OSes like linux provide a mechanism for sending TCP keepalive
pings. Sofia provides its own mechanism for doing this in userspace.
We shouldn't conflate these two mechanisms.
FS-6104