Telegram Messenger Modul

Hallo,

kann es sein, dass das Modul nicht mit Gruppen funktioniert. Wenn ich in einen Chat eine Nachricht schicke dann wird es auch unter Meldungen in IPs angezeigt. Wenn ich was in der Gruppe schreibe, dann nicht.

Grüße

Der Bot muss für die Gruppe Bot berechtigt sein, sonst kann er die Nachrichten nicht lesen.

Ich habe eine Gruppe „Haus“ erstellt wo erst mal nur ich und der Bot drin sind. Muss der Bot auch Admin der Gruppe sein?

Nein, er muss aber Zugriff auf die Nachrichten der Gruppe haben.

In der Gruppe ist der Bot drin:

bot.png

Hallo zusammen,

kurze Zwischenfrage: Das Modul pollt ja den Status vom Telegram Server. Das dauert manchmal ganz schön lange, bis eine Reaktion erfolgt. Habe mal die Pollzeit reduziert, aber so 100% ist das auch nicht. Ich habe bei der Telegram API gelesen, das es auch einen Webhook gibt, wo dann natürlich ohne Pollen funktionieren würde und in Echtzeit :slight_smile: Wäre das vielleicht eine Option, in das Modul zu integrieren?

LG Sebastian

Hallo Zusammen,

beim Anlegen der Instanz bekomme ich folgende Fehlermeldung:

Irgendeine Idee?

Mit der Legacy Konsole geht es noch.

Moin zusammen,

sorry für die späte Rückmeldung. Im Repo ist eine neue Version die auch in der Webconsole von 5.1 funktioniert.

Im JSON war ein Komma zu viel, die legacy Konsole hat das aber wohl nicht gestört.

Hallo,

Das Modul ist super!
Ich wollte gerne wissen ob jemand es hin bekommen hat mit Tasker automatisch eine Nachricht an den IP-Symcon Telegram bot zu senden.
Habe einiges versucht klappt aber nicht.

Ich denke es liegt an der Chat id die nicht korrekt ist.
Weiss jemand wie ich an die korrekte Chat id komme ?
Wenn ich die aus den logs nehme kommt die Nachricht leider auf der falschen Seite an was logisch ist.
Habe dann versucht einen neuen bot zu erstellen der die Nachrichten an den Ip-symcom Bot senden soll aber weiss nicht welche chat id ich nehme müsste.
Wenn ich die gleiche Chat Id aus den logs nehme kommt die Nachricht wieder auf meinem handy an und nicht an den IP-Symcon Telegram Bot.

Vielen dank

Gruss,

Moin,

vielen Dank für das Modul … Ging ja auf Anhieb !!!

Kann ich vom Raspberry aus dem MediaPool ein jpg senden ? Geht das ? …

Grüße dann

Edit…

Für alle die das gleiche Problem mit dem aktualisieren haben…

Ramdisk auf dem Raspberry anlegen, Bild dahin speichern und dann verschicken… So geht es dann

Hallo,
habe mir vor einigen Tagen ebenfalls das Modul installiert. Funktioniert super! Mir sind einige Anwendungsfälle eingefallen, die ich dabei bin umzusetzen. Für einen Anwendungsfall möchte ich eine zweite Telegram-Messenger Instanz anlegen, die mit einem zweiten Bot verknüpft ist. Sobald ich die Instanz anlege, kommt folgende Fehlermeldung:

26.02.2020, 19:01:21 | TimerPool | TelegramMessenger (GetUpdates): <br />
<b>Notice</b>:  Undefined index: result in <b>C:\ProgramData\Symcon\modules\master\TelegramMessenger\Telegram.php</b> on line <b>748</b><br />
<br />
<b>Warning</b>:  count(): Parameter must be an array or an object that implements Countable in <b>C:\ProgramData\Symcon\modules\master\TelegramMessenger\Telegram.php</b> on line <b>748</b><br />
<br />
<b>Notice</b>:  Undefined index: result in <b>C:\ProgramData\Symcon\modules\master\TelegramMessenger\Telegram.php</b> on line <b>672</b><br />
<br />
<b>Warning</b>:  count(): Parameter must be an array or an object that implements Countable in <b>C:\ProgramData\Symcon\modules\master\TelegramMessenger\Telegram.php</b> on line <b>672</b><br />

