Bizarrus
| 31. Aug 2017 | 0 Kommentare

Globalen KnuddelAccount Nutzen

Durch der zusätzlichen UserApps KnuddelAccount kann das KnuddelAccounting vereinfacht werden. Besonders, wenn man mehrere UserApps mit ein und der selben Ein- sowie Auszahlung verwenden möchte.

Die API

Wir haben mehrere Methoden, die wir mit dem globalen Accounting ansprechen können:

    1. KnuddelAccountAPI.validateRequest(instance);
    2. KnuddelAccountAPI.onResponse(instance, type, data);
    3. KnuddelAccountAPI.getAppBot();
    4. KnuddelAccountAPI.getKnuddelAmount(user, callback, amount);
    5. KnuddelAccountAPI.use(user, amount, reason, callback_success, callback_error);

Die nachfolgende API sollte nicht verändert werden, da diese nur als Kommunikationsgrundlage dient und mit der UserApp KnuddelAccount kommuniziert. Jede Veränderung kann die Lauffähigkeit beeinträchtigen.


Download der API:

KnuddelAccount.API.js

Änderungen des AppContainers

Im AppContainer (main.js) müssen folgende Methoden hinzugefügt werden. Hier ein komplettes Beispiel einer App:

  1. // Die API wird eingebunden (siehe obere Sektion)
  2. require('classes/KnuddelAccount.API.js');
  3.  
  4. // Unsere App
  5. var App = (new function AppContainer() {
  6.         // Wenn eine andere App etwas zu uns sendet,...
  7.         this.onAppEventReceived = function onAppEventReceived(instance, type, data) {
  8.                 // Validiere das AppEvent, prüfe ob es vom globalen KnuddelAccount kommt...
  9.                 if(KnuddelAccountAPI.validateRequest(instance)) {
  10.                         // Wenn ja, Leite weiter...
  11.                         KnuddelAccountAPI.onResponse(instance, type, data);
  12.                         return;
  13.                 }
  14.         };
  15.        
  16.         // Wenn sich die Knuddel-Anzahl des Nutzers geändert hat
  17.         this.onKnuddelAccountChanged = function onKnuddelAccountChanged(user, amount) {
  18.                 user.sendPrivateMessage('Dein KnuddelAccount hat sich geändert: ' + amount.asNumber());
  19.         };
  20.        
  21.         this.chatCommands = {
  22.                 // Zeige mein aktuellen Kontostand...
  23.                 MeineKnuddel: function MeineKnuddel(user, params) {
  24.                         KnuddelAccountAPI.getKnuddelAmount(user, function onSuccess(user, amount) {
  25.                                 user.sendPrivateMessage('Dein Amount: ' + amount.asNumber());
  26.                         });
  27.                 },
  28.                 // Nutzer XXX Knuddel für das Spiel...
  29.                 BenutzeKnuddel: function MeineKnuddel(user, params) {
  30.                         KnuddelAccountAPI.use(user, new KnuddelAmount(params), 'Spiel', function onSuccess(user, amount) {
  31.                                 user.sendPrivateMessage('Spiel startet...');
  32.                         }, function onError(user) {
  33.                                 user.sendPrivateMessage('Spiel konnte _nicht_ gestartet werden... Zahle ein: °>/appknuddel ' + KnuddelAccountAPI.getAppBot() + '<°');
  34.                         });
  35.                 }
  36.         }
  37. }());

0 Kommentare zum Tutorial