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 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 (Priorität 1. config, 2. application.cfg)
  • 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"
        }
    }
}

Erklärung der Schlüsselwörter

Parameter Beschreibnung Wert/Typ/Beispiel
<unique_name>: eindeutiger Name, z.B. SYNO.SDS._ThirdParty.App.<Anwendungsname> alphanumerisch
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
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
width/height: die Breite/Höhe des Anwendungsfensters beim Aufruf in Pixel numerisch
url: die Aufrufadresse der Anwendung, relativ zu /usr/syno/synoman Pfad

Links

3rd-Party Apps Developer Guide