DSMOD="1" www_script="http://fritz.v3v.de/dtmfbox/dtmfbox-0.3.9-standalone/rc.dtmfbox-setup" package=dtmfbox # dsmod or mini_httpd? if [ "$DSMOD" = "0" ]; then DSMOD_LINK="" USERSCRIPT_LINK="" SCRIPT=dtmfbox.cgi else DSMOD_LINK="


  • DS-MOD
  • " USERSCRIPT_LINK="
  • Benutzerdefiniertes Skript

  • " SCRIPT="" fi # create urldecode.sed if [ ! -f /var/tmp/urldecode.sec ]; then cat > /var/tmp/urldecode.sed << 'ENDURLDECODE' s/+/ /g s/%09/ /g s/%0A/\n/g s/%0D//g s/%20/ /g s/%21/!/g s/%22/"/g s/%23/#/g s/%24/\$/g s/%25/%/g s/%26/\&/g s/%27/'/g s/%28/(/g s/%29/)/g s/%2A/\*/g s/%2B/+/g s/%2C/,/g s/%2D/-/g s/%2E/\./g s/%2F/\//g s/%3A/:/g s/%3B/;/g s/%3C//g s/%3F/?/g s/%40/@/g s/%5B/\[/g s/%5C/\\/g s/%5D/\]/g s/%5E/\^/g s/%5F/_/g s/%60/`/g s/%7B/{/g s/%7C/|/g s/%7D/}/g s/%7E/~/g s/%91/`/g s/%92/´/g ENDURLDECODE fi # libmodcgi.sh let _cgi_width=730 if [ "$cgi_width" -gt 0 ]; then let _cgi_width="$cgi_width"; fi let _cgi_total_width="$_cgi_width+40" cgi_begin() { cat << EOF Content-Type: text/html $1 EOF # menu change javascript cat << EOF
    $1
    $DTMFBOX_VERSION
    EOF } cgi_end() { cat << EOF
    EOF } sec_begin() { cat << EOF
    $1 EOF } sec_end() { cat << EOF
    EOF } # libmodfrm.sh frm_begin() { if [ "$SCRIPT_NAME" = "$1_save.cgi" ] && [ "$DSMOD" = "0" ]; then cat << EOF
    EOF else if [ "$DSMOD" = "0" ]; then cat << EOF EOF else cat << EOF
    EOF fi fi } frm_end() { if [ "$DSMOD" = "0" ]; then cat << EOF
    EOF else cat << EOF
    EOF fi } # ------------------------------------------------ # Help # ------------------------------------------------ show_help() { if [ "$HELP" = "status" ]; then cat << EOF
    Status

    Der aktuelle Dienststatus der dtmfbox.

    Wird der Dienst als 'geloggt' gestartet ("Starten (Log)"), so kann über die Schaltfläche "Log ansehen" die Logdatei ausgegeben werden. Das Loglevel lässt sich von 0 (nichts) bis 5 (alles) einstellen.

  • Startmodus

    dtmfbox automatisch starten oder manuell.
    Der manuelle Start erfolgt über das Webinterface, bzw. über die Konsole:

    /etc/init.d/rc.dtmfbox [start] [stop] [restart]
    
  • EOF fi if [ "$HELP" = "accounts" ]; then cat << EOF
    Accounts

    Es können max. 10 Accounts hinterlegt werden.

    EOF fi if [ "$HELP" = "am" ]; then cat << EOF
    Anrufbeantworter

    EOF fi if [ "$HELP" = "dtmf" ]; then cat << EOF
    DTMF-Commands

    EOF fi if [ "$HELP" = "cbct" ]; then cat << EOF
    Callback & Callthrough

    EOF fi if [ "$HELP" = "voip_capi" ]; then cat << EOF
    VoIP- & CAPI-Einstellungen

  • VoIP verwenden

    VoIP (SIP) an-/ausschalten

  • UDP Server Port

    Der Port, welcher dem SIP Server zugewiesen werden soll (SIP-Messages).

  • RTP/RTCP Start Port

    Start-Port und Anzahl der RTP/RTCP Verbindungen (Sprachübertragung).
    Für jede VoIP-Verbindung werden jeweils zwei Ports benötigt.

  • Registrar-Modus

    Die dtmfbox als Registrar verwenden (SIP-Clients können sich an die dtmfbox anmelden).
    Die Anzahl der max. Clients die sich anmelden dürfen, werden rechts daneben eingetragen.

  • Realm

    IP-Adresse der FB, bzw. Hostname

  • Interface (optional)

    Wenn das falsche Interface gefunden wird, sollte hier die IP der Box eingetragen werden (bzw. dyndns-Adresse).

  • STUN Server

    STUN Server (bei NAT Problemen)

  • ICE verwenden

    Soll ICE (Interactive Connectivity Establishment) verwendet werden?
    Es muss ein STUN Server angegeben werden, um ICE zu verwenden!

  • Re-Register Intervall

    Zeitintervall, wann eine Neuregistrierung beim SIP-Provider durchgeführt werden soll.

  • Keep-Alive Intervall

    In welchen Abständen sollen Dummy-Messages an den Server geschickt werden, um die Verbindung aufrecht zu erhalten.

  • VAD (silence detector)

    Sprachpausen Erkennung an-/ausschalten

  • CAPI-Controller

    Der eingehende, ausgehende und interne Controller der CAPI-Schnittstelle (ISDN/Analog).

  • Early B3

    Early B3 an-/ausschalten
    Es wird ein Wählton beim Verbindungsaufbau mit einem anderen Gesprächspartner abgespielt.
    Da dies ein Fake-Ringtone ist, bekommt man hier (noch) keine richtigen Providerinfos (z.B. "Kein Anschluss unter dieser Nummer" oder Besetzt-Zeichen)

  • EOF fi } # ------------------------------------------------ cgi_begin "$package" "pkg_$package" frm_begin "$package"