Modul: Core

Ermöglicht Zugriff auf Informationen zu Apps und Events zwischeneinander.

Die Instanz von AppAccess erhält man über den KnuddelsServer mit KnuddelsServer.getAppAccess()

Methoden

getAllGlobalAppInstances

() GlobalAppInstance[]

Verfügbar ab Version AppServer 20210803-133329

Liefert alle registrierten globalen App-Instanzen dieser User-App zurück.

Rückgabewert:

GlobalAppInstance[]:

Instanz-Objekte der globalen Apps.

Beispiel:

    var globalAppInstance = KnuddelsServer.getAppAccess().getAllGlobalAppInstances();

getAllRunningAppsInChannel

(
  • [includeSelf]
)
AppInstance[]

Verfügbar ab Version AppServer 82904

Liefert die Instanzen aller anderen Apps, die gerade in diesem Channel laufen.

Parameter:

  • [includeSelf] Boolean optional

    true, wenn die eigene Instanz mitgeliefert werden soll (defaut: false)

Rückgabewert:

AppInstance[]:

Instanzen der anderen laufenden Apps

Beispiel:

 var allRunningAppsInChannel = KnuddelsServer.getAppAccess().getAllRunningAppsInChannel();

getGlobalAppInstance

(
  • globalAppId
)
GlobalAppInstance | Null

Verfügbar ab Version AppServer 20210803-133329

Liefert eine registrierte globale App Instanz anhand ihrer ID zurück.

Parameter:

Rückgabewert:

GlobalAppInstance | Null:

Instanz-Objekt der globalen App oder null.

Beispiel:

    var globalAppInstance = KnuddelsServer.getAppAccess().getGlobalAppInstance('myGlobalApp1');

getOwnInstance

() AppInstance

Liefert die Instanz der eigenen App.

Rückgabewert:

AppInstance:

Instanz der eigenen App

Beispiel:

 var ownInstance = KnuddelsServer.getAppAccess().getOwnInstance();

 var logMsg = 'Das ist meine eigene AppUid: ' + ownInstance.getAppInfo().getAppUid();

 KnuddelsServer.getDefaultLogger().info(logMsg);

getRunningAppInChannel

(
  • appId
)
AppInstance | Null

Verfügbar ab Version AppServer 82904

Liefert die Instanzen aller anderen Apps, die gerade in diesem Channel laufen.

Parameter:

Rückgabewert:

AppInstance | Null:

Instanz der anderen laufenden App oder null

Beispiel:

 var runningAppInChannel = KnuddelsServer.getAppAccess().getRunningAppInChannel('12345.test');

registerGlobalApp

(
  • globalAppConfig
)
GlobalAppInstance

Verfügbar ab Version AppServer 20210803-133329

Registriert eine globale App Instanz. Globale Apps werden (auf den meisten Clients) im Menü unter "Spiele und Apps" angezeigt und können dort von Nutzern direkt gestartet werden, ohne dass diese im Channel der App sein müssen.

Hinweis: Diese Methode darf nur von der OwnAppInstance/isRootInstance:method deiner App aufgerufen werden und sie wirft einen Fehler, wenn sie von einer Sub-Instanz aufgerufen wird. Daher sollte zuvor auf OwnAppInstance/isRootInstance:method geprüft werden.

Wird diese Methode mehrmals mit der selben GlobalAppConfig.id aufgerufen, so wird der Eintrag ersetzt. Der empfohlene Weg die Einstellungen einer globalen App zu ändern ist jedoch die Methode GlobalAppInstance.setAppConfig(...).

Parameter:

Rückgabewert:

GlobalAppInstance:

Instanz-Objekt der globalen App.

Beispiel:

try {
    var globalAppConfig = new GlobalAppConfig('game1', 'Mein Spiel', function(user, globalAppInstance) {
        return AppContent.globalContent(new HTMLFile('game1.html'), 400, 400);
    });
    // globalAppConfig.set[...](...); // setze weitere Optionen für diese globale App
    var globalAppInstance = KnuddelsServer.getAppAccess().registerGlobalApp(globalAppConfig);
} catch (e) {
    // Fehlerbehandlung, z.B. loggen oder Nachricht and den Channel-Owner oder App-Entwickler.
}

unregisterGlobalApp

(
  • globalAppId
)
GlobalAppInstance | Null

Verfügbar ab Version AppServer 20210803-133329

Deregistriert eine globale App Instanz. Die App wird dann nicht länger im Menü unter "Spiele und Apps" angezeigt.

Hinweis: Diese Methode darf nur von der OwnAppInstance/isRootInstance:method deiner App aufgerufen werden und sie wirft einen Fehler, wenn sie von einer Sub-Instanz aufgerufen wird. Daher sollte zuvor auf OwnAppInstance/isRootInstance:method geprüft werden.

Die Methode liefert die deregistrierte Instanz zurück, falls diese noch registriert war, ansonsten null.

Parameter:

Rückgabewert:

GlobalAppInstance | Null:

Instanz-Objekt der globalen App oder null.

Beispiel:

    var globalAppInstance = KnuddelsServer.getAppAccess().unregisterGlobalApp('myGlobalApp1');