Aufbau der Datei 'config'

Aus

Einleitung

Mit dem DSM 3 wurde neben der Datei application.cfg eine weitere Methode für das Einbinden von Anwendungen eingeführt. Die neue Methode wird über eine Datei config im JSON-Format gesteuert, die auch für die eingebauten Anwendungen und Konfigurationstools verwendet wird. Die Datei befindet sich im Root-Verzeichnis der Anwendung.

Vorteile

  • es kann die Größe des Fensters (height/width) beim Aufruf angegeben werden
  • auf System < DSM 3 wird eine vorhandene application.cfg anstelle der config benutzt. Für DSM ≥ 3 wird application.cfg nur dann gelesen, wenn keine config vorhanden ist
  • Für den Desktop in DSM 3 kann man ein 48 Pixel Icon benutzen

Aufbau

Für die Einbindung von 3rdparty Anwendungen wird dieser Aufbau benutzt (Beispiel):

{
    ".url": {
        "<unique_name>": {
            "type": "legacy",
            "allUsers": false,
            "allowMultiInstance": false,
            "title": "DDNS updater",
            "icon": "images/ddnsupdater_{0}.png",
            "appWindow": "<unique_name>",
            "width": 960,
            "height": 550,
            "url": "/webman/3rdparty/ddnsupdater/ddnsupdater.php"
        }
    }
}

Liste von Schlüsselwörtern

Parameter Beschreibung notwendig dokumentiert Wert/Typ/Beispiel
<unique_name>: eindeutiger Name, z.B. SYNO.SDS._ThirdParty.App.<Anwendungsname>, ohne minus Zeichen, da der legacy type sonst nicht funktioniert. alphanumerisch (ohne das Zeichen -)
type: Für die Fenster (embedded) Lösung, wird das Schlüsselwört "legacy" benutzt. Soll die Anwendung in einem neuen Fenster aufgerufen werden muss "url" eingetragen werden. legacy, url (es existieren noch mehr Werte, diese sind aber für die Verwendung mit 3rdparty Anwendungen nicht geeignet)
allUsers: legt fest, wer die Applikation aufrufen darf nur für Admin (false), für alle User (true)
allowMultiInstance: ermöglichst das mehrfache Öffnen der Anwendung, es liegen aber noch keine Erfahrungswerte vor false, true
title: der Titel der Anwendung alphanumerisch
desc: Text, der bei einem mouse-over über dem Icon im DSM erscheint alphanumerisch, evtl. auch UTF–8-Text
icon: das Icon der Anwendung für die 4 Auflösungen (16,24,32,48 Pixel), die Variable {0} wird automatisch mit einer der 4 Auflösungen gefüllt 16, 24, 32, 48
appWindow: hier muss unbedingt der Name der Anwendung, wie im Parameter <unique_name> oben, eingetragen werden alphanumerisch, nötig für type legacy?
width/height: die Breite/Höhe des Anwendungsfensters beim Aufruf in Pixel numerisch
url: die Aufrufadresse der Anwendung, absolute URL oder relativ zu /usr/syno/synoman bzw. /var/services/web (hängt von port ab) relativer Pfad oder absolute URL
protocol: das Protokoll des aufzurufenden links (protocol und port müssen immer zusammen angegeben werden) "http", "https", "ftp"
port: der Port des aufzurufenden Links auf der DS; muss in Anführungszeichen stehen. Wenn nicht angegeben, wird 5000/5001 verwendet numerisch, z.B. "port": "80" (für http), "port": "443" (https), "port": "21" (ftp)

Links

3rd-Party Apps Developer Guide