https://i.hizliresim.com/gou8gb4.gif https://i.hizliresim.com/gou8gb4.gif

Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

FiveM WEBHOOK ARACILIĞI İLE LOG TUTMA

Katılım
23 Tem 2021
Mesajlar
430
Merhabalar

Sizlere herhangi bir eklentinin, istediğiniz verisinin logunu tutmayı öğreteceğim.

Bilginizin yeteceğini düşünmüyorsanız eklentinin yedeğini almanızı tavsiye ederim.
Paylaşacağım fonksiyon bir eklenti değil, kopyala yapıştır mantığı ile çalışmaz.
Logunu tutmak istediğiniz veriye göre uyarlamanız gerekmekte.


Bu kodu logunu tutmak istediğiniz eklentinin sunucu tarafındaki herhangi bir dosyanın alt kısmına yapıştırmanız yeterli.

Kod:
Kod:
function dclog(xPlayer, text)
local playerName = Sanitize(xPlayer.getName())

local discord_webhook = "WEBHOOK"
if discord_webhook == '' then
return
end
local headers = {
['Content-Type'] = 'application/json'
}
local data = {
["username"] = "USERNAME",
["avatar_url"] = "AVATAR_URL",
["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
Mantığı kavramanız açısından logunu tuttuğum bir eklentinin örnek bir eventi.

Kod:
Kod:
RegisterServerEvent("esx_newDrugs:reward")
AddEventHandler("esx_newDrugs:reward",function(amount,typed)
local xPlayer = ESX.GetPlayerFromId(source)

if xPlayer.canCarryItem(typed.."brick", math.ceil(amount)) then
xPlayer.addInventoryItem(typed.."brick",math.ceil(amount))
dclog(xPlayer, '**'..math.ceil(amount)..'x '..typed..'brick** elde etti.' )
else
TriggerClientEvent('mythic_notify:client:SendAlert', xPlayer.source, { type = 'error', text = 'Daha fazla taşıyamazsın!'})
end
end)
Fonksiyonun ihtiyaç duyduğu iki tür veri bulunmakta.
Eylemi gerçekleştiren oyuncu ve loga düşecek metin.
Metni istediğiniz şekilde düzenleyebilirsiniz.
 
Geri
Üst