== Running OsmoSIPConnectoer

The OsmoSIPConnector executable (`osmo-sip-connector`) offers the following
command-line arguments:

=== SYNOPSIS

*osmo-sip-connector* [-h] [-c 'CONFIGFILE']

=== OPTIONS

*-h, --help*::
	Print a short help message about the supported options
*-c, --config-file 'CONFIGFILE'*::
	Specify the file and path name of the configuration file to be
	used. If none is specified, use `osmo-sip-connector.cfg` in the
	current working directory.

=== Colocation with OsmoMSC

Since the MNCC interface used to communicate between OsmoMSC and
OsmoSIPConnector is a UNIX domain socket both processes must run on the same
machine or have a shared directory that supports sharing UNIX domain sockets.

=== Multiple instances

Running multiple instances of `osmo-sip-connector` on the same computer is
possible if all interfaces (VTY, CTRL) are separated using the appropriate
configuration options. The IP based interfaces are binding to local host by
default. In order to separate the processes, the user has to bind those
services to specific but different IP addresses and/or ports.

The VTY and the Control interface can be bound to IP addresses from the
loopback address range, for example:

----
line vty
 bind 127.0.0.2
ctrl
 bind 127.0.0.2
----

For the SIP client a different IP/port combination also needs to be used, for
example:

----
sip
 local 0.0.0.0 5061
----

The socket path for the MNCC interface also needs to change, which can be done
with the following configuration snippet:

----
mncc
 socket-path /tmp/msc2_mncc
----

=== DTMF signaling

In VoIP based telephony networks DTMF (Dual-tone multi-frequency signaling) can
be signaled through multiple methods. Common methods are in-band, RFC2833 and
sip-info messages.

Osmo-sip-connector is using sip-info messages to signal DTMF tones. When a DTMF
tone is signaled at the MNCC socket interface, osmo-sip-connector will generate
a matching sip-info message to forward the DTMF signal to the PBX. Depending on
the PBX software reconfiguring the DTMF signaling method to sip-info may be
necessary.

While sending DTMF tones through the MNCC interface to a SIP leg, the current
implementation of osmo-sip-connector does not support sending DTMF tones in the
opposite direction. Any attempts to send DTMF tones to an MNCC leg will be
confirmed with a status 405 "Method not allowed".

The reason for this limitation is that in mobile networks, depending on the
signaling direction, the signaling of DTMF tones is implemented differently.
A mobile originated DTMF tone is signaled through out of band messages,
which arrive at osmo-sip-connector on as MNCC DTMF START/STOP messages. Those
messages can be directly translated to sip-info messages. However, in the
other direction (mobile terminated), an in-band signaling method is used. This
means that osmo-sip-connector would have to translate an incoming DTMF sip-info
message into an audio sample that then would have to be injected into the
voice stream. Currently this scheme is not implemented in osmo-sip-connector.