Eine Rückrufapplikation für asterisk

TobiasUnsleber

Neuer User
Mitglied seit
22 Jul 2005
Beiträge
67
Punkte für Reaktionen
0
Punkte
0
Hallo alle zusammen,

wir haben für uns eine kleine Rückruf Applikation für Asterisk geschrieben. Sie ist als freie Software zum herunterladen verfügbar hier:

http://www.focus-voip.de/services_download.html

Rückmeldungen sind willkommen.

Viele Grüsse,
Tobias Unsleber
 
Zuletzt bearbeitet:

udosw

Aktives Mitglied
Mitglied seit
20 Mrz 2004
Beiträge
1,114
Punkte für Reaktionen
0
Punkte
36
Ich hab' mir das gerade mal angeguckt, leider reichen meine Perl-Kenntnisse nicht aus, um alles zu verstehen.

Leider geht aus der README nicht hervor, ob der Rückruf nur für interne (SIP-)Telefone geht, oder ob auch ein Rückruf ins PSTN implementiert wurde.

Wenn ja, würde mich interessieren, wie ihr feststellt, ob ein Teilnehmer nicht mehr besetzt ist, ohne dort ein Klingeln auszulösen.

Udo
 

betateilchen

Grandstream-Guru
Mitglied seit
30 Jun 2004
Beiträge
12,882
Punkte für Reaktionen
0
Punkte
0
udosw schrieb:
Ich hab' mir das gerade mal angeguckt, leider reichen meine Perl-Kenntnisse nicht aus, um alles zu verstehen.
Ich hab mir das auch die Tage schonmal angeguckt. Für Otto Normalverbrauche oder Lieschen Müller ist es nahezu unmöglich, die Applikation in ihrem derzeitigen Zustand erfolgreich zu installieren.

Bezüglich Deiner Frage nach PSTN habe ich das so verstanden, daß die ganze Sache ohnehin nur innerhalb des eigenen Servers funktioniert, da die ganze Auswertung immer auf die hint-messages zurückgreift. Und es ist mir nicht bekannt, daß derzeit irgendein Provider (egal ob VoIP oder Festnetz) diese Nachrichten quer durch das Internet routen würde.
 

TobiasUnsleber

Neuer User
Mitglied seit
22 Jul 2005
Beiträge
67
Punkte für Reaktionen
0
Punkte
0
Hallo,

das Programm ist nur für interne Rückrufe gedacht.

> Ich hab mir das auch die Tage schonmal angeguckt. Für Otto Normalverbraucher oder Lieschen Müller
> ist es nahezu unmöglich,

@Betateilchen:
Ich gehe mal davon aus du meinst damit die Installation der Perl-Module? Was konkret findest Du schwierig an der Installation? Das README etwas zu erweitern sollte ja möglich sein... Andererseits zielt die Applikation nicht auf Lieschen Müller ab, denn ich denke in kleinen Büroumgebungen braucht man sich eher weniger. Höchstens wenn diese räumlich
weit verteilt sind.

> Bezüglich Deiner Frage nach PSTN habe ich das so verstanden, daß die ganze Sache ohnehin nur innerhalb des eigenen Servers funktioniert

Mit res_esel kann man den Rückruf auch für mehrere Server realisieren, das habe ich allerdings noch nicht umgesetzt.

Rückruf zu Tln-Nummer im PSTN:

Das ist nach meinem Wissen in keinem Asterisk-Kanaltreiber umgesetzt. Von der Methode her soll das so funktionieren das man auf eine ID eines ISDN-Calls
einen Rückruf absetzt, dieser Rückruf wird dann vom Netzbetreiber erst auf die eigene Nebenstelle und dann auf die ferne Seite ausgeführt und wird so ungefähr nach einer Stunde gelöscht. Ich denke das Feature ist in den meisten Telefonanlagen abgeschaltet, das dies die Möglichkeit bietet Nebenstellen über das PSTN zu überwachen.

Grüsse,
Tobias
 
Zuletzt bearbeitet:

