Files
2026-07-13 12:06:16 +08:00

25 lines
529 B
JavaScript

'use strict'
const mqtt = require('mqtt-packet')
function write (client, packet, done) {
let error = null
if (client.connecting || client.connected) {
try {
const result = mqtt.writeToStream(packet, client.conn)
if (!result && !client.errored) {
client.conn.once('drain', done)
return
}
} catch (e) {
error = new Error('packet received not valid')
}
} else {
error = new Error('connection closed')
}
setImmediate(done, error, client)
}
module.exports = write