12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- /* Protocol - protocol constants */
- /* Command code => mnemonic */
- module.exports.types = {
- 0: 'reserved',
- 1: 'connect',
- 2: 'connack',
- 3: 'publish',
- 4: 'puback',
- 5: 'pubrec',
- 6: 'pubrel',
- 7: 'pubcomp',
- 8: 'subscribe',
- 9: 'suback',
- 10: 'unsubscribe',
- 11: 'unsuback',
- 12: 'pingreq',
- 13: 'pingresp',
- 14: 'disconnect',
- 15: 'reserved'
- };
- /* Mnemonic => Command code */
- module.exports.codes = {};
- for(var k in module.exports.types) {
- var v = module.exports.types[k];
- module.exports.codes[v] = k;
- }
- /* Header */
- module.exports.CMD_SHIFT = 4;
- module.exports.CMD_MASK = 0xF0;
- module.exports.DUP_MASK = 0x08;
- module.exports.QOS_MASK = 0x03;
- module.exports.QOS_SHIFT = 1;
- module.exports.RETAIN_MASK = 0x01;
- /* Length */
- module.exports.LENGTH_MASK = 0x7F;
- module.exports.LENGTH_FIN_MASK = 0x80;
- /* Connect */
- module.exports.USERNAME_MASK = 0x80;
- module.exports.PASSWORD_MASK = 0x40;
- module.exports.WILL_RETAIN_MASK = 0x20;
- module.exports.WILL_QOS_MASK = 0x18;
- module.exports.WILL_QOS_SHIFT = 3;
- module.exports.WILL_FLAG_MASK = 0x04;
- module.exports.CLEAN_SESSION_MASK = 0x02;
|