Thomas007

Aktives Mitglied
Mitglied seit
18 Sep 2005
Beiträge
1,455
Punkte für Reaktionen
0
Punkte
0
Ich finde Lösung zu aufwendig, insbesondere weil ein externer Daemon verwendet wird.

Besser in der h extension prüfen ob eine Nebenstelle wieder erreichbar ist und dann einen Anruf auf die jetzt wieder erreichbare Nebenstelle anbieten.


Bei externen Nummern hilft nur solange anrufen bis einer abnimmt.
Diese angesprochene ISDN Funktion ist sowieso fast unbrauchbar und steht meines Wissens auch bei den gängigen ISDN Treibern nicht zur Verfügung.
 

TobiasUnsleber

Neuer User
Mitglied seit
22 Jul 2005
Beiträge
67
Punkte für Reaktionen
0
Punkte
0
Hi Thomas,

> Besser in der h extension prüfen ob eine Nebenstelle wieder erreichbar ist und dann einen Anruf auf die
> jetzt wieder erreichbare Nebenstelle anbieten.

Wie würdest Du das tun?

---

Die Entscheidung das als Dienst umzusetzen begründet sich dadurch, das wir echt wissen möchten ob ein Teilnehmer da ist. Wenn das Telefon angemeldet ist, ist das nicht ausreichend um zu wissen ob er da ist. Wenn jemand gerade telefoniert hat, ist die Wahrscheinlichkeit hoch das er am Platz ist wenn er nach dem auflegen angerufen wird. Wenn er nicht abnimmt oder ablehnt, dann möchte er entweder nicht gestört werden, oder ist nicht da. Dieser Status wird über das Manager-interface beobachtet. Anrufe die als Schuß ins Blaue ausgeführt werden ziehen Aufmerksamkeit der Nutzer auf sich. Es wäre schön wenn ein Rückruf auch jedesmal zum Erfolg führt. Wenn Rückrufe ausgeührt werden und derjenige dann doch nicht erreicht wird, ist das nach meiner Ansicht eine unnötige Beleastung des Benutzers.

Ich habe diese Art des Rückrufes bei der Siemens HiPath schätzen gelernt, wobei ich sagen muss, das die das noch etwas besser umsetzen :) als dieser Dienst.

Gruß,
Tobias
 

Thomas007

Aktives Mitglied
Mitglied seit
18 Sep 2005
Beiträge
1,455
Punkte für Reaktionen
0
Punkte
0
Ein Teilnehmer ist (wieder) da wenn ein Channel beendet wird den der Teilnehmer aufgebaut hat oder wenn ein Gespräch zu dem Teilnehmer mit DIALSTATUS ANSWER beendet wird. (etwaige Weiterleitungen/Voicebox musst Du natürlich filtern)

Dann wird der Rückruf dem anfragenden Teilnehmer angeboten. Nimmt der nicht ab hat er einen verpassten Anruf auf seinem Display und sieht das der gesuchte Teilnehmer zwischenzeitlich wieder da war.
Nur wenn er abnimmt wird beim gesuchten Teilnehmer angerufen.

Rückrufwunsch wird eingebucht mit Neuwahl von *31ZXX, geht also auch wenn der angerufene Teilnehmer nicht abgenommen hat.

Bei Snom Geräten könntest Du noch mit F-tasten und URIs arbeiten, nutze ich aber zur zeit nicht.
 

udosw

Aktives Mitglied
Mitglied seit
20 Mrz 2004
Beiträge
1,114
Punkte für Reaktionen
0
Punkte
36
TobiasUnsleber schrieb:
Rückruf zu Tln-Nummer im PSTN:

