[Modul] Tesla

Du nutzt nicht die Testing Verison, oder?

Grüße,
Kai

doch, benutze ich. Habe aber zwischenzeitlich herausgefunden, dass ich das tesla_fetchData am Splitter aufrufen muss - war mein Fehler

@KaiS ,
Hi, bekomme keine Verbindung mehr zu meinem Tesla.
Fehlermeldung:

Warning: 
Warning: ErrorLogin required in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.tesla\TeslaVehicleConnector\module.php on line 56

Fatal error: Uncaught TypeError: TeslaVehicleConnector::ForwardData(): Return value must be of type string, bool returned in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.tesla\TeslaVehicleConnector\module.php:58
Stack trace:
#0 C:\Windows\System32\-(3): TeslaVehicleConnector->ForwardData('{"DataID":"{675...')
#1 {main}
  thrown in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.tesla\TeslaVehicleConnector\module.php on line 58
 in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.tesla\libs\TeslaHelper.php on line 9

Fatal error: Uncaught TypeError: json_decode(): Argument #1 ($json) must be of type string, bool given in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.tesla\libs\TeslaHelper.php:9
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.tesla\libs\TeslaHelper.php(9): json_decode(false)
#1 C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.tesla\TeslaVehicleControl\module.php(96): TeslaVehicleControl->isOnline()
#2 C:\ProgramData\Symcon\scripts\__generated.inc.php(2911): TeslaVehicleControl->State()
#3 C:\ProgramData\Symcon\scripts\32971.ips.php(117): Tesla_State(28709)
#4 {main}
  thrown in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.tesla\libs\TeslaHelper.php on line 9

Kann ich irgendwas tun?

Gruß, Peter

Versuch mal dich neu anzumelden.

Grüße,
Kai

danke, geht wieder!
Grüße, Peter

@paresy, könnte das etwas mit dem Token zu tun haben?

Grüße,
Kai

Die neuste Beta im Modulstore. Hatte gestern das Update gemacht und danach kamen die Fehler

Du musst auf die Testing Version wechseln.

Grüße,
Kai

ok, dann warte ich mal bis die Testing zur Beta wird :wink:

Ich würde dir raten auf die Testing zu wechseln. :slight_smile:
Das Vorgehen ist hier beschrieben: [Modul] Tesla - #772 von KaiS

Grüße,
Kai

ahhh ok danke. Den Beitrag hatte ich überlesen :smiley:

bekomme beim erstellen folgenden Fehler. Egal welche Tesla Instanz ich erstellen will.

Muss ich auf Ip Symcon 7 sein? bin noch auf 6.4

Neustart von Ip Symcon und Modul deinstallieren brachte keinen Erfolg

image

Welche IPS Version hast du installiert?
Da habe ich wohl vergessen die Kompatibilität anzupassen.

Grüße,
Kai

6.4 . Das ist die letzte 6er Version bevor es zur 7 ging

Das Modul braucht die Version 7.

Grüße,
Kai

oh man :-D. trotzdem Danke.
Denke wenn ich auf die 7 gehe muss ich noch andere Module anpassen… Melcloud und co.

mal schauen ob ich das die Woche mache.

Es gibt immer nur den Standort der aktuellen Route.

Grüße,
Kai

Ich habe heute das bekommen: `
Warning: Undefined variable $ths in C:\ProgramData\Symcon\modules.store\info.schnittcher.ips.tesla\TeslaVehicleControl\module.php on line 108

Fatal error: Uncaught Error: Call to a member function LogMessage() on null in C:\ProgramData\Symcon\modules.store\info.schnittcher.ips.tesla\TeslaVehicleControl\module.php:108
Stack trace:
#0 C:\ProgramData\Symcon\scripts__generated.inc.php(3635): TeslaVehicleControl->State()
#1 C:\ProgramData\Symcon\scripts\18701.ips.php(161): Tesla_State(51523)
#2 {main}
thrown in C:\ProgramData\Symcon\modules.store\info.schnittcher.ips.tesla\TeslaVehicleControl\module.php on line 108`
Weiss nicht, welcher Befehl das auslöst. Hat schon mal jemand das Problem gelöst?

Fix ist gleich online.

Grüße,
Kai

@thezepter

du hattest mich nach der Abfrage gefragt.
Dieses Skript fragt das Auto je nach Zustand mehr oder weniger ab.
Erklärung gerne zum WE, bin von jetzt bis Sonntag extrem eingespannt.

gruß

<?php

// Konfigurationsbereich
$debug = 1; // Debug-Modus aktivieren (1) oder deaktivieren (0)
$splitterID = 13633; // Die ID des Splitters
$counterID = 31741; // Die ID der Variable, die den Counter speichert

// Timer-Konfiguration
$shortFetch = 30; // Abrufen im 30 Sekunden Takt
$longFetch = 240; // Abrufen im 240 Sekunden Takt
$ultraLongFetch = 3600; // Sehr langer Takt von 3600 Sekunden

// Zusätzliche Bedingungen
$driveID = 21234; // ID für Fahrzustand (D oder R)
$chargingID = 35277; // ID für Ladezustand, abrufen wenn größer 1
$sentryID = 29425; // ID für Wächtermodus, 1 wenn aktiv

// Nachtzeit-Intervall
$nightStart = 22; // 22 Uhr
$nightEnd = 6.5; // 6:30 Uhr

// Aktuelle Zeit ermitteln
$currentTime = floatval(date('G')) + floatval(date('i')) / 60;

// Timer-Logik und Debug-Ausgaben
$fetchReason = ""; // Grund für den Datenabruf
$selectedInterval = ""; // Gewählter Timer-Intervall

if (GetValue($driveID) == 'D' || GetValue($driveID) == 'R') {
    IPS_SetScriptTimer($_IPS['SELF'], $shortFetch);
    $fetchReason = "Fahrzeug fährt (D oder R).";
    $selectedInterval = $shortFetch . " Sekunden";
} elseif (GetValue($chargingID) > 2 || GetValue($sentryID) == 1) {
    IPS_SetScriptTimer($_IPS['SELF'], $longFetch);
    $fetchReason = "Ladezustand > 1 oder Wächtermodus aktiv.";
    $selectedInterval = $longFetch . " Sekunden";
} elseif ($currentTime >= $nightStart || $currentTime <= $nightEnd) {
    IPS_SetScriptTimer($_IPS['SELF'], $ultraLongFetch);
    $fetchReason = "Nachtzeit.";
    $selectedInterval = $ultraLongFetch . " Sekunden";
} else {
    IPS_SetScriptTimer($_IPS['SELF'], $longFetch);
    $fetchReason = "Standard-Takt.";
    $selectedInterval = $longFetch . " Sekunden";
}

// Debug-Ausgabe vor dem Abrufen der Daten
if ($debug) {
    echo "Daten vom Tesla abrufen...\n";
    echo "Grund: $fetchReason\n";
    echo "Gewählter Intervall: $selectedInterval\n";
    echo "SplitterID: $splitterID\n";
}

// Daten vom Tesla abrufen
Tesla_FetchData($splitterID);

// Den aktuellen Wert des Counters abrufen
$currentCounterValue = GetValue($counterID);

// Den Counter um eins erhöhen
$newCounterValue = $currentCounterValue + 1;

// Den neuen Wert des Counters speichern
SetValue($counterID, $newCounterValue);

// Weitere Debug-Ausgaben, wenn der Debug-Modus aktiv ist
if ($debug) {
    echo "Neuer Counter-Wert: $newCounterValue\n";
}

?>

2 „Gefällt mir“