[HowTo] Wählhilfe per Hardwaretaste starten <4€ ohne Firmwaremod

koyaanisqatsi

IPPF-Urgestein
Mitglied seit
24 Jan 2013
Beiträge
12,833
Punkte für Reaktionen
374
Punkte
83
No, Joe ;)
Internettelefonie kommt nach der ( erfolgreichen ) Registrierung.
...welche Rufnummer befindet sich unter den "Anschlusseinstellungen" als "Ausgehende" und wer ist dessen Registrar ?

Irgendwas stimmt da nicht, eine interne Nummer sollte nicht rausgerufen werden.
 
Zuletzt bearbeitet:

Theo Tintensich

Aktives Mitglied
Mitglied seit
10 Mrz 2008
Beiträge
1,791
Punkte für Reaktionen
49
Punkte
48

Garagenlöter

Neuer User
Mitglied seit
20 Dez 2017
Beiträge
89
Punkte für Reaktionen
4
Punkte
8
Richtig, das sind interne Nummern.

deswegen wundert es mich ja, das da im ereigniss was von sipgate steht.
 

Garagenlöter

Neuer User
Mitglied seit
20 Dez 2017
Beiträge
89
Punkte für Reaktionen
4
Punkte
8
Regristrar von der **625 ist die Fritzbox und von Sipgate eben Sipagate.
Auf der** 625 liegt eine FF App.
Auf der **612 liegt ein C5.
der Sipgate Anschluss ist ein kostenfreier prepayd anschluss der nicht rausgeht, weil nichts eingezahlt ist.
Deswegen nur ankommend.

Raustelefoniert wird über ISDN
 
Zuletzt bearbeitet:

Garagenlöter

Neuer User
Mitglied seit
20 Dez 2017
Beiträge
89
Punkte für Reaktionen
4
Punkte
8
Bin ein Stückchen weiter.
ich hatte die **612 bzw. die **625 über über die Kurzwahl **707 gemacht.
da kam dieses sipgate ereignis.
ich hab nun in der software mal satt der **707 die **612 eingegeben.

und...... funzt. C5 klingelt.

juhu
 

Garagenlöter

Neuer User
Mitglied seit
20 Dez 2017
Beiträge
89
Punkte für Reaktionen
4
Punkte
8
Nochwas festgestellt:

bei einem Eintrag in der Kurzwahl mit einer Nebenstelle, z.B. **612, wird diese komische SIP Geschichte ausgeführt, warum? weiss ich nicht.
trag ich dort nen Rundruf ein, gibt es kein Problem. also **9, **50, oder **50#**625, dann funktioniert es über Kurzwahl.

an der Stelle, einen Dank an Andre....
 

Garagenlöter

Neuer User
Mitglied seit
20 Dez 2017
Beiträge
89
Punkte für Reaktionen
4
Punkte
8
Ich hab nun aus verschiedenen Code-Schnipseln mal was zusammengebaut, was auch genau so funktioniert.
Ohne WiFi Multi, die wird für den WLan-Klingeltaster nicht benötigt .

IDE 1.8.5, ESP8266 Package 2.4.1,

Code:
[code]



#include <Arduino.h>
#include <ESP8266WiFi.h>        // Include the Wi-Fi library
#include <ESP8266HTTPClient.h>
#include <tr064.h>
#define TASTER D3

//WLAN Netzwerk Name (SSID) und WLAN-Password
const char* ssid = "FRITZ!Box xxxx";
const char* password = "yyyyyyyyyyyyyyyyyy";

//Anmeldung aus dem Heimnetz mit Benutzername und Passwort
const char* fuser = "aaaaaaa";
const char* fpass = "bbbbbbbbbbb";

//IP Adresse fuer den Router:
const char* IP = "192.168.178.1";

//Port of the API of your router. This should be 49000 for all TR-064 devices.
const int PORT = 49000;

TR064 connection(PORT, IP, fuser, fpass);

