st.callback — Client/Server Callbacks
Registering a callback
Server:
lua
st.callback.register('myResource:myCallback', function(source, arg1, arg2)
-- process and return
return result1, result2
end)Client:
lua
st.callback.register('myResource:myCallback', function(arg1, arg2)
-- process and return
return result1, result2
end)Triggering a callback
Client → Server (await, blocking):
lua
local result1, result2 = st.callback.await('myResource:myCallback', false, arg1, arg2)
-- Second arg is optional delay (number) or false for no delayClient → Server (non-blocking, with callback function):
lua
st.callback('myResource:myCallback', false, function(result1, result2)
-- handle response
end, arg1, arg2)Server → Client (await, blocking):
lua
local result = st.callback.await('myResource:myCallback', source, arg1)Server → Client (non-blocking):
lua
st.callback('myResource:myCallback', source, function(result)
-- handle response
end, arg1)Convars
| Convar | Default | Description |
|---|---|---|
st:callbackTimeout | 300000 | Callback timeout in ms |
st:debugCallbackSizes | 0 | Enable size logging (1 = on) |
st:debugCallbackSizesMin | 0 | Minimum bytes to log |