swoole实现一个解析mqtt协议的服务端代码
代码语言:phpcli
所属分类:通讯
代码描述:swoole实现一个解析mqtt协议的服务端代码,完整mqtt服务端客户端代码在github上,地址:https://github.com/simps/mqtt
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<?php function decodeValue($data) { return 256 * ord($data[0]) + ord($data[1]); } function decodeString($data) { $length = decodeValue($data); return substr($data, 2, $length); } function mqttGetHeader($data) { $byte = ord($data[0]); $header['type'] = ($byte & 0xF0) >> 4; $header['dup'] = ($byte & 0x08) >> 3; $header['qos'] = ($byte & 0x06) >> 1; $header['retain'] = $byte & 0x01; return $header; } function eventConnect($header, $data) { $connect_info['protocol_name'] = decodeString($data); $offset = strlen($connect_info['protocol_name']) + 2; $connect_info['version'] = ord(substr($data, $offset, 1)); $offset += 1; $byte = ord($data[$offset]); $connect_info['willRetain'] = ($byte & 0x20 == 0x20); $connect_info['willQos'] = ($byte & 0x18 >> 3); $connect_info['willFlag'] = ($byte & 0x04 == 0x04); $connect_info['cleanStart'] = ($byte & 0x02 == 0x02); $offset += 1; $connect_info['keepalive'] = decodeValue(substr($data, $offset, 2)); $offset += 2; $connect_info['clie.........完整代码请登录后点击上方下载按钮下载查看
网友评论0