NEWS
WhatsApp Adapter - Verzögerung beim Versand
-
@surfer09 Ich nutze nicht den Adapter, sondern ein reines Skript. Da dauert es keine 5 Sekunden.
-
@ro75 Okay.. Darf ich fragen, wie das Skript aussieht? Ich bin jetzt nicht so der Programmierer.
-
@ro75 sagte in WhatsApp Adapter - Verzögerung beim Versand:
@surfer09 Ich nutze nicht den Adapter, sondern ein reines Skript. Da dauert es keine 5 Sekunden.
bei whatsapp ?
coolDann zeig doch mal das Script.
-
Dieses Skript stammt von: Stephan Kreyenborg
Das als GLOBAL:
/* * @copyright 2021 Stephan Kreyenborg <stephan@kreyenborg.koeln> * * @author 2021 Stephan Kreyenborg <stephan@kreyenborg.koeln> * * Dieses Skript dient zur freien Verwendung in ioBroker zur Versendung Nachrichten an den CallMeBot Service. * Jegliche Verantwortung liegt beim Benutzer. Das Skript wurde unter Berücksichtigung der bestmöglichen Nutzung * und Performance entwickelt. * Der Entwickler versichert, das keine böswilligen Systemeingriffe im originalen Skript vorhanden sind. * * Sollte das Skript wider Erwarten nicht korrekt funktionieren, so hast Du jederzeit die Möglichkeit, Dich auf * https://www.kreyenborg.koeln * für Unterstützung zu melden. Jedes Skript besitzt seine eigene Kommentarseite, auf der, * nach zeitlicher Möglichkeit des Autors, Hilfe angeboten wird. Ein Anrecht hierauf besteht nicht! * * Ansprüche gegenüber Dritten bestehen nicht. * * Skript Name: WhatsAppBot * Skript Version: 1.1 * Erstell-Datum: 19. April 2021 * * Aufruf erfolgt mit: WhatsAppBot(0, "Dies ist eine Testnachricht!"); * Wobei 0 das erste registrierte Gerät ist, das zweite hat die 1 usw. Für alle Geräte gleich "alle" benutzen */ function WhatsAppBot(empfaenger, text) { // Hier kommen Deine API Keys rein var api_keys = ["75XXXX", "17XXXXX", "89XXXXX"]; // Hier kommen die zughörigen Telefonnummern rein var telephone_nummer = ["+491522XXXXX", "+491525XXXXXX", "+49163XXXXX"]; // Textnachricht bereinigen var nachricht = text.replace(/\s/g, "+"); nachricht = nachricht.replace(/<br>/g,"%0A"); // An alle oder nur an einen bestimmten Empfänger if (Array.isArray(empfaenger)) { for (let i = 0; i < empfaenger.length; i++) { sendeWhatsApp(telephone_nummer[empfaenger[i]], api_keys[empfaenger[i]], nachricht); } } if (empfaenger == "alle") { for (let i = 0; i < telephone_nummer.length; i++) { sendeWhatsApp(telephone_nummer[i], api_keys[i], nachricht); } } if (Number.isInteger(empfaenger)) { sendeWhatsApp(telephone_nummer[empfaenger], api_keys[empfaenger], nachricht); } } function sendeWhatsApp(empfaenger, api_key, nachricht) { if (empfaenger != "" && api_key != "" && empfaenger != undefined && api_key != undefined) { exec("curl -X GET 'https://api.callmebot.com/whatsapp.php?phone=" + empfaenger + "&text=" + nachricht + "&apikey=" + api_key + "'", function (error, stdout, stderr) { if (stdout.includes("Message queued") || stdout.includes("invalid") || stdout.includes("currently a limit")) { if (stdout.includes("Message queued")) { log("WhatsAppBot: Erfolg: Nachricht an " + empfaenger + " verschickt!"); } if (stdout.includes("invalid")) { log("WhatsAppBot: Fehler: API Key für " + empfaenger + " ist ungültig!"); } if (stdout.includes("currently a limit")) { log("WhatsAppBot: Fehler: 25 Nachrichten pro 4 Stunden Limit erreicht für " + empfaenger + "!"); } } else { log("WhatsAppBot: Fehler: Nachricht an " + empfaenger + " konnte nicht verschickt werden! Error: " + error); } }); } else { log("WhatsAppBot: Fehler: Empfänger oder API Key für diese Position ungültig!"); } }
So der Aufruf:
WhatsAppBot("alle", "Essenplanung schon erledigt?");
oder
WhatsAppBot([0,1], Toner hat noch eine Restkapazität von ...");
-
@ro75 Danke! Ich arbeite überwiegend mit Blockly Skripten, wie bekomme ich das denn dort untergebracht? Also so wie ich das verstehe, müsste ja nur der Aufruf im Blockly Skript passieren, das Globale Skript lege ich als Java-Skript in den Global Ordner?!
-
@surfer09 Ja, das kommt nach Global. Nur mit Blockly kann icht dir leider nicht helfen.
-
@ro75 sagte in WhatsApp Adapter - Verzögerung beim Versand:
WhatsAppBot([0,1], Toner hat noch eine Restkapazität von ...");
Im Script steht:
log("WhatsAppBot: Fehler: 25 Nachrichten pro 4 Stunden Limit erreicht für " + empfaenger + "!");
Ist es richtig, dass man "nur" 25 Nachrichten in 4 Stunden senden darf ?
Wenn ja, dann ist das völlig unbrauchbar.
-
@bahnuhr JA die kostenfreie Variante. Das gilt aber nicht nur für das Skript, auch für den Adapter.
-
@ro75 sagte in WhatsApp Adapter - Verzögerung beim Versand:
JA die kostenfreie Variante. Das gilt aber nicht nur für das Skript, auch für den Adapter.
Ok, Danke für die Info.
Dann für mich völlig unbrauchbar. Bleibe bei telegram.
25 Nachrichten hab ich ja in 15 Minuten.
Also nix für mich. -
-
@djmarc75 sagte in WhatsApp Adapter - Verzögerung beim Versand:
@ro75 sagte in WhatsApp Adapter - Verzögerung beim Versand:
Das als GLOBAL:
Warum ?
Weil man mit einem Kurzbefehl:
whatsapp ....
das globale Script aufruft und dort das ganze abgearbeitet wird. -
@djmarc75 So stand es in der Anleitung. Kann man mit Sicherheit auch nicht in Global ablegen.
-
@ro75 sagte in WhatsApp Adapter - Verzögerung beim Versand:
nicht in Global ablegen.
ne nicht sinnvoll.
Dann muss man ja alles (key, nr., etc) in jedem Script einfügen wo es Verwendung findet.
-
@bahnuhr sagte in WhatsApp Adapter - Verzögerung beim Versand:
Weil man mit einem Kurzbefehl:
whatsapp ....
das globale Script aufruft und dort das ganze abgearbeitet wird.ok, verstanden
-
@djmarc75 sagte in WhatsApp Adapter - Verzögerung beim Versand:
@ro75 sagte in WhatsApp Adapter - Verzögerung beim Versand:
Das als GLOBAL:
Warum ?
dann ist das Skript wie ein Adapter und steht jedem anderen Skript zur Verfügung