KI-AGENT: Telekom Telefonie an Asterisk anbinden
This commit is contained in:
@@ -13,3 +13,5 @@ exten => 1002,1,Dial(PJSIP/1002,30)
|
||||
exten => 600,1,Answer()
|
||||
same => n,Echo()
|
||||
same => n,Hangup()
|
||||
|
||||
#tryinclude generated/extensions.telekom.conf
|
||||
|
||||
@@ -65,3 +65,5 @@ type=aor
|
||||
max_contacts=5
|
||||
remove_existing=yes
|
||||
support_path=yes
|
||||
|
||||
#tryinclude generated/pjsip.telekom.conf
|
||||
|
||||
114
telephony/render-asterisk-config.sh
Executable file
114
telephony/render-asterisk-config.sh
Executable file
@@ -0,0 +1,114 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
GENERATED_DIR="${ASTERISK_GENERATED_DIR:-/etc/asterisk/generated}"
|
||||
mkdir -p "$GENERATED_DIR"
|
||||
|
||||
PJSIP_FILE="$GENERATED_DIR/pjsip.telekom.conf"
|
||||
EXTENSIONS_FILE="$GENERATED_DIR/extensions.telekom.conf"
|
||||
|
||||
enabled="${TELEPHONY_TELEKOM_ENABLED:-false}"
|
||||
|
||||
if [ "$enabled" != "true" ] && [ "$enabled" != "1" ] && [ "$enabled" != "yes" ]; then
|
||||
cat > "$PJSIP_FILE" <<'EOF'
|
||||
; Telekom-Anbindung ist deaktiviert.
|
||||
EOF
|
||||
cat > "$EXTENSIONS_FILE" <<'EOF'
|
||||
; Telekom-Anbindung ist deaktiviert.
|
||||
EOF
|
||||
exit 0
|
||||
fi
|
||||
|
||||
registrar="${TELEPHONY_TELEKOM_REGISTRAR:-tel.t-online.de}"
|
||||
sip_user="${TELEPHONY_TELEKOM_SIP_USER:-}"
|
||||
auth_user="${TELEPHONY_TELEKOM_AUTH_USER:-$sip_user}"
|
||||
password="${TELEPHONY_TELEKOM_PASSWORD:-}"
|
||||
caller_id="${TELEPHONY_TELEKOM_CALLER_ID:-$sip_user}"
|
||||
inbound_extension="${TELEPHONY_TELEKOM_INBOUND_EXTENSION:-1001}"
|
||||
outbound_prefix="${TELEPHONY_TELEKOM_OUTBOUND_PREFIX:-0}"
|
||||
|
||||
if [ -z "$sip_user" ] || [ -z "$password" ]; then
|
||||
cat > "$PJSIP_FILE" <<'EOF'
|
||||
; Telekom-Anbindung ist aktiviert, aber TELEPHONY_TELEKOM_SIP_USER oder TELEPHONY_TELEKOM_PASSWORD fehlt.
|
||||
EOF
|
||||
cat > "$EXTENSIONS_FILE" <<'EOF'
|
||||
; Telekom-Anbindung ist aktiviert, aber nicht vollständig konfiguriert.
|
||||
EOF
|
||||
echo "FEDEO Telefonie: Telekom-Anbindung unvollständig, Trunk wird nicht erzeugt." >&2
|
||||
exit 0
|
||||
fi
|
||||
|
||||
cat > "$PJSIP_FILE" <<EOF
|
||||
; Automatisch aus Umgebungsvariablen erzeugt. Nicht in Git einchecken.
|
||||
|
||||
[telekom-auth]
|
||||
type=auth
|
||||
auth_type=userpass
|
||||
username=$auth_user
|
||||
password=$password
|
||||
|
||||
[telekom-aor]
|
||||
type=aor
|
||||
contact=sip:$registrar
|
||||
qualify_frequency=60
|
||||
|
||||
[telekom]
|
||||
type=endpoint
|
||||
transport=transport-udp
|
||||
context=from-telekom
|
||||
disallow=all
|
||||
allow=alaw,ulaw
|
||||
aors=telekom-aor
|
||||
outbound_auth=telekom-auth
|
||||
from_user=$sip_user
|
||||
from_domain=$registrar
|
||||
callerid=Telekom <$caller_id>
|
||||
direct_media=no
|
||||
force_rport=yes
|
||||
rewrite_contact=yes
|
||||
rtp_symmetric=yes
|
||||
timers=no
|
||||
|
||||
[telekom-registration]
|
||||
type=registration
|
||||
transport=transport-udp
|
||||
outbound_auth=telekom-auth
|
||||
server_uri=sip:$registrar
|
||||
client_uri=sip:$sip_user@$registrar
|
||||
contact_user=$sip_user
|
||||
retry_interval=60
|
||||
expiration=480
|
||||
line=yes
|
||||
endpoint=telekom
|
||||
|
||||
[telekom-identify]
|
||||
type=identify
|
||||
endpoint=telekom
|
||||
match=$registrar
|
||||
EOF
|
||||
|
||||
cat > "$EXTENSIONS_FILE" <<EOF
|
||||
; Automatisch aus Umgebungsvariablen erzeugt. Nicht in Git einchecken.
|
||||
|
||||
[fedeo-local]
|
||||
exten => _${outbound_prefix}X.,1,NoOp(FEDEO ausgehend über Telekom: \${EXTEN})
|
||||
same => n,Set(CALLERID(num)=$caller_id)
|
||||
same => n,Dial(PJSIP/\${EXTEN}@telekom,60)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => _+X.,1,NoOp(FEDEO ausgehend über Telekom: \${EXTEN})
|
||||
same => n,Set(CALLERID(num)=$caller_id)
|
||||
same => n,Dial(PJSIP/\${EXTEN}@telekom,60)
|
||||
same => n,Hangup()
|
||||
|
||||
[from-telekom]
|
||||
exten => s,1,NoOp(FEDEO eingehend über Telekom)
|
||||
same => n,Dial(PJSIP/$inbound_extension,30)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => _X!,1,NoOp(FEDEO eingehend über Telekom: \${EXTEN})
|
||||
same => n,Dial(PJSIP/$inbound_extension,30)
|
||||
same => n,Hangup()
|
||||
EOF
|
||||
|
||||
echo "FEDEO Telefonie: Telekom-Trunk für $sip_user@$registrar erzeugt."
|
||||
Reference in New Issue
Block a user