Funktioniert !
Vielen Dank für den extrem schnellen Fix.
Ankündigung
Einklappen
Keine Ankündigung bisher.
LBS19000303 - Telegram Contact I LBS19000304 - Telegram Receiver I LBS19000645 - Telegram Command Validator
Einklappen
X
-
Das Problem kann soweit nachvollziehen.
Die alte Library ist nicht mit PHP7.x kompatibel und die neue hat neue API Aufrufkonventionen, so dass dies jetzt zu einem LBS führen wird, welcher nur noch für PHP7.x entwickelt wird. Ich werde die alte Version dann im DL Portal im ZIP-File hochladen. Dafür wird es dann aber keine Weiterentwicklung mehr geben.
Ich muss jetzt zunächst den gesamten LBS prüfen und entsprechend anpassen. Wird ein wenig dauern.
Als Quickfix für den Cam/Photo Eingang:
Wenn du im LBS den "cam" Bereich durch folgendes ersetzt, sollte es funktionieren: (ungefähr ab Zeile 428)
PHP-Code:case 'cam':
if ($cmd == 'cam') {
$snapshot = explode(';', $content);
logging($id, 'snapshot array', $snapshot);
if (is_array($snapshot) && count($snapshot) == 6)
$content = $snapshot[5];
elseif (is_array($snapshot) && count($snapshot) == 2) {
$content = $snapshot[0];
}
}
$data = array(
'chat_id' => $chatId
);
// extract captionn
if ($cmd == 'photo') {
$photo = explode(';', $content);
if (is_array($photo) && count($photo) >= 2)
$data['caption'] = $photo[1];
$content = $photo[0];
}
if ($quality != 'high') {
$data['photo'] = Request::encodeFile($content);
$result = Request::sendPhoto($data);
// $result = Request::sendPhoto($data, $content)
} else
// $result = Request::sendDocument($data, $content);
$result = Request::sendDocument($data);
if ($result->isOk()) {
logging($id, 'Telegram ' . $cmd . ' message sent: ' . $content . ' (' . $chatId . ')');
setLogicLinkAusgang($id, 1, 'OK');
} else {
logging($id, 'Failed to send Telegram ' . $cmd . ' message: ' . $content . ' (' . $chatId . ')', true);
setLogicLinkAusgang($id, 1, 'ERROR');
}
break;
Einen Kommentar schreiben:
-
Hallo jonofe ,
ich hab die Änderungen durchgeführt.
Jetzt bleibt der Baustein am leben und es gibt keinen Eintrag mehr im Edomi Error.log, dafür aber im Custom.Log des LBS:
GrußCode:2019-09-05 17:50:58 086055 13854 debug LBS19000303 [v0.9]: LBS started (91) 2019-09-05 17:50:58 091547 13854 debug LBS19000303 [v0.9]: LBS ended (91) 2019-09-05 17:51:03 218314 13854 debug LBS19000303 [v0.9]: LBS started (91) 2019-09-05 17:51:03 224097 13854 debug LBS19000303 [v0.9]: Create Message Queue with ID: 6929917 (91) 2019-09-05 17:51:03 226520 13854 debug LBS19000303 [v0.9]: command started (91) 2019-09-05 17:51:03 226774 13854 debug LBS19000303 [v0.9]: ================ ARRAY/OBJECT START ================ 2019-09-05 17:51:03 227009 13854 debug LBS19000303 [v0.9]: {"cam":"1;1;05.09.2019;17:49:30;531021;\/usr\/local\/edomi\/www\/data\/liveproject\/cam\/archiv\/archiv1-cam1-20190905174930531021.jpg"} 2019-09-05 17:51:03 227211 13854 debug LBS19000303 [v0.9]: ================ ARRAY/OBJECT END ================ 2019-09-05 17:51:03 229557 13854 debug LBS19000303 [v0.9]: LBS ended (91) 2019-09-05 17:51:03 239981 14390 debug EXE19000303 [v0.9]: Telegram message execution started (91) 2019-09-05 17:51:03 243983 14390 debug EXE19000303 [v0.9]: Command:cam (91) 2019-09-05 17:51:03 247509 14390 debug EXE19000303 [v0.9]: snapshot array (91) 2019-09-05 17:51:03 247746 14390 debug EXE19000303 [v0.9]: ================ ARRAY/OBJECT START ================ 2019-09-05 17:51:03 247916 14390 debug EXE19000303 [v0.9]: ["1","1","05.09.2019","17:49:30","531021","\/usr\/local\/edomi\/www\/data\/liveproject\/cam\/archiv\/archiv1-cam1-20190905174930531021.jpg"] 2019-09-05 17:51:03 248051 14390 debug EXE19000303 [v0.9]: ================ ARRAY/OBJECT END ================ 2019-09-05 17:51:03 292550 14390 debug EXE19000303 [v0.9]: Failed to send Telegram cam message: /usr/local/edomi/www/data/liveproject/cam/archiv/archiv1-cam1-20190905174930531021.jpg (-131692428) (91) 2019-09-05 17:51:03 292887 14390 debug EXE19000303 [v0.9]: ================ ARRAY/OBJECT START ================ 2019-09-05 17:51:03 293104 14390 debug EXE19000303 [v0.9]: true 2019-09-05 17:51:03 293304 14390 debug EXE19000303 [v0.9]: ================ ARRAY/OBJECT END ================ 2019-09-05 17:51:03 297893 14390 debug EXE19000303 [v0.9]: Telegram message execution finished (91)
Wolfgang
Einen Kommentar schreiben:
-
Vielen Dank, ich teste morgen Abend, kann heute leider nicht mehr.
Gruß
Wolfgang
Einen Kommentar schreiben:
-
Ich denke es handelt sich um ein Inkompatibilität der alter php-telegram-bot Library mit PHP 7.x.
Man könnte versuchen das aktuelle php-telegram-bot per git zu clonen und dies zu verwenden.
Habe aber im Moment keine Zeit das zu testen.
Folgendes könntest du machen:
Danach das require Statement im LBS EXEC Abschnitt ändern in:Code:cd /usr/local/edomi/main/include/php mkdir telegram cd telegram git clone [URL]https://github.com/php-telegram-bot/core[/URL] cd core composer install composer update
Falls das nicht auf Anhieb funktioniert, musst du noch ein wenig warten, bis ich es mir genauer anschauen kann.Code:require (dirname(__FILE__) . "/../../../../main/include/php/[COLOR=#FF0000][B]telegram/core[/B][/COLOR]/vendor/autoload.php");
Einen Kommentar schreiben:
-
Gerade geprüft.
Datei existiert und lässt sich auch unter Windows öffnen.
Einen Kommentar schreiben:
-
Hier der String:
Code:1;1;04.09.2019;18:38:53;890723;/usr/local/edomi/www/data/liveproject/cam/archiv/archiv1-cam1-20190904183853890723.jpg
Einen Kommentar schreiben:
-
Hallo jonofe,
seit dem Update auf CentOS 7 bekomme ich
unter EDOMI 2.0,
mit dem Telegram-Contact LBS19000303,
beim versenden eines Kamerabildes über E9,
diesen Fehler im Fehlerlog von EDOMI:
Der LBS stellt seine Arbeit bis zum Neustart von EDOMI einDatei: /usr/local/edomi/main/include/php/php-telegram-bot/src/Request.php | Fehlercode: 0 | Zeile: 291 | Class 'Longman\TelegramBot\CURLFile' not found
Google brachte etwas über die PHP Version?
Gruß,
Wolfgang
Einen Kommentar schreiben:
-
Ja das schon, aber für mich gross genug das ich sehe wer es ist (sofern ich ihn kenne ;-) )
aber ik, wenn es nicht anders möglich ost6, dann is es eben so ;-)
Danke für dwn tollen LBS *daumenhoch*
Peter
Einen Kommentar schreiben:
-
Ist das Bild nicht dann ohnehin nur als Icon sichtbar?Zitat von pkuli6kg Beitrag anzeigenCambild popt am Handy auf -> und per Reply bestätige ich den Türöffner
Es ist halt ein Klick mehr, um Telegram zu öffnen und dort sieht man das Bild in größer und hat die Tastatur.
Einen Kommentar schreiben:
-
Ok, meine Vorstellung war nämlich: Türklingel gedrückt-> Cambild popt am Handy auf -> und per Reply bestätige ich den Türöffner für die Gartentüre. Oder gibts da eine andere (bessere?) LÖSUNG? LG
Einen Kommentar schreiben:
-
... Sofern ich das im Moment überblicken kann: Ja!!!Zitat von jonofe Beitrag anzeigenIch vermute es reicht dir, wenn die Commands definiert sind und keinen Fehler auswerfen und du aber trotzdem die Reaktion auf die Commands dann ganz normal in EDOMI machst, oder?
Ich wüsste auch nicht, was man in den Scripten mehr machen kann als on der Edomi-Logik...
Danke fürs Dir ansehen!!!
sG
Joe
- Likes 1
Einen Kommentar schreiben:
-
In welchem PopUp? Meinst du die Android Benachrichtigung? Soweit ich weiss funktioniert das nicht, da es ja nur eine Textausgabe und ein Texteingabefeld ist.Zitat von pkuli6kg Beitrag anzeigenGibt es eine Möglichkeit das reply / inline Keyboard direkt im Popup einzublenden - Ich verwende telegram 0.9, Smartphone ist ein Galaxy S9 - Oder übersehe ich etwas?
Einen Kommentar schreiben:

Einen Kommentar schreiben: