Bei Anruf Text

m2ic

Neuer User
Mitglied seit
8 Jun 2008
Beiträge
4
Punkte für Reaktionen
0
Punkte
0
Hallo Leute,
ich habe eine 7270 mit Freetz und suche eine Möglichkeit Text auf dem
Telefondisplay anzuzeigen.
Genauer: Wenn ich zB per #96*1* das WLAN einschalte, meldet die Box im
Telefondisplay "Wlan ein".
Ich möchte nun eigene Nummern definieren und damit auf der Box ein
Programm starten und seine Ausgabe auf dem Display sehen.
Beispiel:
ich wähle #97*1*
das startet "echo Hallo Welt"
im Telefon steht "Hallo Welt"

Hat jemand ne Idee wie das gehen könnte?

Welches Programm ist denn für die Verarbeitung der #96*1* etc zuständig?

Ich bin für alle Hinweise dankbar ;-)
 
Programme starten kannst du mit der dtmfbox, aber du wirst keine Rückmeldung im Display sehen.

Den Teil, denn du da ansprichst, das ist ein Teil der avm-Firmware und ich glaube nicht dass Freetz da groß was machen kann, lasse mich aber gerne eines Bessern belehren.
 
Das Programm, das für die Verarbeitung der Tastencodes zuständig ist, heißt "telefon".

Allerdings gibt es dafür von AVM keine Quellen, so daß da vermutlich nicht viel zu machen ist.
 
Schade

da kann man wohl nix machen, aber vielen Dank für eure Antworten.
 
matze1985 schrieb:
Programme starten kannst du mit der dtmfbox, aber du wirst keine Rückmeldung im Display sehen.
Bei Telefonen am S0-Bus könnte man das aber machen. Display-Text wird unterstützt (dtmfbox 0 -text "Hallo Welt").
 
@bodega: Warum nur S0? Hast du es mit dem Text voll selbst realisiert oder greifst du auf irgendeine Schnittstelle von AVM? Denn seit einigen Firmwares zeigen meine analogen Telefone ebenfalls Textnachrichten. Früher hat AVM wahrscheinlich die Nachrichten einfach stumm weitergeleitet, nun werden die einkommende Telefonnummern mit dem AVM-Telefonbuch abgeglichen. Dem Analogtelefon wird dann der Name aus dem Telefonbuch übermittelt.

Ich vermute, dass AVM nachdem sie es im Griff hatten so froh darüber waren Texte darstellen zu können, dass sie gleich diese "telnet an" und sonstige Messages da mitimplementiert hatten.

Die Frage ziehlt nämlich in Richtung Rückwärtssuche. Denn wenn man die Messages wirklich beliebig generieren kann, steht eigentlich nichts im Wege dem callmonitor so eine Aktion zu verpassen.

Edit: Noch eine weiterführende Frage: Kann man eigentlich dtmfbox als SMS-Zentrale benutzen? Also sprich, anstatt die Meldungen zu den Apparaten zu schicken sie dann von den Apparaten in Empfang zu nehmen. Wenn sowas ginge, könnte man ebenfalls eine Reihe der Verwendungen dafür finden. Denn SMS-Versand ist das leidige Thema bei VOIP-Telefonie. Somit könnte man diese Lücke überbrücken. Und für SMS-Versand über Internet gibt es genügend Gateways und Möglichkeiten.


MfG
 
Zuletzt bearbeitet:
Hallo Hermann,

S0 deswegen, da ich Display-Messages an eine bestehende Verbindung sende. Eigentlich ist es selbst gemacht aber dennoch von AVM, da ich ja auf die CAPI-Schnittstelle zurück greife.

Bei den Texten auf dem Telefon gibt es zwei unterschiedliche Varianten:

1. Display-Messages, welche nach meiner Kenntnis nur bei ISDN funktionieren. Diese kann man jederzeit an eine Verbindung senden und werden auf dem Telefon für einen bestimmten Zeitraum angezeigt (das kommt auf das Telefon an). Selbst dann, wenn man das Telefon abhebt, ohne gewählt zu haben.

