Wir haben eine in JavaScript geschriebene Beispielcodebasis bereitgestellt, die auf der Kommandozeile mit NodeJS ausgeführt werden kann.
Voraussetzungen
- Laden Sie die neueste stabile Version von https://nodejs.org/en/ herunter.
- Laden Sie die Datei minimal-lmc-api-setup.zip herunter, und entpacken Sie sie in Ihrem Arbeitsbereich.
- Führen Sie npm install aus, um die für den Beispielcode erforderlichen Abhängigkeiten herunterzuladen.
Wir empfehlen die Verwendung von Visual Studio Code als IDE.
Die ZIP-Datei enthält die folgenden Dateien:
Config.json
Dies ist eine Konfigurationsdatei. Aktualisieren Sie sie mit Ihren Anmeldedaten / Ihrem Dienstkonto:
{ "user": "admin", "pass": "admin", "baseurl": "https://cloud.lancom.de", "otpSecret: "" }
Wenn Sie die Zwei-Faktor-Authentifizierung verwenden, müssen Sie das Geheimnis über otpSecret angeben, andernfalls lassen Sie es leer. Falls angegeben, wird lmc-api.js Token mit diesem Geheimnis erzeugen.
lmc-api.js, util.js
Hierbei handelt es sich um Bibliotheksdateien.
lmc-api.js enthält den Authentifizierungs-/Autorisierungsmechanismus, einschließlich eines Token-Caches, der gültige Token wiederverwendet und Token bei Bedarf automatisch auffrischt.
util.js vereinfacht das Schreiben von Beispielen. Siehe unten.
get-sites.js
Eine Beispielimplementierung zum Abrufen einer Liste von Site-UUIDs aus einem Projekt:
const util = require("./util.js"); if (!util.checkParams(["account-uuid"])) { // add more cli parameters here return; } // Create an API object, to query the given account const lmcApi = util.getApi(process.argv[2]); // next cli parameter would be process.argv[3] lmcApi.fetch(`/cloud-service-devices/accounts/${lmcApi.accountId}/sites?select=id`) .then(sites => { sites .forEach(site => console.log(site)); });
Anwendung:
# node get-sites.js Usage: node get-sites.js <account-uuid>
Übung:
Erstellen Sie eine Datei get-devices.js, ähnlich wie get-projects.js, und geben Sie eine Liste von Projekt-IDs und -namen auf der Kommandozeile aus.