Zum Artikel springen
NeuraCoreBenutzer-Wiki
← Zurück zum Kapitel
Eingebettetes Python

Die Antwort lesen, und eine Ablehnung lesen

Jeder Aufruf antwortet. Die beiden Formen einer Antwort zu verstehen macht ein zuverlässiges Skript aus.

Ein Ergebnis sind Daten

Fast jede Aktion antwortet mit einem Wörterbuch oder einer Liste davon. Gib es einmal aus, um zu sehen, was darin steht, und lies dann das Feld, das du willst.

Eine Ablehnung ist eine Ausnahme

Eine abgelehnte Aktion antwortet nicht mit "nein": sie wirft PermissionError, was das Skript beendet, wenn du sie nicht auffängst.

try:
    avatar.pay_linden_dollars("00000000-0000-0000-0000-000000000000", "Someone Resident", 10)
except PermissionError as refusal:
    print("refused:", refusal)
  • try führt die riskante Zeile aus, except fängt die Ablehnung.
  • Die Meldung nennt die Aktion und den Grund.
  • Es ist dieselbe Ausnahme, ob die Aktion in Action Permissions ausgeschaltet war oder von der Lizenz abgelehnt wurde.

Drei Gründe für ein unerwartetes Ergebnis

  • Abgelehnt: PermissionError, und die Meldung nennt die Aktion.
  • Nichts zu antworten: der Aufruf gelingt, das Ergebnis ist leer, weil der Avatar offline ist oder die Region die Angabe noch nicht gesendet hat.
  • Nichts geschah, ohne Fehler: der Avatar war schon in dem gewünschten Zustand. Die Ausführungshistorie meldet genau dafür "keine Änderung".

Wo danach zu schauen ist

Automation, Execution History listet jeden Aufruf mit Aufrufer, Ergebnis und Zeit. Die Registerkarte Fehler sammelt, was nicht ging, in klaren Worten, eine Zeile je Problem. Ein Skript kann dieselbe Liste lesen.

report = avatar.get_errors(limit=20)

for problem in report["errors"]:
    print(problem["area"], problem["operation"], problem["occurrences"])