2. Per CLIP/CNIP, welches bei ISDN und Analog funktioniert.
Dabei kann der Name nur beim Rufaufbau mitgegeben werden. Dieser wird am Telefon angezeigt, falls unterstützt.

Beide Methoden setzen aber vorraus, dass die Verbindung vollständig vom Programm übernommen wird, so wie es Beispielsweise der telefon Daemon macht. Wenn man jedoch einen Hook oder eine Lib-Injection schreibt, wäre eine "Manipulation" der bestehenden Texte denkbar. Man wäre aber dann wieder in einer Grauzonen, wegen Reverse-Engineering.

hermann72pb schrieb:
Kann man eigentlich dtmfbox als SMS-Zentrale benutzen? Also sprich, anstatt die Meldungen zu den Apparaten zu schicken sie dann von den Apparaten in Empfang zu nehmen.
Leider nein. Habe mich damit bisher nicht sonderlich beschäftigt. Es wäre schon eine tolle Sache, jedoch wüsste ich spontan keinen Ansatzpunkt.
 
Hallo Marco,

danke für die ausführliche Erklärung. Mit 1. gebe ich dir vollkommend Recht, beim 2. habe ich eine kleine Korrektur: es kann auch während des Gespräches eine Mitteilung übertragen werden, nicht nur zwischen den Klingeltönen, wie es eigentlich für analog definiert ist. Entdeckt hatte ich es beim Anklopfen. Führe ich an einem Analogtelefon ein Gespräch und werde "angeklopft", so erscheint im Display die Nummer des Anrufers, wie man es von Mobiltelefonen gewöhnt ist. Also theoretisch wäre es möglich, dass auch ich "wlan an/aus"-Meldung bekommen werde. Dies könnte ich aber eben mit meiner 7170 irgendwie nicht beobachten.

Zur CAPI-Schnittstelle. Das heißt, man kann per CAPI-Schnittstelle Textmeldungen verschicken? Aber CAPI "bedient" doch auch im gewissen Sinne analoge Ports? Oder ist es nur das externe Analogport?

Zum Ansatzpunkt als SMS-Zentrale. Sowohl für dich mit deinem Arcor als auch für Big-T-treue spielt es vielleicht keine Rolle, weil sie auf bestehende SMS-Zentralen zurückgreifen können. Über den Preis kann man streiten, ist aber erstmal egal. Für die "echten" IP-Telefonierer (entbündelte Anschlusse, "Komplett"-Tarife, etc.) ist es aber ein Problem, weil sie keine SMS-Zentrale nutzen können und damit SMS nicht versenden können.

MfG
 
Früher gab es mal so Internet / Web Services zum versenden von SMS als SMS Gateway... Mit wget sollte man doch sowas hinbekommen...
 
@cando: Das habe ich bereits "hinbekommen". Suche einfach nach sendsms.sh hier im Forum. Ist zwar betamax-spezifisch, man kann es aber auch auf andere Gateways erweitern.
Versenden selbst ist nicht das Problem, wie du erkannt hast. SMS-Zentrale benötigt man, um die Nachrichten vom Telefon aus zu versenden. Die Idee war genau in die Richtung geziehlt: dtmfbox als SMS-Zentrale nimmt die Nachricht vom Telefon entgegen und leitet sie über Internet-SMS-Gateways weiter.

MfG
 
:phone:

Klar, daran hab ich nicht gedacht.

Ich war eher auf den Tripp, Systemnachrichten per SMS zu versenden (z.B. Neue Nachricht im AB oder neues Fax, oder IP per SMS ...)

Ich nutze SMS über Festnetz von den Handsets bisher überhaupt nicht, da das Tippen per PC Tastatur viel comfortabler ist...
 
Neue Nachricht im AB oder neues Fax genau das war meine Motivation, als ich sendsms.sh gemacht hatte. Ich weiß sogar, wie man es verwirklichen kann, hab aber leider keine Zeit es zu realisieren.
IP per SMS wäre bereits jetzt mit ein Paar Zeilen Shell-Skript + sendsms möglich.

Aber lass uns diese Thematik am besten dort diskutieren.

MfG
 
