LexoNETDocs
Docs 0.6.0Anmelden
Scripts

lexo_bridge: Exports

Mit den Exports senden eigene Ressourcen Ereignisse an LexoNET und nehmen Befehle aus dem MDT an. Alle Exports laufen serverseitig. Prüfe vorher, ob die Bridge läuft.

#Exports (Server)

ExportBeschreibung
Send(type, data)Ereignis an LexoNET senden; wird gepuffert und nach Bestätigung gelöscht
OnCommand(type, handler)Handler für einen Befehl aus dem MDT registrieren
VehicleUpsert(vehicle)Einzelnes Fahrzeug melden: { plate, owner, model, label }
Identifier(source)Identifier des Charakters, den die Bridge gemeldet hat
Status(){ configured, lastStatus }

#Ereignis senden

Lua
if GetResourceState('lexo_bridge') == 'started' then
    exports.lexo_bridge:Send('medic.revive', { identifier = id, by = medicId })
end

Eigene Ereignistypen tragen ein Präfix je Modul, zum Beispiel medic. oder garage.. LexoNET speichert auch Typen, die es noch nicht kennt.

#Befehl annehmen

Lua
exports.lexo_bridge:OnCommand('meinbefehl', function(data)
    local src = exports.lexo_core:GetSource(data.identifier)
    if not src then return false, 'offline' end
    CreateThread(function()
        -- längere Arbeit hier
    end)
    return true
end)

Der Handler darf nicht warten. Er gibt sofort true oder false, 'grund' zurück; längere Arbeit läuft in einem eigenen Thread. Wird ein Befehl nicht quittiert, gibt LexoNET ihn nach 60 Sekunden erneut aus.

#Gesendete Ereignisse

TypQuelle
server.started, citizen.online, citizen.offline, job.changed, vehicle.upsertlexo_bridge
duty.started, duty.ended, job.stafflexo_core
police.fine, police.jail, police.release, police.jail_failedlexo_police

Datenformate stehen in der Game API v1.