Dokumentation
IPS_GetAvailableUpdates
array IPS_GetAvailableUpdates ()
Rückgabewert
Array mit höchstens einem Eintrag. Ist keine neuere Version verfügbar, ist das Array leer. Jeder Eintrag enthält folgende key => value Paare:
| Index | Typ | Beschreibung |
|---|---|---|
| Build | integer | Buildnummer der verfügbaren Version |
| Channel | string | Update-Kanal, in dem die Version gefunden wurde (stable, beta, testing) |
| Date | integer | Unix Zeitstempel der Veröffentlichung |
| Version | string | Versionsnummer der verfügbaren Version, z.B. "8.1" |
Beschreibung
Die Funktion prüft, ob für den aktuell eingestellten Update-Kanal (IPS_GetUpdateChannel) eine neuere Version von Symcon verfügbar ist. Dazu wird die Paketliste der eigenen Plattform (IPS_GetKernelPlatform) und Architektur vom Update-Server (apt.symcon.de) abgerufen; es ist also eine Internetverbindung erforderlich.
Betrachtet wird nur die neueste veröffentlichte Version des Kanals. Sie gilt als verfügbar, wenn ihre Versionsnummer (Major/Minor numerisch verglichen) größer als die installierte (IPS_GetKernelVersion) ist oder bei gleicher Versionsnummer ihre Buildnummer größer ist. In diesem Fall enthält das Ergebnis genau einen Eintrag, andernfalls ist es leer.
Unterstützt werden die Plattformen SymBox, Windows, Ubuntu, Raspberry Pi, Mac, Catan C1 und Docker. Auf anderen Plattformen schlägt die Funktion mit "Updates cannot be detected for this platform!" fehl. Bei einer Entwicklerversion (Plattform "Unknown") wird immer ein leeres Array geliefert. Ist der Update-Server nicht erreichbar oder die Paketliste nicht lesbar, schlägt die Funktion mit einem entsprechenden Fehler fehl.
Beispiel
$updates = IPS_GetAvailableUpdates();
if (count($updates) == 0) {
echo "Symcon ist auf dem neuesten Stand";
} else {
print_r($updates);
}
/* liefert z.B.:
Array
(
[0] => Array
(
[Build] => 1234
[Channel] => stable
[Date] => 1757412000
[Version] => 8.1
)
)
*/