hermann72pb schrieb:
Führe ich an einem Analogtelefon ein Gespräch und werde "angeklopft", so erscheint im Display die Nummer des Anrufers, wie man es von Mobiltelefonen gewöhnt ist. Also theoretisch wäre es möglich, dass auch ich "wlan an/aus"-Meldung bekommen werde. Dies könnte ich aber eben mit meiner 7170 irgendwie nicht beobachten.
Wobei dies auch darauf hindeuten könnte, dass der Name beim Rufaufbau mitgegeben wird. Zwar ist ein B-Kanal belegt, aber es können weiterhin Info-Elemente empfangen werden, wie z.B. das Anklopfen.

Mit einem dtrace könnte man das beobachten. Möchte mich jetzt nicht festlegen:
Code:
dtrace -* -nt1 -nt2 -nt3 -nt4 -nt5 -s

Bei den Kurzwahlen, wie z.B. #96*3* (CapiOverTCP an) konnte ich feststellen, das die Texte mittels Display-Message übertragen werden:
Code:
Controller 3 (SEND)  D3    00:00:03:04
Protocol discriminator Q.931: 08
Call reference (to originator): 01
INFORMATION: 7B
  display: 28 0C 43 41 50 49 6F 54 43 50 20 65 69 6E
    Display: CAPIoTCP ein

hermann72pb schrieb:
Oder ist es nur das externe Analogport?
Genau. Leider nur extern.
 
Text Nachricht auf analogem Telefon / Infoglobe (!) anzeigen

Hallo zusammen,
habe gestern wieder mal meinen InfoGlobe an die Fritzbox gehängt und festgestellt, dass inzwischen Telefonbucheinträge der FritzBox in Textform (gefolgt von der Rufnummer) auf diesem angezeigt werden.
Dies habe ich in leicht abgewandelter Form mal genutzt um eigene "Nachrichten" am InfoGlobe darzustellen - und es funktioniert sogar. Habe im Forum nichts in der Richtung gefunden, deshalb wollte ich das mal den Cracks im Forum als Anregung und ggf. zum Verbessern darstellen.
Das Ganze lässt sich vermutlich mit scripts durchführen, allerdings fehlt mir hier einiges an Wissen (z.B. wo die Bezeichnungen der Telefoniegeräte abgelegt sind.) Von mir getestet wurde folgendes:
1) InfoGlobe hängt an FON2 (GigaSet kann genauso "Nachrichten" anzeigen)
2) Gewünschten Text als Bezeichnung für Telefoniegerät an FON1 eingeben (bis zu 20 Zeichen erlaubt) = "Nachricht"
3) Listener nach Anforderungen definieren, z.B. zum Anzeigen der "Nachricht" bei Anruf von 0171999999 an 97799999:
in:request 0171999999 97799999 dial *2#**2 1 && sleep 5 && hangup 1
[Es erfolgt ein ca. 10 Sekündiger interner Anruf von Fon 1 an Fon 2! Das *2# im Dialstring bewirkt bei mir nichts besonderes, ggf. wäre hier aber was machbar]
4) Nachricht kann auch durch die Funktion "Testanruf" in Freetz angezeigt werden! Vtl. kann auch das Dialscript einzeln aufgerufen werden, also ohne verwendung der Listener...

Wäre toll wenn das jemand verscripten könnte, also hauptsächlich automatisiert die Bezeichnung des Telefoniegerätes temporär zu ändern, die Aktion auszulösen, und wieder zurückzuändern.
Für meine Zwecke - also Nachrichten auf dem InfoGlobe anzuzeigen - würde das schon reichen.

Viel Spass beim Basteln! :)
Würde mich über Feedback freuen!

grrrmml

[[email protected]]
 
Zuletzt bearbeitet:
Viel Spass beim Basteln! :)

Hi,

