ServerMqtt

  
class ServerMqtt extends Server implements CustomTransportStrategy {
  constructor(options: MqttClientOptions & { url?: string; serializer?: Serializer<any, any>; deserializer?: Deserializer<any, any>; subscribeOptions?: { qos: QoS; nl?: boolean; rap?: boolean; rh?: number; }; userProperties?: Record<...>; })
  transportId: Transport.MQTT
  protected mqttClient: MqttClient
  listen(callback: (err?: unknown, ...optionalParams: unknown[]) => void)
  start(callback: (err?: unknown, ...optionalParams: unknown[]) => void)
  bindEvents(mqttClient: MqttClient)
  close()
  createMqttClient(): MqttClient
  getMessageHandler(pub: MqttClient): Function
  handleMessage(channel: string, buffer: Buffer, pub: MqttClient, originalPacket?: Record<string, any>): Promise<any>
  getPublisher(client: MqttClient, pattern: any, id: string): any
  parseMessage(content: any): ReadPacket & PacketId
  matchMqttPattern(pattern: string, topic: string)
  getHandlerByPattern(pattern: string): MessageHandler | null
  removeHandlerKeySharedPrefix(handlerKey: string)
  getRequestPattern(pattern: string): string
  getReplyPattern(pattern: string): string
  handleError(stream: any)
  protected initializeSerializer(options: MqttClientOptions & { url?: string; serializer?: Serializer<any, any>; deserializer?: Deserializer<any, any>; subscribeOptions?: { qos: QoS; nl?: boolean; rap?: boolean; rh?: number; }; userProperties?: Record<...>; })

  // inherited from nest/packages/microservices/Server
  protected messageHandlers: Map<string, MessageHandler>
  protected logger: LoggerService
  protected serializer: ConsumerSerializer
  protected deserializer: ConsumerDeserializer
  addHandler(pattern: any, callback: MessageHandler<any, any, any>, isEventHandler: boolean = false, extras: Record<string, any> = {})
  getHandlers(): Map<string, MessageHandler>
  getHandlerByPattern(pattern: string): MessageHandler | null
  send(stream$: Observable<any>, respond: (data: WritePacket<any>) => unknown): Subscription
  handleEvent(pattern: string, packet: ReadPacket<any>, context: BaseRpcContext<unknown[]>): Promise<any>
  transformToObservable(resultOrDeferred: any)
  getOptionsProp<T extends MicroserviceOptions['options'], K extends keyof T>(obj: T, prop: K, defaultValue: T[K] = undefined)
  protected handleError(error: string)
  protected loadPackage<T = any>(name: string, ctx: string, loader?: Function): T
  protected initializeSerializer(options: { url?: string; maxSendMessageLength?: number; maxReceiveMessageLength?: number; maxMetadataSize?: number; keepalive?: { keepaliveTimeMs?: number; keepaliveTimeoutMs?: number; keepalivePermitWithoutCalls?: number; http2MaxPingsWithoutData?: number; http2MinTimeBetweenPingsMs?: number; http2MinPingIntervalWithoutData...)
  protected initializeDeserializer(options: { url?: string; maxSendMessageLength?: number; maxReceiveMessageLength?: number; maxMetadataSize?: number; keepalive?: { keepaliveTimeMs?: number; keepaliveTimeoutMs?: number; keepalivePermitWithoutCalls?: number; http2MaxPingsWithoutData?: number; http2MinTimeBetweenPingsMs?: number; http2MinPingIntervalWithoutData...)
  protected getRouteFromPattern(pattern: string): string
  protected normalizePattern(pattern: MsPattern): string
}

Constructor


constructor(options: MqttClientOptions & { url?: string; serializer?: Serializer<any, any>; deserializer?: Deserializer<any, any>; subscribeOptions?: { qos: QoS; nl?: boolean; rap?: boolean; rh?: number; }; userProperties?: Record<...>; })

Parameters

Option Type Description
options MqttClientOptions & { url?: string; serializer?: Serializer; deserializer?: Deserializer; subscribeOptions?: { qos: QoS; nl?: boolean; rap?: boolean; rh?: number; }; userProperties?: Record<...>; }

Properties

Property Description
transportId: Transport.MQTT Read-only.
protected mqttClient: MqttClient

Methods

listen()


listen(callback: (err?: unknown, ...optionalParams: unknown[]) => void)

Parameters

Option Type Description
callback (err?: unknown, ...optionalParams: unknown[]) => void

start()


start(callback: (err?: unknown, ...optionalParams: unknown[]) => void)

Parameters

Option Type Description
callback (err?: unknown, ...optionalParams: unknown[]) => void

bindEvents()


bindEvents(mqttClient: MqttClient)

Parameters

Option Type Description
mqttClient MqttClient

close()


close()

Parameters

There are no parameters.

createMqttClient()


createMqttClient(): MqttClient

Parameters

There are no parameters.

Returns

MqttClient

getMessageHandler()


getMessageHandler(pub: MqttClient): Function

Parameters

Option Type Description
pub MqttClient

Returns

Function

handleMessage()


handleMessage(channel: string, buffer: Buffer, pub: MqttClient, originalPacket?: Record<string, any>): Promise<any>

Parameters

Option Type Description
channel string
buffer Buffer
pub MqttClient
originalPacket Record

Optional. Default is undefined.

Returns

Promise<any>

getPublisher()


getPublisher(client: MqttClient, pattern: any, id: string): any

Parameters

Option Type Description
client MqttClient
pattern any
id string

Returns

any

parseMessage()


parseMessage(content: any): ReadPacket & PacketId

Parameters

Option Type Description
content any

Returns

ReadPacket & PacketId

matchMqttPattern()


matchMqttPattern(pattern: string, topic: string)

Parameters

Option Type Description
pattern string
topic string

getHandlerByPattern()


getHandlerByPattern(pattern: string): MessageHandler | null

Parameters

Option Type Description
pattern string

Returns

MessageHandler | null

removeHandlerKeySharedPrefix()


removeHandlerKeySharedPrefix(handlerKey: string)

Parameters

Option Type Description
handlerKey string

getRequestPattern()


getRequestPattern(pattern: string): string

Parameters

Option Type Description
pattern string

Returns

string

getReplyPattern()


getReplyPattern(pattern: string): string

Parameters

Option Type Description
pattern string

Returns

string

handleError()


handleError(stream: any)

Parameters

Option Type Description
stream any

initializeSerializer()


protected initializeSerializer(options: MqttClientOptions & { url?: string; serializer?: Serializer<any, any>; deserializer?: Deserializer<any, any>; subscribeOptions?: { qos: QoS; nl?: boolean; rap?: boolean; rh?: number; }; userProperties?: Record<...>; })

Parameters

Option Type Description
options MqttClientOptions & { url?: string; serializer?: Serializer; deserializer?: Deserializer; subscribeOptions?: { qos: QoS; nl?: boolean; rap?: boolean; rh?: number; }; userProperties?: Record<...>; }