kamailio
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| kamailio [11.08.2023 05:30] – [Kamailio SIP Server] thooge | kamailio [18.12.2023 16:23] (aktuell) – [Kamailio SIP Server] thooge | ||
|---|---|---|---|
| Zeile 17: | Zeile 17: | ||
| listen=udp: | listen=udp: | ||
| listen=tcp: | listen=tcp: | ||
| + | </ | ||
| + | |||
| + | <file conf / | ||
| + | SIP_DOMAIN=mydomain.com | ||
| + | DBENGINE=MYSQL | ||
| + | DBHOST=localhost | ||
| + | DBNAME=kamailio | ||
| + | DBRWUSER=" | ||
| + | DBRWPW=" | ||
| + | DBROUSER=" | ||
| + | DBROPW=" | ||
| </ | </ | ||
| Zeile 24: | Zeile 35: | ||
| </ | </ | ||
| + | Datenbank erstellen mit | ||
| + | kamdbctl create | ||
| + | |||
| + | ===== Logging ===== | ||
| + | |||
| + | Ergänzung in '' | ||
| + | < | ||
| + | # Kamailio | ||
| + | local0.* -/ | ||
| + | </ | ||
| + | |||
| + | <file conf / | ||
| + | / | ||
| + | daily | ||
| + | missingok | ||
| + | rotate 14 | ||
| + | compress | ||
| + | delaycompress | ||
| + | create 0644 root adm | ||
| + | postrotate | ||
| + | / | ||
| + | endscript | ||
| + | } | ||
| + | </ | ||
| ===== TLS ===== | ===== TLS ===== | ||
| Zeile 45: | Zeile 80: | ||
| Erstellen aus den Quellen: | Erstellen aus den Quellen: | ||
| < | < | ||
| + | apt-get install libssl-dev libsrtp2-dev | ||
| cd / | cd / | ||
| git clone -b master https:// | git clone -b master https:// | ||
| git -C rtpproxy submodule update --init --recursive | git -C rtpproxy submodule update --init --recursive | ||
| cd rtpproxy | cd rtpproxy | ||
| + | git checkout v3.0.1 | ||
| ./configure | ./configure | ||
| make clean all | make clean all | ||
| Zeile 54: | Zeile 91: | ||
| </ | </ | ||
| - | Die Kommunikation mit Kamailio erfolgt über einen Unix-Socket | + | ++++ Init-Script | |
| + | <file bash / | ||
| + | #! /bin/sh | ||
| + | ### BEGIN INIT INFO | ||
| + | # Provides: | ||
| + | # Required-Start: | ||
| + | # Required-Stop: | ||
| + | # Default-Start: | ||
| + | # Default-Stop: | ||
| + | # Short-Description: | ||
| + | # Description: | ||
| + | ### END INIT INFO | ||
| + | |||
| + | PATH=/ | ||
| + | NAME=rtpproxy | ||
| + | DESC=" | ||
| + | DAEMON=/ | ||
| + | USER=$NAME | ||
| + | GROUP=$USER | ||
| + | PIDFILE="/ | ||
| + | PIDFILE_DIR=`dirname $PIDFILE` | ||
| + | CONTROL_SOCK=" | ||
| + | |||
| + | test -x $DAEMON || exit 0 | ||
| + | umask 002 | ||
| + | |||
| + | . / | ||
| + | |||
| + | # Include defaults if available | ||
| + | if [ -f / | ||
| + | . / | ||
| + | fi | ||
| + | |||
| + | DAEMON_OPTS=" | ||
| + | |||
| + | if [ ! -d " | ||
| + | mkdir " | ||
| + | chown $USER: | ||
| + | fi | ||
| + | |||
| + | set -e | ||
| + | |||
| + | case " | ||
| + | start) | ||
| + | echo -n " | ||
| + | start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_OPTS | ||
| + | echo " | ||
| + | ;; | ||
| + | stop) | ||
| + | echo -n " | ||
| + | start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON | ||
| + | echo " | ||
| + | ;; | ||
| + | status) | ||
| + | echo -n " | ||
| + | if [ ! -e " | ||
| + | echo "$NAME is NOT running. No PID-File." | ||
| + | exit 7 | ||
| + | fi | ||
| + | PID=$(cat $PIDFILE) | ||
| + | kill -0 $PID | ||
| + | rc=$? | ||
| + | # Check exit code | ||
| + | if [ " | ||
| + | then | ||
| + | echo "$NAME is NOT running." | ||
| + | exit 7 | ||
| + | else | ||
| + | echo "$NAME is running with PID: $PID" | ||
| + | fi | ||
| + | ;; | ||
| + | restart|force-reload) | ||
| + | echo -n " | ||
| + | start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON | ||
| + | sleep 1 | ||
| + | start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_OPTS | ||
| + | echo " | ||
| + | ;; | ||
| + | *) | ||
| + | N=/ | ||
| + | echo " | ||
| + | exit 1 | ||
| + | ;; | ||
| + | esac | ||
| + | |||
| + | exit 0 | ||
| + | </ | ||
| + | ++++ | ||
| + | |||
| + | Einstellungen für das Init-Skript | ||
| <file conf / | <file conf / | ||
| USER=kamailio | USER=kamailio | ||
| GROUP=kamailio | GROUP=kamailio | ||
| CONTROL_SOCK=" | CONTROL_SOCK=" | ||
| + | EXTRA_OPTS=" | ||
| </ | </ | ||
| Die Kommunikation lassen wir über einen Unix-Socket stattfinden und nicht | Die Kommunikation lassen wir über einen Unix-Socket stattfinden und nicht | ||
| - | wie im Standard über UDP. Dafür ist noch eine Anpassung erforderlich: | + | wie im Standard über UDP. Dafür ist noch eine Anpassung |
| <file conf / | <file conf / | ||
| #!define WITH_NAT | #!define WITH_NAT | ||
| Zeile 76: | Zeile 203: | ||
| Anzeige der angemeldeten Geräte (kamailio muß laufen) | Anzeige der angemeldeten Geräte (kamailio muß laufen) | ||
| kamctl ul show | kamctl ul show | ||
| + | kamctl online | ||
| Nummern (Subscriber) anlegen | Nummern (Subscriber) anlegen | ||
| Zeile 82: | Zeile 210: | ||
| Nummer wieder entfernen | Nummer wieder entfernen | ||
| kamctl | kamctl | ||
| + | |||
| + | ===== VoIP-Clients ===== | ||
| + | |||
| + | Selbstverständliche kann jedes IP-Telefon verwendet werden. | ||
| + | Hersteller sind z.B. Grandstream und Snom. | ||
| + | |||
| + | Softphones auf dem PC: | ||
| + | * Twikle | ||
| + | * Linphone, anscheinend kein vernänftiges Logging | ||
| + | |||
| + | Apps auf dem Smartphone: | ||
| + | * ??? | ||
| + | |||
kamailio.1691731827.txt.gz · Zuletzt geändert: von thooge
