ServerMqtt

  
class ServerMqtt extends Server {
  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 url: string
  protected mqttClient: MqttClient
  protected pendingEventListeners: Array<{...}
  listen(callback: (err?: unknown, ...optionalParams: unknown[]) => void)
  start(callback: (err?: unknown, ...optionalParams: unknown[]) => void)
  bindEvents(mqttClient: any)
  close()
  createMqttClient(): MqttClient
  getMessageHandler(pub: any)
  handleMessage(channel: string, buffer: Buffer, pub: any, originalPacket?: Record<string, any>): Promise<any>
  getPublisher(client: any, 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
  registerErrorListener(client: any)
  registerReconnectListener(client: any)
  registerDisconnectListener(client: any)
  registerCloseListener(client: any)
  registerConnectListener(client: any)
  unwrap<T>(): T
  on<EventKey extends keyof MqttEvents = keyof MqttEvents, EventCallback extends MqttEvents[EventKey] = MqttEvents[EventKey]>(event: EventKey, callback: EventCallback)
  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
  transportId?: Transport | symbol
  protected messageHandlers: Map<string, MessageHandler>
  protected logger: LoggerService
  protected serializer: ConsumerSerializer
  protected deserializer: ConsumerDeserializer
  protected _status$: ReplaySubject<Status>
  status: Observable<Status>
  abstract on<EventKey extends keyof EventsMap = keyof EventsMap, EventCallback extends EventsMap[EventKey] = EventsMap[EventKey]>(event: EventKey, callback: EventCallback): any
  abstract unwrap<T>(): T
  abstract listen(callback: (...optionalParams: unknown[]) => any): any
  abstract close(): any
  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>) => void | Promise<unknown>): Subscription
  handleEvent(pattern: string, packet: ReadPacket<any>, context: BaseRpcContext<unknown[]>): Promise<any>
  transformToObservable(resultOrDeferred: any)
  getOptionsProp<Options extends MicroserviceOptions['options'], Attribute extends keyof Options, DefaultValue extends Options[Attribute] = Options[Attribute]>(obj: Options, prop: Attribute, defaultValue: DefaultValue = undefined as DefaultValue)
  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 url: string Read-only.
protected mqttClient: MqttClient
protected pendingEventListeners: Array<{ event: keyof MqttEvents; callback: MqttEvents[keyof MqttEvents]; }>

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: any)

Parameters

Option Type Description
mqttClient any

close()


close()

Parameters

There are no parameters.

createMqttClient()


createMqttClient(): MqttClient

Parameters

There are no parameters.

Returns

MqttClient

getMessageHandler()


getMessageHandler(pub: any)

Parameters

Option Type Description
pub any

handleMessage()


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

Parameters

Option Type Description
channel string
buffer Buffer
pub any
originalPacket Record

Optional. Default is undefined.

Returns

Promise<any>

getPublisher()


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

Parameters

Option Type Description
client any
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

registerErrorListener()


registerErrorListener(client: any)

Parameters

Option Type Description
client any

registerReconnectListener()


registerReconnectListener(client: any)

Parameters

Option Type Description
client any

registerDisconnectListener()


registerDisconnectListener(client: any)

Parameters

Option Type Description
client any

registerCloseListener()


registerCloseListener(client: any)

Parameters

Option Type Description
client any

registerConnectListener()


registerConnectListener(client: any)

Parameters

Option Type Description
client any

unwrap()


unwrap<T>(): T

Parameters

There are no parameters.

Returns

T

on()


on<EventKey extends keyof MqttEvents = keyof MqttEvents, EventCallback extends MqttEvents[EventKey] = MqttEvents[EventKey]>(event: EventKey, callback: EventCallback)

Parameters

Option Type Description
event EventKey
callback EventCallback

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<...>; }