Ir al contenido

Acciones

Una acción es algo que el código le pide a Petto que haga en Discord. Mientras el código corre no se hace nada: las acciones se recogen, y Petto las hace cuando el código termina, solo las que tiene permitido hacer.

Cada función de acción devuelve nil, así que no imprime nada. Escribir la llamada en una acción es suficiente:

{{ sendMessage nil "Hola" }}
Función Qué pide Límite por ejecución
sendMessage canal mensaje Enviar un mensaje. canal es el ID de un canal como texto, o nil para el canal donde se usó el comando 5
sendDM mensaje Enviar un mensaje directo a quien usó el comando 2
addRole "idDelRol" Dar un rol a quien usó el comando 5
removeRole "idDelRol" Quitarle un rol a esa persona 5
addReaction "emoji" Reaccionar al mensaje que usó el comando 5
deleteTrigger Borrar el mensaje que usó el comando 1
respond mensaje / respond mensaje true Responder a un botón o a un menú, en público o solo a quien lo usó (solo funciona en un botón o un menú) 1
updateMessage mensaje Cambiar el mensaje en el que está un botón (solo funciona en un botón o un menú) 1, y no junto con respond

mensaje es un texto (de hasta 2000 caracteres), un cembed o un complexMessage (Embeds), que también puede contener botones y menús (Botones y menús). Un mensaje directo no puede tener botones. Un mensaje vacío es un error. Si el código pasa un límite de acciones, se detiene con ese error.

Además de las acciones, el texto que imprime el código se envía como respuesta del comando, en el canal donde se usó. Si solo quieres acciones, no imprimas nada.

Qué comprueba Petto antes de hacer una acción

Sección titulada «Qué comprueba Petto antes de hacer una acción»
  • Canales: un mensaje a otro canal solo se envía si Petto puede enviar ahí y la persona que usó el comando también puede enviar ahí, así que un comando nunca sirve para escribir donde esa persona no podría.
  • Roles: el rol debe existir, no ser un rol de bot o de integración, estar por debajo del rol más alto de Petto, y Petto necesita el permiso Gestionar roles. Un rol con permisos de moderación o de servidor (Administrador, Gestionar servidor, Gestionar roles, Gestionar canales, Gestionar webhooks, Gestionar mensajes, Banear, Expulsar, Aislar temporalmente o Mencionar a todos) nunca lo da ni lo quita un comando.
  • Menciones: solo se menciona a los usuarios y roles que el código nombra a propósito, y un rol solo si se puede mencionar. @everyone y @here nunca mencionan.
  • Mensajes directos: si la persona los tiene cerrados, se omite.
  • Borrar: deleteTrigger solo funciona si Petto puede gestionar mensajes en ese canal. Se hace al final, después de la respuesta.
  • Enfriamiento: la misma persona puede usar el mismo comando una vez cada 2 segundos.

Si una acción no se hace, Petto dice por qué en un mensaje corto después de la respuesta.