ich habe mir an der Stelle mal mit print_r das Objekt $this->updates ausgeben lassen und gesehen, dass es keinen Index „result“ gibt.
Ergebnis mit nur einer Instanz:

26.02.2020, 19:10:21 | TimerPool | TelegramMessengerRead (GetUpdates): Array
(
    [ok] => 1
    [result] => Array
        (
        )

)

Ergebnis mit 2 Instanzen:

26.02.2020, 19:10:31 | TimerPool | TelegramMessenger (GetUpdates): Array
(
    [ok] => 
    [error_code] => 401
    [description] => Unauthorized
)
<br />
<b>Notice</b>:  Undefined index: result in <b>C:\ProgramData\Symcon\modules\master\TelegramMessenger\Telegram.php</b> on line <b>749</b><br />
<br />
<b>Warning</b>:  count(): Parameter must be an array or an object that implements Countable in <b>C:\ProgramData\Symcon\modules\master\TelegramMessenger\Telegram.php</b> on line <b>749</b><br />
<br />
<b>Notice</b>:  Undefined index: result in <b>C:\ProgramData\Symcon\modules\master\TelegramMessenger\Telegram.php</b> on line <b>672</b><br />
<br />
<b>Warning</b>:  count(): Parameter must be an array or an object that implements Countable in <b>C:\ProgramData\Symcon\modules\master\TelegramMessenger\Telegram.php</b> on line <b>672</b><br />

Bei der neuen Instanz habe ich auch die neue Bot ID eingetragen.

Kann ich nur eine Instanz anlegen? Was mache ich falsch?

LG
Hugo

Hallo,

Ich nutze schon eine Weile den Messenger, der funktioniert auch tadellos. Aber ich habe gelegentlich Fehlermelungen in den Nachrichten:

TelegramMessenger (GetUpdates): <br />
<b>Notice</b>: Undefined index: text in <b>/var/lib/symcon/modules
/jmc-symcon-modules/TelegramMessenger/Telegram.php</b> on Line
<b>625</b><br />

Gruß

Oliver

Heute installiert und konfiguriert… funktioniert sofort (nachdem ich die ID’s alle richtig zusammenbekommen habe :slight_smile: ).

Danke!

Hallo zusammen!
Ich komme mir bei all den Experten etwas dämlich vor :banghead:
Ich habe eine Instanz von Telegram angelegt.
Dort sind eine BotID und eine Empfänger (CSV) automatisch mit Werten gefüllt
Instanz.png

In Telegram habe ich mir ebenfalls ein Konto angelegt:
API.png

Was trage ich nun in die Instanz ein?

Und wie geht es dann weiter? Könnt ihr mir da bitte eine Schritt für Schritt Anleitung für Doofe zukommen lassen.
Vielleicht ein Beispiel wie die Temperatur an meinen Telegramm Account verschickt werden kann.

Wenn ich das „System“ mal kapiert habe, möchte ich an mein das Ladegerät meines Handy’s an eine Schaltsteckdose anschließen.
Wenn das Handy dann 90% geladen ist, soll die Schaltsteckdose ausgeschaltet werden.

Es wäre super, wenn ihr mir helfen könntet „DAS“ alles zu verstehen.
Und geht bitte davon aus, ich bin ein „Frischling“ und habe noch keinerlei Erfahrung!

Viiiiiiielen Dank!

Gruß
Jörg

Wenn du die bot id eingestellt hast musst mittels Handy per telegram eine Nachricht an den bot schicken. Die tauscht dann in den Mitteilungen auf und du kannst dort deine Benutzer ID finden. Diese müsste dann in dem CSV Feld eintragen :wink:

Um eine Nachricht von IPS zu schicken musst die PHP Zeile aus dem Readme nehmen und anpassen. Ich habe mit SentToAll gearbeitet. Die hat drei Parameter: Instanz ID = die ID der Telegram Instant on deinem ObjeltBaum, die Nachricht als Text, und das markup zeug, habe ich so gelassen.

