Hallo!
Ich wollte dir etwas mitteilen. Ich habe mich in Gladys V4 eingearbeitet (die übrigens toll ist, ich kann es kaum erwarten, sie bei mir in Produktion zu setzen), und ich habe damit begonnen, einige Integrationen, die ich in V3 hatte, neu zu schreiben. Eine davon war das Free SMS-Modul, ich glaube nicht, dass es von mir war.. naja..
Also, ich habe darüber nachgedacht, wie man es machen könnte, und mir die Telegram-Integration angesehen. Ich wollte dir also zeigen, was ich am vergangenen Wochenende bei mir geschrieben habe..
Grundsätzlich ist Telegram gut, aber für mich zum Beispiel, wenn ich im Urlaub bin und eine Sicherheitsbenachrichtigung (Einbruch, Feuer..) erhalten möchte und ich kein Internet habe, brauche ich SMS.
Also, als ich die Lib message.sendToUser.js angesehen habe, habe ich gesehen, dass der Aufruf der Telegram-Integration hier hart codiert ist. Ich habe also versucht/eine kleine Änderung in diesem Stil vorgenommen:
// Wir senden die Nachricht an den bevorzugten Dienst
const smsService = this.service.getService('sms');
const telegramService = this.service.getService('telegram');
try{
// versuchen, per SMS zu senden
await smsService.message.send(user.id, messageCreated);
}catch(err) {
// es könnte scheitern, weil der Dienst nicht existiert oder nicht konfiguriert ist
// wenn der Dienst existiert und der Benutzer Telegram konfiguriert hat
if (telegramService && user.telegram_user_id) {
// Wir senden die Nachricht an den Telegram-Dienst
await telegramService.message.send(user.telegram_user_id, messageCreated);
}
(man könnte auch per SMS UND per Telegram senden..)
Und ich habe eine SMS-Integration geschrieben.
Da ich keine spezifische FreeSms-Integration für Free (und dann eine für Orange.. usw.) machen wollte, habe ich etwas entwickelt, das langfristig mehrere Anbieter verwalten kann, wobei der Benutzer sein Land und seinen Anbieter auswählen muss.
Natürlich habe ich nichts an der Diskussion mit Gladys geändert, da SMS dies nicht zulässt.
Ich wollte deine Meinung hören, ob du nicht schon an einer anderen Methode gedacht hast..
Ich werde meinen Code so schnell wie möglich in meinem Branch pushen, und wenn du einen Blick darauf werfen möchtest .. ![]()
Edit: mein Branch GitHub - Jean-PhilippeD/Gladys at sms · GitHub
