; Die Datenbank speichert eine neue Rufumleitung auf dem ; Feld (CF/Rufnummer des Teilnehmers). Der Anrufer bekommt das ; Ziel der Rufumleitung mit SayDigits() vorgelesen. ; exten => _*5X.,1,Answer() exten => _*5X.,n,Set(DB(CF/${CALLERID(num)})=${EXTEN:2}) exten => _*5X.,n,Playback(call-forwarding) exten => _*5X.,n,SayDigits(${EXTEN:2}) exten => _*5X.,n,Hangup() ; Loescht einen evt. vorhandenen Eintrag in der Datenbank. ; exten => *5,1,Answer() exten => *5,n,NoOp(${DB_DELETE(CF/${CALLERID(num)})}) exten => *5,n,Playback(call-fwd-cancelled) exten => *5,n,Hangup() ; Prueft bei einem Anruf, ob fuer die Zielrufnummer ein Ein- ; trag in der Datenbank vorhanden ist. Falls ja, wird ueber ; einen Local Channel an diesen Eintrag weitervermittelt. ; Dadurch lassen sich auch mehrere Rufumleitungen in Reihe ; schalten. Falls keine Rufumleitung gesetzt ist, startet ; normal ein Dial(). Ist der Teilnehmer besetzt oder geht ; nach 120 Sekunden nicht ran, greift der Voicemail-Aufruf. ; exten => _X.,1,GotoIf($[${DB_EXISTS(CF/${EXTEN})} = 1]?CF:normal) exten => _X.,n(CF),Dial(local/${DB_RESULT}@meine-telefone) exten => _X.,n(normal),Dial(SIP/${EXTEN},120) exten => _X.,n,VoiceMail(${EXTEN},u)