danke, dass du entsprechendes rausgefunden hast. Aber: Obiger Satz ist irgendwie eine Aufforderung, dies für dich zu erledigen. So zumindest kommt das bei mir an. Du bittest nicht um Hilfe für dich, du erfragst nicht, was du falsch machst, du schmeisst hier allen irgendeinen Brocken vor die Füsse (im Freetz-Unterforum, obwohl das (bisher) nichts mit freetz zu tun hat und erwartest anscheinend, dass sich irgendjemand des Problems annimmt, obwohl er/sie dies gar nicht hat. Find ich irgendwie strange.
Aber nun ja.
 
Hallo Silent Tears,

so war das auf keinen Fall gemeint; ich entschuldige mich dafür wenn das so rübergekommen sein sollte...
Ich hab das ganze gestern abend/nacht ausprobiert, und da ich denke dass es vielleicht einige interessiert, unfertig gepostet. Für meine Zwecke reicht es fast schon so wie es ist...

Nachteil: Für den kurzen Zeitraum sind beide internen Telefone besetzt.
Bestimmt kann man hier aber (als Quell-Gerät) auch einen Pseudo-Teilnehmer oder ähnliches nutzen. Vielleicht weiss ja jemand etwas dazu.

Wenn ich etwas neues rausgefunden habe werde ich es natürlich auch posten :)

gruß
grrrmml

[EDIT]:
Um das belegte analoge Telefon zu vermeiden habe ich einen neuen S0-Teilnehmer angelegt.
Bezeichnung: _Nachricht12345678
Nummer: 51 (zeigt Fritzbox in der WebGUI an)
Der Underscore bewirkt dass der Eintrag in der Liste ganz oben erscheint (Übersichtlicher); auf meinem InfoGlobe wird dieser aber nicht ausgegeben.
(Ebenso wie ä,ö,ü, etc. - und insgesamt nur 18 Stellen)
Da der Infoglobe nach 20 Sekunden wieder in den Datumsmodus zurückschaltet habe ich ein Shellscript mit Schleife geschrieben.
Dieses gibt die Nachricht mehrmals nacheinander aus (30x20Sekunden = 10 Minuten).
Das Script kann bei den Listeners als Aktion verwendet werden:
---message51.sh---
#!/bin/ash
count=1
while [ $count -le 30 ]; do
callaction dial **2 51 && sleep 18 && callaction hangup 51
count=$(($count+1))
done
-------------------
Ausgabe am Infoglobe (hängt an Fon2): Nachricht12345678 **51
Netterweise erscheint das auch nur als ein neuer Anruf in der Anrufliste des Infoglobe, und in der Anrufliste der FritzBox garnicht. :)

Bleibt nur noch das manuelle Eintragen der Bezeichnung in der WebGUI. Durch Fernzugang oder ssh aber kein Problem (ssh Tunnel auf WebGUI).
Des weiteren lassen sich mehrere S0-Teilnehmer [es müssen unterschiedlichen MSN verwendet werden] und somit Nachrichten vordefinieren,
und auf diese Weise ggf. auch nacheinander abspielen...

*habefertig*
 
Zuletzt bearbeitet:
@Silent-Tears: Lass ihn schon ausreden. Die Idee an sich ist nicht schlecht und experimentierfreudig ist er schon. Und die Herausforderung kann man auch annehmen, wenn man sich berufen fühlt oder eben ignorieren ;)
@grrrmml: Interessante Idee. Mach ruhig dadran weiter:
1. Und benutze bitte dabei code-Tags und sonstige hier übliche Formatierungen, sonst lesen sich deine Nachrichten einfach schlecht
2. Versuch dich bitte etwas verständlicher auszudrücken, damit es jeder versteht, der nicht besonders tief drinnen steckt.
3. Die Nachricht von Silent-Tears interpretiere ich so, dass wenn du es selbst nicht in die Hand nimmst, dann macht es wahrscheinlich keiner
Nun zum Thema selbst:
a) Wenn ich es richtig sehe, ist das Anlegen von einem neuen Telefon ein ziemlich großer Akt, welcher sich höchstwahrscheinlich nicht dynamisch realisieren lässt. Man könnte da sicherlich ein Paar "Macros"-Nachrichten als separate ISDN-Pseudo-Telefone anlegen und sich dann damit bedienen, aber man kriegt es nicht hin, den Namen dann dynamisch zu ändern.
b) Andererseits werden die Namen irgendwo alle abgelegt, das hast du schon richtig gemerkt. Ich weiß allerdings nicht, ob die "lokalen" Namen ebenfalls im AVM-Phonebook liegen oder nicht. Die Einträge aus dem Phonebook lassen sich aber auf alle Fälle auf den lokalen Telefonen anzeigen. Aber hier vermute ich eine Hürde, dass du kein Telefonat von einem Eintrag (externe Telefonnummer) aus dem AVM-Phonebook auslösen kannst. Dies könnte man noch ausprobieren.
c) Der richtige Experte für AVM-Phonebook hier ist Andreas Buehmann mit seinem callmonitor. Wenn da Hilfe gefragt ist, sollen wir uns an ihn wenden.

