Hi,
ich habe versucht ein Berry-skript zu erstellen, mit dem ich LORA-Empfangsdaten im Hauptmenü anzeigen kann.
Das Skript wirft mir immer folgenden Fehler: Exception> 'syntax_error' - input:1: expected '->' before '/'
Habt ihr eine Idee, was mir der Fehler sagen will? Danke euch.
Das Skript selbst sieht wie folgt aus:
Code
// Variablen zur Speicherung der letzten empfangenen Daten
lastMessage = ""
lastRSSI = 0
lastReceivedTime = ""
// Funktion, die bei Empfang einer LoRa-Nachricht aufgerufen wird
def onLoRaReceive(event, data) {
if event == "LORA_RECEIVE" {
lastMessage = data["Data"] // Nachrichtinhalt
lastRSSI = data["RSSI"] // Empfangsstärke
lastReceivedTime = time() // Aktuelle Zeit speichern
print("Neue Nachricht empfangen: " + lastMessage + " | RSSI: " + lastRSSI)
// Nachricht per MQTT veröffentlichen
sendLoRaDataMQTT()
}
}
// Event-Handler für LoRa-Daten aktivieren
event.on("LORA_RECEIVE", onLoRaReceive)
// Funktion zur Veröffentlichung der LoRa-Daten über MQTT
def sendLoRaDataMQTT() {
if lastReceivedTime != "" {
topic = "tasmota/lora" // MQTT-Thema anpassen, falls nötig
payload = {
"message": lastMessage,
"rssi": lastRSSI,
"received_time": lastReceivedTime
}
mqtt.publish(topic, json.encode(payload), false)
print("MQTT gesendet: " + json.encode(payload))
}
}
// Funktion zur Anzeige der letzten empfangenen Daten (manuelle Abfrage)
def showLastLoRaData() {
if lastReceivedTime != "" {
print("Letzte Nachricht: " + lastMessage)
print("Empfangsstärke (RSSI): " + lastRSSI)
print("Empfangen um: " + lastReceivedTime)
} else {
print("Noch keine Nachricht empfangen.")
}
}
// Befehl hinzufügen, um die Daten manuell abzufragen
command.add("lorainfo", showLastLoRaData)
Alles anzeigen