Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Deutsch

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:

Codeblock
{
    "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 die 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:

Codeblock
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:

Codeblock
# node get-sites.js
Usage:
node get-sites.js <account-uuid>
Info

Ü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.

Englisch

We have provided an example code base written in JavaScript that can be executed on the command line with NodeJS.

Requirements

We recommend using Visual Studio Code as an IDE.

The ZIP file contains the following files:

Config.json

This is a configuration file. Update with your credentials / service account:

Codeblock
{
    "user": "admin",
    "pass": "admin",
    "baseurl": "https://cloud.lancom.de",
    "otpSecret: ""
}

If you are using two-factor authentication, you need to provide the secret via otpSecret, otherwise leave empty. If provided, the lmc-api.js will then generate tokens with this secret.

lmc-api.js, util.js

Library files.

lmc-api.js contains the authentication/authorization mechanism, including a token cache that reuses valid tokens and automatically refreshes tokens if needed.

util.js simplifies writing examples. See below.

get-sites.js

An example implementation to fetch a list of site UUIDs from a project:

Codeblock
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));
    });

Usage:

Codeblock
# node get-sites.js
Usage:
node get-sites.js <account-uuid>
Info

Exercise:

Create a file get-devices.js, similar to get-projects.js and print a list of project IDs and names on the command line.


...