Das ist nach meinem Wissen in keinem Asterisk-Kanaltreiber umgesetzt. Von der Methode her soll das so funktionieren das man auf eine ID eines ISDN-Calls
einen Rückruf absetzt, dieser Rückruf wird dann vom Netzbetreiber erst auf die eigene Nebenstelle und dann auf die ferne Seite ausgeführt und wird so ungefähr nach einer Stunde gelöscht. Ich denke das Feature ist in den meisten Telefonanlagen abgeschaltet, das dies die Möglichkeit bietet Nebenstellen über das PSTN zu überwachen.
Das ist aber genau das Feature, welches ich für einen Kunden realisieren soll. Es ist das schöne "Rückruf bei besetzt" (CCBS), was von der Telebim (und anderen Festnetz-Providern) ja mitlerweile nicht nur für ISDN sondern auch für analoge Anschlüsse angeboten wird. Ich habe nicht den Eindruck, dass das so wenig genutzt wird. Ich habe einige positive Meinungen darüber gelesen und es ist im Büro-Alltag ja auch sehr praktisch.

Vor allem werben viele VoIP-Anlagen-Verkäufer mit diesem Feature! (Ohne allerdings zu sagen, ob sie es auch für das PSTN anbieten.) Ebenso taucht es bei manchen ISDN-Kartenherstellern als Feature auf. Und ich glaube genau da müsste man ansetzen, denn nur über den D-Kanal kann man IMHO feststellen, ob der gewünschte (ursprünglich besetzte) Anschluss wieder frei ist.

Für jeden Hinweis dankbar ...

Udo
 

Thomas007

Aktives Mitglied
Mitglied seit
18 Sep 2005
Beiträge
1,455
Punkte für Reaktionen
0
Punkte
0
udosw schrieb:
Das ist aber genau das Feature, welches ich für einen Kunden realisieren soll. Es ist das schöne "Rückruf bei besetzt" (CCBS)
Du rufst einfach so oft an bis es kein BUSY mehr gibt. Das kostet 0 EUR und funktioniert zuverlässig.

Die Vermittlungsstelle kann nicht über den D-Kanal zuverlässig einen Anlagenanschluss und die angeschlossene PBX ausforschen ob eine bestimme Durchwahlnummer BUSY zurückgeben würde.

Das mag bei ptmp Anschlüssen gehen aber wohl auch nur dann wenn alter ISDN Kram angeschlossen ist.
 

udosw

Aktives Mitglied
Mitglied seit
20 Mrz 2004
Beiträge
1,114
Punkte für Reaktionen
0
Punkte
36
Thomas007 schrieb:
Du rufst einfach so oft an bis es kein BUSY mehr gibt. Das kostet 0 EUR und funktioniert zuverlässig.
So "einfach" ist es eben nicht. Natürlich kann ich das BUSY prüfen, aber damit ist es nicht getan:

Wenn ich kein BUSY mehr bekomme, klingelt unweigerlich das Telefon des Angerufenen, und zwar bevor der Anrufer einen Rückruf erhält, um dann eben auch am Telefon zu sein. Nein, richtiges CCBS geht anders:

1.: Feststellen, ob gerufene Seite frei ist, ohne dort zu 'klingeln'.
2.: Rufende Seite anrufen.
3.: Erst wenn rufende Seite abhebt, die 'richtige' Verbindung zur gerufenen Seite aufbauen.
Thomas007 schrieb:
Die Vermittlungsstelle kann nicht über den D-Kanal zuverlässig einen Anlagenanschluss und die angeschlossene PBX ausforschen ob eine bestimme Durchwahlnummer BUSY zurückgeben würde.
Hmm, weiß ich nicht. Wenn ich einen 'normalen' Anruf auslöse, wird nicht dann im Falle von BUSY genau das gemacht? Zum Verbindungsaufbau wird doch der D-Kanal genutzt, oder? Wo sind denn hier die ISDN-Experten?

Udo
 

Thomas007

Aktives Mitglied
Mitglied seit
18 Sep 2005
Beiträge
1,455
Punkte für Reaktionen
0
Punkte
0
udosw schrieb:
Wenn ich kein BUSY mehr bekomme, klingelt unweigerlich das Telefon des Angerufenen, und zwar bevor der Anrufer einen Rückruf erhält, um dann eben auch am Telefon zu sein.
Richtig, wenn Du das nicht als RetryDial implementieren willst kannst Du dem Angerufenen nur eine Ansage vorspielen während Du versucht Deinen Anrufer zu erreichen.

