Existe uma maneira de criar um bot no Discourse que responda aos meus comandos, de forma semelhante a como construí muitos dos meus bots do Discord?
Basicamente, sei que existem vários plugins que posso instalar, mas na minha opinião, seria muito mais fácil para mim manter se eu pudesse ter um bot que pudesse ouvir o texto em um comentário em vez de tentar instalar plugins que são propensos a causar problemas e especialmente se o mantenedor decidir que não quer mais manter o plugin.
Dê uma olhada no meu plugin Frotz como exemplo/ponto de partida
Plugins apenas de API como este tendem a ser mais estáveis ao longo do tempo, então não se preocupe com instabilidade. Todo código requer manutenção em qualquer caso. Fiz alterações mínimas no Frotz-bot ao longo do tempo.
Dê uma olhada no meu plugin de bot do Discord para ver como você pode escrever código contra eventos como novas postagens:
Suas necessidades podem ser atendidas por:
Se você quiser mais controle sobre o destino do código, mantenha um fork/repositório você mesmo.
Se você realmente quiser que seja totalmente separado, você pode usar uma combinação de webhooks para entregar eventos ao seu bot e a API de requisições HTTP para que seu bot faça alterações no Discourse.
Como @merefield alude, é possível criar plugins que não substituem a funcionalidade principal, sendo notificados para eventos e interagindo com as APIs principais, que são mais fáceis de manter e menos propensos a ter efeitos colaterais indesejados.
Seguir a rota de webhooks/API também requer a configuração de uma stack para executar seu bot e garantir que ele esteja sempre disponível enquanto o Discourse estiver disponível, ambos os quais vêm gratuitamente com um plugin carregado no Discourse.
Escrever um plugin exigiria aprender Ruby e obter alguma familiaridade com as classes do Discourse, mas se você já é capaz de escrever e manter um bot em outra linguagem, tenho certeza de que você poderia aprender o necessário rapidamente.
isso pode ser feito na postagem/comentário,
é possível ter um bot em um chat em grupo?
Eu vejo que há um webhook de entrada que pode entregar mensagens para um chat em grupo,
mas parece que não há como ter uma conta de bot que ouça as mensagens do chat e, em seguida, faça algo de acordo…?
com um plugin, ele poderia adicionar um manipulador/ouvinte de eventos para mensagens de chat em grupo.
Eu tenho um servidor de endpoint REST que lida com os eventos de webhook, o que funciona bem para adicionar um bot à postagem/comentário.
mas, infelizmente, não há eventos disparados para mensagens de chat em grupo, não funciona dessa maneira…