AI Core
API başvurusuAI Core: server export’ları

Loglar

Resource’unun loglarını ai-core üzerinden Discord’a, Fivemanage’e, FiveM Stats’e ve konsola gönder ve log kanallarını tanımla.

Her resource ai-core üzerinden loglar. Resource’un bir kanal adı verir (purchases, robberies) ve bir mesaj yazar; nereye gideceğine ai-core karar verir. Sunucu sahibi sağlayıcıları admin panelinde açar (konsol, Discord, Fivemanage, FiveM Stats), en düşük seviyeyi ayarlar ve resource ve kanal başına Discord webhook url’lerini yapıştırır. Bir resource asla kendisi bir webhook’a ya da log servisine gönderim yapmaz ve asla bir webhook url’si tutmaz.

İlgili oyuncuları adlarını mesaja yazmak yerine source ve target olarak ver: ai-core her oyuncunun adını, karakterini, citizen id’sini ve tanımlayıcılarını ekler (IP’yi yalnızca panel izin verdiğinde).

Log

Resource’unun tek bir log kaydını gönderir.

Taraf: Server · Bekler: hayır · Lib: aiLog(channel, message, options?) (Lua: aiLib.aiLog; ai-core çalışmıyorken ikisi de bunun yerine konsola yazar)

İmza
Log(channel: string, message: string, options?: LogOptions): void
Lua
exports['ai-core']:Log('purchases', 'Bought a car', { source = source, metadata = { price = 25000 } })

Parametreler

Prop

Type

LogOptions

Prop

Type

Bkz. LogOptions ve LogLevel.

Dönüş değeri

Hiçbir şey. Seviyesi panelin en düşük seviyesinin altındaysa ya da kanalı LogChannels ile kapatılmışsa kayıt sessizce atılır.

Örnek

import { onClientCallback, resourceExport } from "@aicore-fivem/lib/server";
import { fail } from "@aicore-fivem/lib/shared";

const core = resourceExport("ai-core");

onClientCallback("myscript:buyCar", { lock: true }, (source) => {
  const price = 25_000;
  if (!core.RemoveMoney(source, "bank", price, "car_purchase")) return fail("NOT_ENOUGH_MONEY");
  // ... arabayı oluştur ve sakla
  core.Log("purchases", "Bought a car", { source, metadata: { model: "sultan", price } });
  return { ok: true };
});

Loglar sunucu sahibi içindir, bu yüzden mesaj İngilizce kalır ve çevrilmez. Mesajı kısa tut ve değerleri log servislerinin süzebileceği metadata içine koy.

LogChannels

Resource’unun kanallarını tanımlar: Fivemanage ve FiveM Stats için dataset adlarını ve her birinin açık olup olmadığını. Resource’un başladığında bir kez çağır. Hiç tanımlamadığın kanallar varsayılanlarla çalışmaya devam eder.

Taraf: Server · Bekler: hayır · Lib: aiLogChannels(channels)

İmza
LogChannels(channels: Record<string, LogChannel>): void
Lua
exports['ai-core']:LogChannels({ purchases = { dataset = 'myscript-sales' }, debug = { active = false } })

Parametreler

Prop

Type

LogChannel

Prop

Type

Bkz. LogChannel.

Dönüş değeri

Hiçbir şey. İkinci bir çağrı resource’unun tüm tanımını değiştirir. Resource’un durduğunda silinir. Tablo olmayan bir değer hiçbir şey yapmaz.

Örnek

import { resourceExport } from "@aicore-fivem/lib/server";

const core = resourceExport("ai-core");

// Açılışta bir kez.
core.LogChannels({
  purchases: { dataset: "myscript-sales" },
  robberies: { dataset: "myscript-crime" },
  debug: { active: false },
});

Webhook url’leri asla buraya ya da resource’unun herhangi bir yerine girmez: sunucu sahibi onları ai-core’un panelinde ayarlar, panel de onları paylaşılmayan bir dosyada tutar.

Bu sayfada