Forum: Mikrocontroller und Digitale Elektronik SIP-Client um Schaltvorgang auszulösen?


von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Ich suche ein Projekt mit ESP32/8266 unter Arduino, das es ermöglicht, 
bei eingehendem SIP-Anruf einen Schaltvorgang auszulösen (z.B. Tor 
öffnen).

Es gibt ein kommerzielles Produkt "SIP Ring Switch" für die Hutschiene, 
kostet aber umd die 500,- :-(

Das Web ist voll von Projekten, die genau anders herum agieren: Auf 
Knopfdruck wird ein SIP-Call ausgelöst, um z.B. auf einem Telefon ein 
Türklingeln zu signalisieren.

Kennt jemand so ein SIP-Switch-Projekt mit ESP32 oder 8266? Danke!

von N. M. (mani)


Lesenswert?

Beitrag "Sipdial per ESP8266 an Fritzbox"

Hab's nicht gelesen. Könnte in die richtige Richtung gehen

von Peter (wokinloksar)


Lesenswert?

Hatte mal was ähnliches vor, kam aber über initiale Recherche nicht 
hinaus.

Aus meinen Aufzeichnungen:
- https://www.linphone.org/
- https://github.com/ManUnit/sip-call
- https://github.com/rousir/ArduinoVoip/blob/main/examples/voip/voip.ino
- https://github.com/RetepRelleum/uPyVoip
- https://github.com/OLIMEX/sip_phone_example

Für Deinen Zweck dürfte ein rudimentäres SIP ohne Sound reichen, da Du 
ja nur die eingehende Signalisierung erfassen möchtest.

von Michi S. (mista_s)


Lesenswert?

Frank E. schrieb:
> bei eingehendem SIP-Anruf einen Schaltvorgang auszulösen

Wenns nicht unbedingt mit ESPxxx sein muß, dann könnte man ein 
beliebiges SIP-Phone nehmen und das Klingelsignal anzapfen, um den 
Schaltvorgang auszulösen.

Bonus: Wenn das Tor dann offen zurückmeldet, kann man mit simuliertem 
Abheben/Auflegen diesen Status sogar direkt zurückmelden.

von Uwe D. (monkye)


Lesenswert?

Leider kann ich Dir nicht direkt weiterhelfen, denn ich habe auch lange 
nach so einer „kleinen“ Lösung gesucht. Es gibt auf Raspberry Pi Basis 
etwas, das macht genau das. Jetzt das „aber“: Es funktioniert tadellos 
auf einem RPi Zero 1 WH - nur basiert die Software auf einer alten 
Python 2.x Version.
Das Projekt DoorPi wirst Du schnell finden wenn Du eine Suchmaschine 
bemühst. Ob es inzwischen eine Portierung auf Python 3.xx gegeben hat - 
keine Ahnung.

Denn ich habe es inzwischen anders gelöst, der RasPi erschien mir vor 
Datendieben mechanisch einfach nicht sicher genug. Und einen riesen 
Aufriss machen (noch ein VLAN usw.) wollte ich auch nicht.

von Stephan S. (uxdx)


Lesenswert?

Uwe D. schrieb:
> Es gibt auf Raspberry Pi Basis
> etwas, das macht genau das. Jetzt das „aber“: Es funktioniert tadellos
> auf einem RPi Zero 1 WH - nur basiert die Software auf einer alten
> Python 2.x Version.
> Das Projekt DoorPi wirst Du schnell finden wenn Du eine Suchmaschine
> bemühst. Ob es inzwischen eine Portierung auf Python 3.xx gegeben hat -
> keine Ahnung.

Du könntest Python2 nachinstallieren ...

von Jan S. (Firma: Eigenbau) (vox_equus)


Lesenswert?

Frank E. schrieb:
> Ich suche ein Projekt mit ESP32/8266 unter Arduino, das es ermöglicht,
> bei eingehendem SIP-Anruf einen Schaltvorgang auszulösen (z.B. Tor
> öffnen).

Eine andere Möglichkeit wäre eine SIM7600E, die ein SMS mit Passwort 
empfängt, ein MC oder Arduino würde dann das Passwort via UART od. 
AT-Befehlen auswerten und den Schaltvorgang auslösen...
SIM7600E arbeiten mit LTE, kosten bei Ali etwa 40 Euro. Benötigt eine 
billige SIM-Karte.


> Das Web ist voll von Projekten, die genau anders herum agieren: Auf
> Knopfdruck wird ein SIP-Call ausgelöst, um z.B. auf einem Telefon ein
> Türklingeln zu signalisieren.

Da die allermeisten IP4-Adressen hinter Carrier-grade NAT stehen,  ist 
es nur über einen externen Server möglich, in die andere Richtung 
erfolgreich zu senden.
Gruss Jan

: Bearbeitet durch User
von Hmmm (hmmm)


Lesenswert?

Jan S. schrieb:
> Da die allermeisten IP4-Adressen hinter Carrier-grade NAT stehen,  ist
> es nur über einen externen Server möglich, in die andere Richtung
> erfolgreich zu senden.

SIP durch NAT ist i.d.R. kein Problem.

Eingehende Anrufe sind bloss etwas aufwendiger zu implementieren als 
ausgehende, weil man sich regelmässig per REGISTER melden und eingehende 
INVITEs verarbeiten muss.

Die Intervalle müssen natürlich ggf. zum Timeout des NAT-Gateways 
passen.

von Uwe D. (monkye)


Lesenswert?

Stephan S. schrieb:
> Uwe D. schrieb:
>> Es gibt auf Raspberry Pi Basis
>> etwas, das macht genau das. Jetzt das „aber“: Es funktioniert tadellos
>> auf einem RPi Zero 1 WH - nur basiert die Software auf einer alten
>> Python 2.x Version.
>> Das Projekt DoorPi wirst Du schnell finden wenn Du eine Suchmaschine
>> bemühst. Ob es inzwischen eine Portierung auf Python 3.xx gegeben hat -
>> keine Ahnung.
>
> Du könntest Python2 nachinstallieren ...

Python2 will ich nicht mehr benutzen. Wie gesagt, es funktioniert ja. 
Aber es wird nicht weiter gepflegt, hat Lücken und Bugs

von Jan S. (Firma: Eigenbau) (vox_equus)


Lesenswert?

Hmmm schrieb:
> Jan S. schrieb:
>> Da die allermeisten IP4-Adressen hinter Carrier-grade NAT stehen,  ist
>> es nur über einen externen Server möglich, in die andere Richtung
>> erfolgreich zu senden.
>
> SIP durch NAT ist i.d.R. kein Problem.

Voraussetzung: Man hat einen SIP Provider. Die eigene Festnetznummer 
möchte man wohl für Anrufe behalten...

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Ich habe da ein Projekt gefunden, dass einen eingehenden Anruf mit 
NeoPixel-Geflimmer signalisiert. Da bin ich gerade bei, es umzubauen.

Es muss ausserdem auf einem ESP32 mit LAN laufen, statt WLAN. Dazu nehme 
ich einen WT32-ETH01. Der lässt sich leider nur umständlich mit externem 
UART programmieren. Warum haben die dort bloß den USB-Port weggelassen? 
Naja, geht schgon irgendwie.

Wenns läuft, geb ich das hier rein ...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.