void setup() {
   Serial.begin(115200);         // Start the Serial communication to send messages to the computer
  delay(10);
   Serial.println('\n');
 
  WiFi.begin(ssid, password);             // Connect to the network
   Serial.print("Connecting to ");
   Serial.print(ssid); Serial.println(" ...");

  int i = 0;
  while (WiFi.status() != WL_CONNECTED) { // Wait for the Wi-Fi to connect
    delay(1000);
    Serial.print(++i); Serial.print(' ');
  }

   Serial.println('\n');
   Serial.println("WLAN Verbindung steht!");
   Serial.print("IP address:\t");
   Serial.println(WiFi.localIP());         // Send the IP address of the ESP8266 to the computer
  delay(10000);
}
 
void loop() {
int taste = digitalRead(TASTER);
if (digitalRead(TASTER)== LOW)
{
   Serial.println();
   Serial.println("Taste gedrueckt");
  callWahlhilfe();
   Serial.println("Initialize TR-064 connection");
  delay(10000);
}
else
{
    Serial.println();
    Serial.println("Taste nicht gedrueckt");
  delay(50); 
  }
 
}

void callWahlhilfe() {
    
     connection.init();

  String params[][2] = {{"NewX_AVM-DE_PhoneNumber", "**777"}};
  String req[][2] = {{}};

  connection.action("urn:dslforum-org:service:X_VoIP:1", "X_AVM-DE_DialNumber", params, 1, req, 0);
}
[/CODE]
 
Zuletzt bearbeitet:

Garagenlöter

Neuer User
Mitglied seit
20 Dez 2017
Beiträge
89
Punkte für Reaktionen
4
Punkte
8
@Andre:

könnte man nicht auch auf diese Art nen SIP Call auslösen?
Also nur die Telefone klingeln lassen?
Was ich meine ist, das der NodeMCU sich als SIP Telefon einbucht.
Hintergrund ist, das bei der Wählhilfe immer das eingestellte Telefon im Display angezeigt wird.
Gut, könnte da nun "Türklingel" rein schreiben, aber gibt dann halt nur diese Anwendung.

Ich würd ja gern unsere WaMa im Keller über die "Fertig LED" anzapfen und damit nen Call auslösen.
Von der Hardware seite ist das keine Thema.
Nur, die Lösung über die Wählhilfe geht nur für eine Anwendung.
Für nen SIP Call hätte ich 4, evtl. 5 unbenutzt wenn ich das alte Smarfone rausschmeisse.
Das hätte den Vorteil, das ich dann jeweils was anderes reinschreiben kann, was dann auch im Display erscheint.

EDIT:
Was ich auch vorstellen könnte, das der Eintrag, wie das a/b Telefon 2 heisst, im Vorfeld über das protokoll geändert wird.
 
Zuletzt bearbeitet:

Garagenlöter

Neuer User
Mitglied seit
20 Dez 2017
Beiträge
89
Punkte für Reaktionen
4
Punkte
8
Ich hab nun in den Weiten des WWW's einen Sketch gefunden, der genau das macht.
Arbeitet zwar nicht mit der TR-064 Schnittstelle, aber egal.
https://www.mikrocontroller.net/topic/444994?goto=new#new

Das schöne an dem Sketch ist, das man soviele SIP Telefone einbinden kann, wie die Fritzbox zur Verfügung stellt.

Hier mal ein Ausschnitt aus dem Sketch:

Code:
const char* ssid        = "ssid";
const char* password    = "geheim";
Code:
// sip params
const char *sipip       = "192.168.8.1";
int         sipport     = 5060;
const char *sipuser     = "fbox-627";
const char *sippasswd   = "geheim";
Code:
// dial params
const char *sipdialnr   = "**777";
const char *sipdialtext = "Tuerklingel";
Code:
// network params
const char *ip          = "192.168.8.69";
const char *gw          = "192.168.8.1";
const char *mask        = "255.255.255.0";
const char *dns         = "192.168.8.1";
Hat aber insgesamt rund 400 Zeilen.

Ich muss nun noch ne Taster einbauen, damit man gezielt den SIPcall auslösen kann.

Dann hab ich genau das, was ich gesucht habe.
Eine Ereignismeldung, die auf den den Telefonen angezeigt wird.

// edit by stoney: [CODE] TAGs [/CODE] gesetzt.
Durch BBCodes wird ein Post meist flüssiger lesbar.

https://www.ip-phone-forum.de/help/bb-codes
 
