Satria (Diskussion | Beiträge) (→Trunk Konfiguration) |
Satria (Diskussion | Beiträge) (→Trunk Konfiguration) |
||
Zeile 13: | Zeile 13: | ||
== Trunk Konfiguration == | == Trunk Konfiguration == | ||
− | + | Die Provider können Daten erwarten, die voneinander leicht abweichen. Als recht universell haben sich diese Werte herausgestellt, hier exemplarisch für toplink-xpress: | |
+ | |||
+ | === Toplink === | ||
+ | Die *Outgoing* Parameter: | ||
+ | |||
+ | ;Trunk Name:toplink | ||
+ | ;PEER Details | ||
+ | :type=peer | ||
+ | :username=<username> | ||
+ | :secret=<password> | ||
+ | :insecure=port,invite | ||
+ | :host=sip.toplink-xpress.de | ||
+ | :fromuser=<username> | ||
+ | :fromdomain=sip.toplink-xpress.de | ||
+ | |||
+ | Die *Incoming*-Parameter: | ||
;USER Context:<leer> | ;USER Context:<leer> | ||
Zeile 20: | Zeile 35: | ||
:<username>:<password>@sip.toplink-xpress.de/<username> | :<username>:<password>@sip.toplink-xpress.de/<username> | ||
:Ausführlicher: [peer?][transport://]user[@domain][:secret[:authuser]]@host[:port][/extension][~expiry] | :Ausführlicher: [peer?][transport://]user[@domain][:secret[:authuser]]@host[:port][/extension][~expiry] | ||
+ | :Alternativ: <username>:<password>@toplink/<username> "toplink" ist der Trunk Name oder auch "Context", der in den Outgoing Parameters definiert wurde. | ||
− | + | === o2 === | |
+ | Funktioniert noch nicht! | ||
− | ;Trunk Name: | + | Die *Outgoing* Parameter: |
+ | |||
+ | ;Trunk Name:alicesip | ||
;PEER Details | ;PEER Details | ||
:type=peer | :type=peer | ||
− | : | + | :username=<Vollständige Nummer ohne +> |
− | |||
− | |||
− | |||
:secret=<password> | :secret=<password> | ||
:insecure=port,invite | :insecure=port,invite | ||
+ | :host=sip.alice-voip.de | ||
+ | :fromuser=<Vollständige Nummer ohne +> | ||
+ | :fromdomain=sip.alice-voip.de | ||
+ | :qualify=no | ||
+ | :qualifyfreq=1800 | ||
+ | :caninvite=no | ||
+ | :canreinvite=no | ||
+ | :context=public | ||
+ | |||
+ | Die *Incoming*-Parameter: | ||
+ | |||
+ | ;USER Context:<leer> | ||
+ | ;USER Details:<leer> | ||
+ | ;Register String | ||
+ | :<username>:<password>:<username>@alicesip/11 | ||
== Inbound Routes == | == Inbound Routes == |
Version vom 25. Januar 2019, 13:37 Uhr
Tipps und Tricks rund um Asterisk (VoIP / Trunk Software), FreePBX (GUI für Asterisk) und Raspbx (Raspberry PI 3 Portierung von FreePBX)
Inhaltsverzeichnis
Generelles Verständnis
Asterisk ist vereinfacht gesagt ein VoIP Client und Server zugleich. Es baut eine Verbindung zum SIP Provider auf, von dem man seine Telefonnummern erhält und stellt gleichzeitig SIP Zugänge für die anzuschließenden Telefone bereit.
Begriffe
- Trunk
- SIP Provider im Internet
- Extension
- Die Nebenstelle oder der Benutzer, der an Asterisk angeschlossen werden soll mit eigener Durchwahl.
- User
- Benutzer, die sich am WebUI anmelden können. Können mit Nebenstellen verknüpft werden.
- Outbound Routes
- Regeln, die beim Wählen einer Nummer durch eine Nebenstelle entscheiden, welcher Trunk verwendet werden soll.
- Inbound Routes
- Regeln, die bei ankommenden Gesprächen entscheiden, auf welche Neben stelle das Gespräch weitergeleitet werden soll, also auch welches Telefon klingeln soll.
- DID / DDI
- Direct Inward Dialing / Direct Dial In. Bezeichnet das Prinzip, dass die gewählte Nummer an die PBX Zentrale übergeben wird, um dort das Routing auf die Endgeräte vornehmen zu können.
Trunk Konfiguration
Die Provider können Daten erwarten, die voneinander leicht abweichen. Als recht universell haben sich diese Werte herausgestellt, hier exemplarisch für toplink-xpress:
Toplink
Die *Outgoing* Parameter:
- Trunk Name
- toplink
- PEER Details
- type=peer
- username=<username>
- secret=<password>
- insecure=port,invite
- host=sip.toplink-xpress.de
- fromuser=<username>
- fromdomain=sip.toplink-xpress.de
Die *Incoming*-Parameter:
- USER Context
- <leer>
- USER Details
- <leer>
- Register String
- <username>:<password>@sip.toplink-xpress.de/<username>
- Ausführlicher: [peer?][transport://]user[@domain][:secret[:authuser]]@host[:port][/extension][~expiry]
- Alternativ: <username>:<password>@toplink/<username> "toplink" ist der Trunk Name oder auch "Context", der in den Outgoing Parameters definiert wurde.
o2
Funktioniert noch nicht!
Die *Outgoing* Parameter:
- Trunk Name
- alicesip
- PEER Details
- type=peer
- username=<Vollständige Nummer ohne +>
- secret=<password>
- insecure=port,invite
- host=sip.alice-voip.de
- fromuser=<Vollständige Nummer ohne +>
- fromdomain=sip.alice-voip.de
- qualify=no
- qualifyfreq=1800
- caninvite=no
- canreinvite=no
- context=public
Die *Incoming*-Parameter:
- USER Context
- <leer>
- USER Details
- <leer>
- Register String
- <username>:<password>:<username>@alicesip/11
Inbound Routes
Diese Regeln leiten die Anrufe an die korrekten Nebenstellen weiter. Es muss für jede extern erreichbare Nummer jeweils eine Inbound Route geben, in der die DID (komplette externe Nummer) gesetzt ist. "Set Destination" bestimmt dann die Nebenstelle, an die der Anruf gehen soll.
Für interne Anrufe muss es eine Inbound Route geben, in der die CID mit der internen Nebenstellennummer gesetzt ist und ebenfalls unter "Set Destination" die gewünschte Nebenstelle.
Outbound Routes
Eine Outbound Route wird anhand der gewählten Nummer aktiviert. Das "Dial Pattern" bestimmt, wie die gewählten Nummern erkannt und ggf. modifiziert werden.
Ein Pattern gilt dann als erfüllt, wenn prefix
und [match pattern]
mit der Nummer übereinstimmen. Danach wird allerdings prefix
von der Nummer
entfernt und (prepend)
vorangestellt.
Default outgoing
So möchte man z.B., dass lokalen Nummern die Ortsvorwahl vorangestellt wird. Lokale Nummern beginnen hier in D. mit einer Zahl größer 1. Dafür steht der Buchstabe N. Gefolgt von beliebigen und beliebig vielen weiteren Nummern. Hierfür steht der Punkt. Daraus ergibt sich bei der Ortsvorwahl 02206 das folgende Pattern:
(+492206) | [N.]
=> Es wird nichts entfernt, aber +492206 vorangestellt. Aus 80105 wird so +49220680105
Aus Nummern, die mit Vorwahlen (also einer 0) beginnen, möchte man das Internationale Format machen. Das ist dann dieses Pattern:
(+49) 0 | [Z.]
=> Greift bei einer beliebigen Nummer, die mit 0 beginnt und mit 1...9 weitergeht, entfernt die 0 und setzt +49 davor. Aus 0220680105 wird so: +49220680105.
Aber auch beim internationalen Format soll unsere Regel greifen. Dafür sorgt dieses Pattern:
() | [+Z.]
=> Greift bei allen international formatierten Nummern und verändert nichts.
Internal
Werden 3-stellige Nummern gewählt, die mit 2 beginnen (110 und 112 müssen ausgehende Nummern sein!), soll das Gespräch intern geroutet werden. Dafür legt man eine eigene Route an, markiert sie als Intra-Company, ohne Trunk und legt das folgende Pattern dort an:
() | [NXX]
=> Greift bei allen 3-stelligen Nummern, die mit einer Zahl größer als 1 beginnen.
Special numbers
Sondernummern sind Notfallnummern, aber auch die Auskunft usw. Diese beginnen mit einer 1, ihnen soll aber nicht die Ortsvorwahl vorangestellt werden. Daher legt man eine neue Route an, markiert sie mit Emergency und legt das folgende Pattern an:
() | [[1].]
=> Greift bei allen beliebig langen Nummern, die mit einer 1 beginnen.
Die Email-Konfiguration kann über die Oberfläche nur vorgenommen werden, wenn man "Sysadmin Pro" erworben hat. Ansonsten muss man das auf der Shell manuell tun:
edit /etc/postfix/main.cf:
relayhost = SMTP server address
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
smtp_generic_maps = hash:/etc/postfix/generic
edit /etc/postfix/sasl_passwd:
relayhost username:password
execute:
postmap hash://etc/postfix/sasl_passwd
edit /etc/postfix/generic:
<source> <real_email_address@real-comain.tld>
...
execute:
postmap /etc/postfix/generic
do a postfix reload:
service postfix restart
Update
Updates über das FreePBX WebUI sollten in der folgenden Reihenfolge vorgenommen werden:
- FreePBX Framework. Danach Apply Config
- Core. Danach Apply Config
- Process Management. Danach Apply Config
- Restliche Module. Danach Apply Config und Neustart.
Tampered Files
Wenn im Dashboard eine Meldung erscheint, die von "tampered files" erzählt, müssen über SSH diese Befehle ausgeführt werden:
amportal chown
amportal a ma refreshsignatures
amportal a reload
Backup directory placeholders
- __AMPWEBROOT__
- /var/www/html
- __ASTETCDIR__
- /etc/asterisk
- __AMPSBIN__
- /usr/sbin
- __ASTVARLIBDIR__
- /var/lib/asterisk
- __ASTSPOOLDIR__
- /var/spool/asterisk
Quellen und Tutorials
https://rogermayer.info/asterisk-konfiguration-fur-toplink-xpress-sip-trunk
https://www.voip-info.org/asterisk-config-sipconf
https://wiki.freepbx.org/display/FPG/PBX+GUI+Home