Skip to content

Server Tablet

File: server/tablet.lua

Server-side tablet handlers — app registry, settings/apps/data persistence, message routing.

Responsibilities

  • Handle app open/close/message events
  • Route messages between registered server apps
  • Persist settings, installed apps, and app data to MySQL
  • Provide exports for other resources

Events

EventHandler
wtf_group:server:tablet:openAppNotifies registered app handlers
wtf_group:server:tablet:closeAppNotifies registered app handlers
wtf_group:server:tablet:sendMessageRoutes message to registered app
wtf_group:server:tablet:broadcastMessageBroadcasts to all clients
wtf_group:server:tablet:syncAppsSends registered apps to client
wtf_group:server:tablet:loadSettingsLoads settings from DB
wtf_group:server:tablet:saveSettingsSaves settings to DB
wtf_group:server:tablet:loadInstalledAppsLoads installed apps from DB
wtf_group:server:tablet:saveInstalledAppsSaves installed apps to DB
wtf_group:server:tablet:setAppDataSaves app data to DB
wtf_group:server:tablet:getAppDataLoads app data from DB
wtf_group:server:tablet:getAllAppDataLoads all data for an app
wtf_group:server:tablet:deleteAppDataDeletes app data from DB

NUI Callbacks

CallbackDescription
tablet:setAppDataSave app data (backward compat)
tablet:getAppDataGet app data (backward compat)
tablet:getAllAppDataGet all app data (backward compat)

Exports

App Registration

lua
exports['wtf_group']:RegisterServerApp({
    id = 'my_app',
    onMessage = function(src, messageType, data) ... end,
    onOpen = function(src) ... end,
    onClose = function(src) ... end,
})
exports['wtf_group']:UnregisterServerApp(appId)
exports['wtf_group']:GetRegisteredServerApps() → table

Messaging

lua
exports['wtf_group']:SendToClient(playerSource, appId, messageType, data)
exports['wtf_group']:SendNotification(playerSource, title, message, type, duration)
exports['wtf_group']:SendAppNotification(playerSource, appId, title, message, type, duration)
exports['wtf_group']:BroadcastToAll(appId, messageType, data)

App Data

lua
exports['wtf_group']:SetAppData(citizenid, appId, key, value)
exports['wtf_group']:GetAppData(citizenid, appId, key)
exports['wtf_group']:DeleteAppData(citizenid, appId, key)
exports['wtf_group']:GetAllAppData(citizenid, appId)

Helper

lua
GetPlayerCitizenId(src) → citizenid
-- Auto-detects framework (QBX > QBCore > ESX > fallback to tostring(src))

AIFAZI — FiveM Resources