core.jobs.openrpc #
fn new_ws_server #
fn new_ws_server(port int) !&WSServer
Create new WebSocket server
fn server_start #
fn server_start() !
Create new OpenRPC server with Redis connection
struct OpenRPCRequest #
struct OpenRPCRequest {
pub mut:
jsonrpc string @[required]
method string @[required]
params []string
id int @[required]
}
Generic OpenRPC request/response structures
struct OpenRPCResponse #
struct OpenRPCResponse {
pub mut:
jsonrpc string @[required]
result string
error string
id int @[required]
}
struct OpenRPCServer #
struct OpenRPCServer {
mut:
redis &redisclient.Redis
queue &redisclient.RedisQueue
runner &model.HeroRunner
}
Generic OpenRPC server that handles all managers
fn (OpenRPCServer) handle_request_agent #
fn (mut h OpenRPCServer) handle_request_agent(request OpenRPCRequest) !OpenRPCResponse
fn (OpenRPCServer) handle_request_group #
fn (mut h OpenRPCServer) handle_request_group(request OpenRPCRequest) !OpenRPCResponse
fn (OpenRPCServer) handle_request_job #
fn (mut h OpenRPCServer) handle_request_job(request OpenRPCRequest) !OpenRPCResponse
fn (OpenRPCServer) handle_request_service #
fn (mut h OpenRPCServer) handle_request_service(request OpenRPCRequest) !OpenRPCResponse
fn (OpenRPCServer) start #
fn (mut s OpenRPCServer) start() !
Start the server and listen for requests
struct WSServer #
struct WSServer {
mut:
redis &redisclient.Redis
queue &redisclient.RedisQueue
port int = 8080 // Default port, can be configured
}
WebSocket server that receives RPC requests
fn (WSServer) start #
fn (mut s WSServer) start() !
Start the WebSocket server