Pular para o conteúdo

Ações

Uma ação é algo que o código pede ao Petto para fazer no Discord. Enquanto o código roda nada é feito: as ações são coletadas, e o Petto as faz quando o código termina, apenas as que ele tem permissão para fazer.

Cada função de ação devolve nil, então não imprime nada. Escrever a chamada em uma ação é suficiente:

{{ sendMessage nil "Olá" }}
Função O que pede Limite por execução
sendMessage canal mensagem Enviar uma mensagem. canal é o ID de um canal como texto, ou nil para o canal onde o comando foi usado 5
sendDM mensagem Enviar uma mensagem direta a quem usou o comando 2
addRole "idDoCargo" Dar um cargo a quem usou o comando 5
removeRole "idDoCargo" Tirar um cargo dessa pessoa 5
addReaction "emoji" Reagir à mensagem que usou o comando 5
deleteTrigger Apagar a mensagem que usou o comando 1
respond mensagem / respond mensagem true Responder a um botão ou a um menu, em público ou só a quem o usou (só funciona em um botão ou um menu) 1
updateMessage mensagem Mudar a mensagem em que um botão está (só funciona em um botão ou um menu) 1, e não junto com respond

mensagem é um texto (de até 2000 caracteres), um cembed ou um complexMessage (Embeds), que também pode conter botões e menus (Botões e menus). Uma mensagem direta não pode ter botões. Uma mensagem vazia é um erro. Se o código passar de um limite de ações, ele para com esse erro.

Além das ações, o texto que o código imprime é enviado como resposta do comando, no canal onde foi usado. Se você só quer ações, não imprima nada.

  • Canais: uma mensagem para outro canal só é enviada se o Petto puder enviar lá e a pessoa que usou o comando também puder enviar lá, então um comando nunca serve para escrever onde essa pessoa não poderia.
  • Cargos: o cargo deve existir, não ser um cargo de bot ou de integração, estar abaixo do cargo mais alto do Petto, e o Petto precisa da permissão Gerenciar cargos. Um cargo com permissões de moderação ou de servidor (Administrador, Gerenciar servidor, Gerenciar cargos, Gerenciar canais, Gerenciar webhooks, Gerenciar mensagens, Banir, Expulsar, Silenciar temporariamente ou Mencionar todos) nunca é dado nem retirado por um comando.
  • Menções: só são mencionados os usuários e cargos que o código cita de propósito, e um cargo só se for mencionável. @everyone e @here nunca mencionam.
  • Mensagens diretas: se a pessoa as tem fechadas, são ignoradas.
  • Apagar: deleteTrigger só funciona se o Petto puder gerenciar mensagens naquele canal. É feito por último, depois da resposta.
  • Intervalo: a mesma pessoa pode usar o mesmo comando uma vez a cada 2 segundos.

Se uma ação não for feita, o Petto diz por quê em uma mensagem curta depois da resposta.