KubeMQ
Client SDKsNode.jsReference

RPC

Commands and queries — KubeMQ Node.js SDK reference.

Commands and queries share message factories (createCommand, createQuery). Responses are strongly typed CommandResponse / QueryResponse objects.

Commands

sendCommand

const response = await client.sendCommand(command: CommandMessage): Promise<CommandResponse>

CommandMessage (via createCommand()):

FieldTypeRequiredDescription
channelstringYesTarget channel
bodystring | Uint8ArrayConditionalPayload
metadatastringConditionalMetadata
timeoutInSecondsnumberYesRPC timeout
tagsRecord<string, string>NoTags

subscribeToCommands

client.subscribeToCommands(subscription: CommandSubscription): Subscription

sendCommandResponse

await client.sendCommandResponse(response: CommandResponse): Promise<void>

Queries

sendQuery

const response = await client.sendQuery(query: QueryMessage): Promise<QueryResponse>

QueryMessage (via createQuery()) extends command fields with:

FieldTypeDescription
cacheKeystringCache key
cacheTtlInSecondsnumberTTL seconds

subscribeToQueries

client.subscribeToQueries(subscription: QuerySubscription): Subscription

sendQueryResponse

await client.sendQueryResponse(response: QueryResponse): Promise<void>

Quick Usage

rpc.ts
const response = await client.sendCommand(
  createCommand({
    channel: "svc.commands",
    body: Buffer.from("ping"),
    timeoutInSeconds: 5,
  }),
);

See Also

Was this page helpful?

On this page