Ir al artículo
NeuraCoreWiki de usuario
← Volver al capítulo
Python integrado

Leer la respuesta, y leer un rechazo

Toda llamada responde. Entender las dos formas de una respuesta es casi todo lo que hace fiable a un script.

Un resultado son datos

Casi todas las acciones responden con un diccionario o una lista de ellos. Imprímelo una vez para ver qué lleva dentro y luego lee el campo que quieras.

Un rechazo es una excepción

Una acción rechazada no responde "no": lanza PermissionError, que detiene el script si no lo capturas.

try:
    avatar.pay_linden_dollars("00000000-0000-0000-0000-000000000000", "Someone Resident", 10)
except PermissionError as refusal:
    print("refused:", refusal)
  • try ejecuta la línea arriesgada y except captura el rechazo.
  • El mensaje dice qué acción y por qué.
  • Es la misma excepción tanto si la acción estaba desactivada en Action Permissions como si la rechazó la licencia.

Tres motivos para un resultado inesperado

  • Rechazado: PermissionError, y el mensaje nombra la acción.
  • Nada que responder: la llamada tiene éxito pero el resultado está vacío, porque el avatar está desconectado o la región aún no ha enviado el dato.
  • No pasó nada, sin error: el avatar ya estaba en el estado pedido. El historial de ejecución lo marca como sin cambio.

Dónde mirar después

Automation, Execution History lista cada llamada con su autor, su resultado y la hora. La pestaña Errores reúne lo que no funcionó, en palabras claras, una fila por problema. Un script puede leer esa misma lista.

report = avatar.get_errors(limit=20)

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