Zuletzt bearbeitet von einem Moderator:

Daniel87

Neuer User
Mitglied seit
22 Jul 2018
Beiträge
1
Punkte für Reaktionen
0
Punkte
1
Hallo Andre,

erst einmal vielen Dank, ich suche schon etwas länger nach so einer Lösung.
Mein NodeMCU Lua Amica Module V2 ESP8266 ESP-12E ist heute gekommen, habe eigentlich alles hinbekommen wie du es beschrieben hast, allerdings klingelt das Telefon nicht.

Anmeldung per W-Lan erfolgt (sehe es zumindest mal unter Geräteübersicht) sowie unter Ereignisse sehe ich
22.07.18
15:21:35
Anmeldung einer App des Benutzers daniel von IP-Adresse 192.168.178.75.
(Diese IP: ESP-4CBB73 sollte das WLAN Modul des NodeMCU sein)

Soweit sollte alles passen, nur verstehe ich nicht wieso das angeschlossene Telefon nicht klingelt.

Telefon an Port FON 1 mit der Internen Rufnummer **1
diese habe ich auch in deinem Code in **1 abgeändert.

Hast du vielleicht eine Idee was ich falsch gemacht habe?

EDIT: Hat sich erledigt, die Wahlhilfe in der FritzBox war nicht aktiv :rolleyes:
jetzt funktioniert es, hab die Wahlhilfe auf das FON 2 gelegt Sprechanlage benannt, jetzt wenn ich den Taster drücke klingelt es und es steht da Sprechanlage.

Genau das was ich wollte, vielen DANK ;)
 
Zuletzt bearbeitet:

princenewton007

Mitglied
Mitglied seit
23 Aug 2008
Beiträge
322
Punkte für Reaktionen
0
Punkte
16
Ich ergänze mal die gestesten Code-Schnipsel um das Abschalten des Gast-WLANs. Wichtig bei der WLAN-Schalterei ist, ob die Box 5 GHz hat oder nicht. Meine hat es nicht, daher WLANConfiguration:2 sonst WLANConfiguration:3 .

