Integrando o servidor ao Discord
O Discord é onde a comunidade conversa, tira dúvidas e acompanha novidades. Integrá-lo ao servidor de MTA aproxima as duas coisas.
O que dá para integrar
- Status do servidor (online, jogadores) em um canal ou na presença de um bot;
- Logs para a staff: entradas, saídas, punições, transações suspeitas;
- Anúncios automáticos: eventos, reinícios, atualizações;
- Chat espelhado entre o jogo e um canal;
- Vinculação de contas (jogador ↔ Discord) e sincronização de cargos (VIP, facções).
Webhooks: o jeito mais simples
Um webhook do Discord é uma URL que recebe mensagens. O servidor de MTA pode enviar mensagens para ela com fetchRemote:
local WEBHOOK = "https://discord.com/api/webhooks/ID/TOKEN" -- mantenha em segredo!
local function enviarDiscord(texto)
fetchRemote(WEBHOOK, {
method = "POST",
headers = { ["Content-Type"] = "application/json" },
postData = toJSON({ content = texto }, true):sub(2, -2), -- remove os colchetes externos que o toJSON adiciona
}, function() end)
end
addEventHandler("onPlayerJoin", root, function()
enviarDiscord("🟢 " .. getPlayerName(source) .. " entrou no servidor.")
end)
O
toJSONdo MTA envolve o resultado em colchetes ([ ... ]), por isso o:sub(2, -2). Consulte a wiki defetchRemoteetoJSONpara a sua versão. O resource precisa de permissão na ACL para usarfetchRemote.
Use webhooks diferentes para canais diferentes (logs da staff, anúncios).
Bots
Para recursos mais completos (comandos no Discord, vinculação de contas, sincronização de cargos), use um bot do Discord que se comunica com o servidor:
- Pelo banco de dados (o bot lê e grava em tabelas que o servidor também usa);
- Por HTTP (funções de resources expostas com autenticação).
Segurança
- Nunca coloque URLs de webhook ou tokens de bot em scripts de cliente;
- Não publique a URL do webhook — quem tem a URL pode enviar mensagens;
- Não envie IPs, seriais ou dados pessoais para canais públicos;
- Restrinja canais de logs à staff.
Não exagere
Mensagens demais viram ruído. Envie ao Discord o que é realmente útil — e agrupe eventos frequentes.
Hospede seu servidor com a VittHost
No MTASA-BR da VittHost, seu servidor e seu Discord trabalham juntos, com MySQL incluso para bots e integrações. Servidores no Brasil, proteção DDoS, painel Pterodactyl, downloads acelerados por nginx dedicado e teste grátis de 3 dias.