pritter-UC-SoHo-example-config

Created
Was maintained by pritter
An example configuration of a VoIP-PBX for Small Offices / Home Offices
git clone

pritter-UC-SoHo-example-config

CC BY 4.0

An example configuration of a VoIP-PBX for Small Offices / Home Offices

Goals

This configuration is itended for Small Offices / Home Offices. The main goal is to provide PBX-functionality for a single location with a limited amount of features.

It follows the Real-Time Communications Quick Start Guide by Daniel Pocock with the following changes:

  • No federation. Since we will be using the PSTN, there is no need to federate at this point.
  • No encryption. We will assume a LAN-environment with no malicious employees.
  • PSTN-Access

Architecture Overview

Architecture Overview

AVM FritzBox 7490

As you can see in the picture, we will use the router to perform auxilliary tasks for us. The router will

  • work as an SBC (Session Border Controller) to terminate the SIP-Trunk provided by our ISP or work as an IP-TDM-Gateway
  • act as DHCP-Server
  • act as DNS-Server. Since it has limited functionality, we will not be able to provide DNS-SRV Records or change the domain name.

You could implement these on separate boxes, but since this is a SoHo-installation, we will just use what we have.

Resiprocate Repro

Installation

This should be something like

dnf install resiprocate-repro
systemctl enable repro
systemctl start repro

Please follow the RTC Quick Start Guide if you need further information on how to install Repro.

Freeswitch

Installation

This should be something like

dnf install freeswitch freeswitch-application-conference freeswitch-application-db freeswitch-application-snom freeswitch-application-valet_parking freeswitch-application-voicemail freeswitch-application-voicemail-ivr freeswitch-codec-opus freeswitch-codec-passthru-amrwb freeswitch-codec-passthru-g723_1 freeswitch-codec-passthru-g729
systemctl enable freeswitch
systemctl start freeswitch

Why use a SIP-proxy and a PBX, wouldn't a PBX suffice?

This topic has been discussed in the RTC Quickstart Guide.

I want to add another argument:

Let's say you finished your dialplan, implemented all features and your users are happy. Now you want to add a phone with no features whatsover (e.g. in a conference room, short-term apprentice). Since it does not have to be reachable from the another phone or the PSTN, why even bother assigning an extension? You can just add SIP-credentials in the SIP-proxy, register the phone and voilĂ : You have a working phone for outgoing calls without even touching the PBX.

Ressources

Real-Time Communications Quick Start Guide by Daniel Pocock