udosw schrieb:
Hmm, weiß ich nicht. Wenn ich einen 'normalen' Anruf auslöse, wird nicht dann im Falle von BUSY genau das gemacht?
BUSY ist ein Ergebnis eines Anrufs und kein Status einer POTS Rufnummer der zuverlässig von Dritten abgefragt werden kann. Wenn die angerufene PBX das nicht explizit unterstützt kann es nicht funktionieren.

In 2007 sollen in D ca. 850.000 IP Telefone verkauft werden. Es ist nicht davon auszugehen das die grundsätzlich kompatibel zur alten ISDN Technik angeschlossen werden, so dass alte ISDN Funktionen weiter funktionieren.
 

TobiasUnsleber

Neuer User
Mitglied seit
22 Jul 2005
Beiträge
67
Punkte für Reaktionen
0
Punkte
0
Hab' gerade noch mal in die chan-capi HEAD reingeschaut:

CHANGES:
...
- support CCBS (call completion on busy subscriber)
...
 

TobiasUnsleber

Neuer User
Mitglied seit
22 Jul 2005
Beiträge
67
Punkte für Reaktionen
0
Punkte
0
Thomas007:
> Ein Teilnehmer ist (wieder) da wenn ein Channel beendet wird den der Teilnehmer aufgebaut hat oder
> wenn ein Gespräch zu dem Teilnehmer mit DIALSTATUS ANSWER beendet wird.

Das ist ja richtig genial und simpel.

Auf der anderen Seite möchte ich die Sachen möglichst aus dem Wahlplan draussen haben, da in einer ausgewachsenen Programmiersprache leichter zu programmieren it.. Mein AEL Wahlplan ist jetzt schon knapp 1000 Zeilen lang. Bei diesem Ansatz über die Hints muss man sich im restlichen Wahlplan darum überhaupt nicht mehr um den Rückruf kümmern.
 

Thomas007

Aktives Mitglied
Mitglied seit
18 Sep 2005
Beiträge
1,455
Punkte für Reaktionen
0
Punkte
0
Die Umsetzung ist nicht ganz trivial aber möglich. Denk auch dran das auf einem Telefon mehr als eine Nebenstelle auflaufen kann und das der Benutzer wieder erreichbar ist wenn er eine der Nebenstellen beantwortet oder darüber telefoniert.

Ich habe für die Snom Telefone wegen der DND Taste noch eine Sonderlocke drin. Benutzung der Taste wird über SIP-URI dem Server mitgeteilt.
Kein Rückrufangebot wenn der gesuchte Teilnehmer DND aktiviert hat.
 

TobiasUnsleber

Neuer User
Mitglied seit
22 Jul 2005
Beiträge
67
Punkte für Reaktionen
0
Punkte
0
...eigentlich will man auch noch eine Benachrichtigung wenn der Hörer abgehoben hat, was mit der Snom-Action-Url: "Hörer abgehoben" auch möglich ist...
 

birnerseff

Neuer User
Mitglied seit
18 Nov 2006
Beiträge
149
Punkte für Reaktionen
0
Punkte
16
Rückruf im PSTN: bei einem Einzelgerät weiss die Vermittlung, wenn das Gespräch beendet ist.
Bei einem Mehrgeräteanschluss kann die Vermutung noch zutreffen.
Bei einer PBX? eher nicht...
Ich versuche den Kollegen auf seiner Durchwahl zu erreichen, er spricht aber gerade mit einem Anrufer, der über die Zentralnummer reingekommen ist. Wann sollte der Rückruf stattfinden?

birnerseff
 

3CX PBX - GRATIS
Linux / Win / Cloud

Statistik des Forums

Themen
232,898
Beiträge
2,027,890
Mitglieder
351,030
Neuestes Mitglied
Testomat3000