Script/Mod İstenilen veriyi discorda webhook aracılığıyla loglama

mod

Moderator
Paylaştığım kodlar bir script değildir, direk at start ver şeklinde çalışmaz, log almak istediğiniz kısıma kodu uyarlamanız gerekir.

Log tuttuğum örnek bir event:
Kod:
RegisterServerEvent('m3:shoprobbery:giveMoney')
AddEventHandler('m3:shoprobbery:giveMoney', function(money)
local _source = source
local xPlayer = ESX.GetPlayerFromId(_source)

xPlayer.addMoney(money)
TriggerClientEvent('mythic_notify:client:SendAlert', _source, { type = 'inform', text = 'Kasadan ' .. money .. '$ çıktı!', length = 4000})
if Config.EnableDiscordLog then
dclog(xPlayer, 'Market kasasını açmayı başardı. **Kazanç**: '..money..'$')
end
end)
Gelen log:
1591626255709.png



Server dosyasının en altına yazmanız gereken fonksiyon:
Kod:
function dclog(xPlayer, text)
local playerName = Sanitize(xPlayer.getName())

local discord_webhook = "webhook url si"
if discord_webhook == '' then
return
end
local headers = {
['Content-Type'] = 'application/json'
}
local data = {
["username"] = "Cloudfivem Log Sistemi",
["avatar_url"] = "mesajı paylaşanın avatar url si sunucu logosunu koyabilirsiniz",
["embeds"] = {{
["author"] = {
["name"] = playerName .. ' - ' .. xPlayer.identifier
},
["color"] = 1942002,
["timestamp"] = os.date("!%Y-%m-%dT%H:%M:%SZ")
}}
}
data['embeds'][1]['description'] = text
PerformHttpRequest(discord_webhook, function(err, text, headers) end, 'POST', json.encode(data), headers)
end

function Sanitize(str)
local replacements = {
['&' ] = '&',
['<' ] = '&lt;',
['>' ] = '&gt;',
['\n'] = '<br/>'
}

return str
:gsub('[&<>\n]', replacements)
:gsub(' +', function(s)
return ' '..('&nbsp;'):rep(#s-1)
end)
end
Fonksiyonun ihtiyaç duyduğu 2 veri var işlemi yapan player ve loga düşecek metin. Metni isteğinize göre şekillendirebilirsiniz. Eğer kod bilginiz yoksa eklemeden önce yedek almanızı tavsiye ederim.
 

Bu Konuyu Kimler Görüntülüyor Konu (Kullanıcı: 0, Misafir: 1)

Üst