Edit: Ich hatte damit etwas rumgespielt. Die internen Telefoniegeräte tauchen unter /var/flash/phonebook ebenfalls mit ihren Namen auf. Allerdings bewirkt die Änderung im flash abgelegten Telefonbuch erstmal nichts, wenn man es "on-the-fly" macht. Ist auch meiner Meinung nach logisch. Ich würde anstelle von AVM auch nicht immer im flash rumspielen. Fazit: AVM hält irgendwo im RAM eine Kopie des Telefonbuches parat. Wenn wir irgedwie daran kommen könnten, wäre die Sache schon mal erledigt.
Edit2: Aber die Stelle /var/flash/phonebook ist schon richtig für das dauernhafte Speichern der Einträge. Nach dem Reboot der Box wird nun der von mir handisch geänderte Name gezeigt! Es bleibt also tatsächlich nur rauszufinden, wo im RAM die Kopie des Telefonbuches liegt, die AVM bei der Auswertung der Anrufe benutzt.
Und noch eine Info: Es reicht nicht einfach den Eintrag im Telefonbuch handisch anzulegen. Das Pseudotelefon 51 muss schon mit AVM-WebIF-Mitteln korrekt angelegt werden, sonst wird der Name aus dem Telefonbuch (auch nach einem reboot) nicht ausgewertet, obwohl es von dort auch nicht verschwindet. Erst wenn das Telefon mit dem AVM-Assistenten korrekt angelegt wurde, kann man im Telefonbuch seinen Namen wild rumeditieren.

MfG
 
Zuletzt bearbeitet:
@hermann: mir ging es dabei nicht um die Sache an sich, sondern nur darum, dass sein Posting den Eindruck hinterlässt, andere sollten sein Arbeit erledigen. So etwas kan nich partout nicht leiden, wie allgemein bekannt ist ;) Und ich glaube, grml hat das ebenso verstanden. Wenn nicht, sry.

Gegen die Sache an sich habe ich nichts, und wie man sieht, hat er das hervorragend selber hinbekommen zu realisieren, und eben darauf wollte ich hinaus. :)
 
@Andreas Buehmann: Wenn du hier mitliest, kannst du uns bitte verraten, wie man das AVM-Telefonbuch ausliest und am besten noch, wie man dort Einträge verändern könnte? Ich glaube, du hattest dich schon mal mit der Thematik beschäftigt. Stichwort "<? query telcfg:..."
Noch besser wäre es einen direkten Zugriff auf den entsprechenden RAM-Bereich zu bekommen, um an diesem ganzen AVM-Gedöns vorbei den Namen verändern zu können. Es muss ja auch nicht permanent gespeichert werden. Es ist sogar gut so, wenn die Veränderungen nur im RAM vorliegen.
Desweiteren schwebt mir da eine Idee vor, wie man die Anzeige manipulieren könnte und anstatt Telefonbucheinträge da die Ergebnisse der Rückwärtssuche vom callmonitor anzuzeigen. Und zwar:
AVM macht schon ihre Sachen recht monolitisch, ich bin mir aber ziemlich sicher, dass Behandlung der Telefonbuch-Datenbank und die Telefonie an sich von mindestens zwei unterschiedlichen Binaries realisiert ist. Fölglich: Beide Binaries müssen sich mit Daten austauschen. Und genau da könnte man wenigstens theoretisch einen wrapper einsetzen, der dann die Anfrage umleiten würde. Aber das sind nur weitgehende Ideen, die man im Schritt 1 nicht unbedingt realisieren muss.

MfG
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.