Kann Morgen auch noch Screenshots anfügen.

Gesendet von meinem EML-L29 mit Tapatalk

Es ist schon spät und ich verstehe nichts :banghead:
Meinst Du mit „]Wenn du die bot id eingestellt hast“ die BotID, die von IT Symcon vorgegeben ist, oder die HTML API, die ich bei der Anmeldung erhalten habe?

Ich glaube wirklich ich brauche eine 1:1 Anleitung wie ich Telegram richtig einrichte und die Parameter in IP-Symcon übergebe.
Und je ein Beispiel, wie ich eine Nachricht an IP-Symcon von Außerhalb schicken und von IP-Symcon nach „Außen“ Schicken kann.

Ist die von IP-Symcon generierte Bot ID und der Empfänger nur ein „Dummy“?

Ich gebs für heute Abend auf :confused::eek:

Ja, die Werte die drin stehen sind nur dummys.

Gesendet von meinem EML-L29 mit Tapatalk

Gut, dann versuche ich mich mal an einem kleinen How-To als Zusatz zum Readme:

  1. [li] Telegram Bot erstellen
    [/li]Wenn Du den Bot gemacht hast kriegst Du vom BotFather eine Nachricht, darin steht 'Use this token to access the HTTP API: 123456789:ABCDEFG7HIJKLM8NOPRS7Tuvw89xYZ ’ - Das ist Deine BotID

    [li] Telegram Instanz in IPS anlegen
    [/li]Hier muss die BotID von oben eingetragen werden. Sobald das gemacht ist kannst erstmal Speichern. Nun wird Dein IPS die Nachrichten die zu dem Bot geschickt werden abholen.

    [li] Benutzer ID finden
    [/li]Du musst dem Bot mittels Telegram (vom Handy oder Web) eine Nachricht schicken. Dazu kannst einfach auf den Link den Dir der BotFather geschickt hat (t.me/botname) klicken und mal ‚Hallo‘ oder was auch immer schicken. Kurz nachdem Du das gemacht hast sollte im Meldungen / Messages log von IPS so etwas auftauchen:


    Die Nummer nach ‚Update von‘ ist Deine Benutzer ID. Die muss nun noch in die Konfiguration der Telegram Instanz - sonst reagiert das Modul nicht auf die Nachricht - Ist eine minimale Sicherheit dass niemand fremdes Dein IPS fernsteuert :smiley:

    Hier nochmal ein Screenshot wo die Werte einzutragen sind:
    Bildschirmfoto 2020-04-19 um 11.43.52.png

    [li] Testnachricht senden
    [/li]Ich habe einfach ein Event benutzt, das kannst ja auch Zeit gesteuert machen. Als Action habe ich das Target auf die Telegram Instanz gelegt, und ‚Run PHP Code‘ ausgewählt. Der Code sieht dann so aus:


    php Telegram_SendTextToAll('24185' /* telegram messenger */, 'Erste Nachricht an den Bot!', $ParseMode='Markdown');


    Ob es das Target braucht weiss ich nicht, wichtig ist jedoch dass der erste Parameter der Funktion die ID Deiner Telegram Instanz ist - bei mir 24185.

So, hoffe das hilft Dir weiter :slight_smile:

[QUOTE=Fogg;423649] Ich bin ein klein wenig weiter gekommen :slight_smile:

[li] Benutzer ID finden
[/li]> Du musst dem Bot mittels Telegram (vom Handy oder Web) eine Nachricht schicken. Dazu kannst einfach auf den Link den Dir der BotFather geschickt hat (t.me/botname) klicken und mal ‚Hallo‘ oder was auch immer schicken. Kurz nachdem Du das gemacht hast sollte im Meldungen / Messages log von IPS so etwas auftauchen:

Wie kann ich denn das Meldungsfenster öffnen und die Messages Log ansehen, so wie es in Deiner Abbildung gezeigt ist?

Gruß
Jörg