AVM schrieb:
If the device additionally supports a second physical Access Point e.g. FRITZ!Box 7390
support 2.4 GHz and 5 GHz, one more service is listed (service #2).
If the device supports a logical Access Point for guests, one more service is listed (service
#2 or #3).
Gastzugang einschalten:
Code:
connection.init();
String params[][2] = {{"NewEnable", "1"}};
String req[][2] = {{}};
connection.action("urn:dslforum-org:service:WLANConfiguration:2","SetEnable", params, 1, req, 0);
Gastzugang ausschalten
Code:
connection.init();
String params[][2] = {{"NewEnable", "0"}};
String req[][2] = {{}};
connection.action("urn:dslforum-org:service:WLANConfiguration:2","SetEnable", params, 1, req, 0);
Beste Grüße
 

klonki

Neuer User
Mitglied seit
4 Jan 2015
Beiträge
47
Punkte für Reaktionen
0
Punkte
6
Bei mir hat es lange nicht funktioniert weil ich bei der Wählhilfe eine falsche Einstellung hatte ( Wählhilfe eingestellt auf das Telefon, das klingeln sollte - dabei ist die Wählhilfe der Absender ).

Das andere Problem war daß die TR64-SOAP-Library komplett streikt, wenn die Serial nicht auf 115200 Baud initialisiert wurde. Was ich nicht verstehe da in der Library alles so aussieht als ob Serial optional wäre.

Ich war schon fast dabei daß Projekt zu knicken und stattdessen einfach ein altes DECT-Mobilteil mit Kurzwahl-Knopf umzufunktionieren (Knopf am Telefon auslösen und damit Rundruf machen, keine eigene Software mehr) aber jetzt hat es ja doch noch geklappt.

Meine Klingel ist so richtig alt die spielt keine Melodie sondern ganz klassisch mechanisch - Hammer - Gong. Diesen Umstand habe ich mir zunutze gemacht und auf Optokopplung verzichtet. Der Gong brät also dem Arduino eine über und der Arduino funkt das der Fritzbox weiter und irgendwann klingelt es dann überall im Haus. Softwaretechnisch ändert sich dadurch nix.

Für die Ideengebung, Arduinosketches und sonstigen Erfahrungen hier im Forum möchte ich euch ganz herzlich Danken!
 

Maze007

Neuer User
Mitglied seit
31 Okt 2008
Beiträge
32
Punkte für Reaktionen
0
Punkte
6
Guten Tag.
Hat einer das schon erfolgreich nachbauen können?
Ich möchte bei einem Klingeltaster ein Schließerkontakt abgreifen und somit der Fritzbox sagen sie soll das Fritzfon klingel lassen und von einer IP Kamera das Bild anzeigen lassen.
Was für ein NodeMCU braucht man da genau?
Ich habe mir zwar ein bei Aliexpress bestellt aber das ist schon lange her und er kommt nicht.
Vielleicht war es auch der falsche und bevor ich jetzt noch mal bestelle wollte ich mal nachfragen.
 

Julian1307

Neuer User
Mitglied seit
8 Apr 2016
Beiträge
7
Punkte für Reaktionen
0
Punkte
1
[Edit Novize: Überflüssiges Fullquote des Beitrags direkt darüber gelöscht - siehe Forumsregeln]

Ich schließe mich mal der Frage an.
Wurde für den Code im 1. Beitrag der Wemos D1 verwendet? Muss es der originale sein? Es gibt ja inzwischen viele Nachbauten.
Wenn ich einen einfachen Taster habe, brauche ich ja nichts weiter an Hardware?
 
Zuletzt bearbeitet von einem Moderator:

Maze007

Neuer User
Mitglied seit
31 Okt 2008
Beiträge
32
Punkte für Reaktionen
0
Punkte
6
[Edit Novize: Überflüssiges Fullquote des Beitrags direkt darüber gelöscht - siehe Forumsregeln]

Ich schließe mich mal der Frage an.
Wurde für den Code im 1. Beitrag der Wemos D1 verwendet? Muss es der originale sein? Es gibt ja inzwischen viele Nachbauten.
Wenn ich einen einfachen Taster habe, brauche ich ja nichts weiter an Hardware?
Ich habe mir zwei bestellt aber mit welchen muss ich was machen.
2020-10-25 17_07_59-My AliExpress _ Manage Orders.jpg ++ 20201025_165635.jpg ++ 20201025_165654.jpg

Bilder gemäß Boardregeln geschrumpft by stoney
 
Zuletzt bearbeitet von einem Moderator:

HarryHase

Mitglied
Mitglied seit
16 Feb 2006
Beiträge
612
Punkte für Reaktionen
13
Punkte
18
Wichtig ist das es ein esp8266 mit mehr als 1MB ist, da es noch keiner versucht hat auf einen 1mb zu flashen ... Der Rest ist doch egal gibt ja hunderte Modelle ...
 

Julian1307

Neuer User
Mitglied seit
8 Apr 2016
Beiträge
7
Punkte für Reaktionen
0
Punkte
1
Wichtig ist das es ein esp8266 mit mehr als 1MB ist, da es noch keiner versucht hat auf einen 1mb zu flashen ... Der Rest ist doch egal gibt ja hunderte Modelle ...
Ich wollte nur wissen, ob ich sonst noch etwas benötige.
Es existieren im Internet einige vergleichbare Anleitungen, bei denen man noch einen Optokoppler, Widerstände usw. benötigt.
Ich gehe aber davon aus, dass diese Anleitungen für normale Klingelanlagen mit Spannung usw. ausgelegt sind.
In meinem Fall besteht die Klingel aus einem reinen Taster, welcher bisher an einer Agfeo Telefonanlage angeschlossen. Die Telefonanlage soll außer Betrieb genommen werden.
 

q12345678

Neuer User
Mitglied seit
26 Jan 2020
Beiträge
48
Punkte für Reaktionen
3
Punkte
8
Es reicht aus, wenn keine anderen Potentiale an dem Schließertaster anliegen, den programierten Eingang des Wemos auf Masse zu schalten. Zu beachten ist die Leitungslänge und die Leitungsart, möglichst geschirmt und verdrillt, um keine Fehlauslösung zu haben. Mann arbeitet mit max. 3,3Volt Gleichspannung.