Hi Forum,
folgender Plan: Ich habe ein LED-Display und will dort Nachrichten über ein Telegram-Bot anzeigen lassen. Ich möchte dann eine Funktion schreiben, die die Nachricht als Lauftext anzeigen lässt. Da der Text von Telegram ja nicht immer gleich lang ist und ich die Lauftextfunktion mit einer For-Schleife realiesieren will, wollte ich mit sizeof die Größe ermitteln, damit der komplette text angezeigt wird. Ich hab den Befehl vorher noch nie benutzt. Wenn ich es teste, bekomme ich, egal wie lang der Text von Telegram ist, immer 12 raus. Ich programmiere noch nicht so lange, muss ich gestehen. Benutze ich den Befehl falsch oder warum bekomme ich immer das selbe raus? Danke für die hilfe
Mfg
#include <Arduino.h>
#include "AsyncTelegram.h"
AsyncTelegram myBot;
const char* Netzwerkname = "xx"; // << kann bis zu 32 Zeichen haben
const char* Passwort = "xx"; // << mindestens 8 Zeichen jedoch nicht länger als 64 Zeichen
#define Bot_ID "xx" // Telegrammbot ID
void setup() {
Serial.begin(115200);
Serial.println("Starting TelegramBot...");
WiFi.setAutoConnect(true);
WiFi.mode(WIFI_STA);
WiFi.begin(Netzwerkname, Passwort);
while (WiFi.status() != WL_CONNECTED) {
Serial.print('.');
delay(500);
}
// To ensure certificate validation, WiFiClientSecure needs time upadated
// myBot.setInsecure(false);
myBot.setClock("CET-1CEST,M3.5.0,M10.5.0/3");
myBot.setUpdateTime(2000);
myBot.setTelegramToken(Bot_ID);
// Check if all things are ok
Serial.print("\nTest Telegram connection... ");
myBot.begin() ? Serial.println("OK") : Serial.println("NOK");
Serial.print("Bot name: @");
Serial.println(myBot.userName);
}
void loop() {
TBMessage msg; // a variable to store telegram message data
if (myBot.getNewMessage(msg)) // if there is an incoming message...
{
Serial.println(sizeof(msg.text));
Serial.println(msg.text);
myBot.sendMessage(msg, msg.text); // echo the received message
}
}