180 lines
8.1 KiB
C
180 lines
8.1 KiB
C
// #ifndef __BSP_NET_H__
|
||
// #define __BSP_NET_H__
|
||
|
||
|
||
// #ifdef __cplusplus
|
||
// extern "C" {
|
||
// #endif
|
||
|
||
// #include <stdlib.h>
|
||
// #include "drv_gpio.h"
|
||
|
||
// #define ML307_AT_RESP_TIMEOUT RT_TICK_PER_SECOND
|
||
|
||
|
||
// /* The maximum number of sockets supported by the ml307 device */
|
||
// #ifdef AT_USING_SOCKET
|
||
// #define AT_DEVICE_ML307_SOCKETS_NUM 1
|
||
// #endif
|
||
|
||
// typedef enum
|
||
// {
|
||
// kConnect_seccess = 0,//连接成功
|
||
// kReconnecting, //重连中
|
||
// kUserDisconnected,//用户主动断开连接
|
||
// kConnectionDenied,//断开:拒绝连接(协议版本、标识符、用户名或密码错误)
|
||
// KServerDisconnected,//断开:服务器断开
|
||
// kPackOutTimeDisconnect,//断开:Ping包超时断开(若服务器未在 1.5 倍保活时间内接收到客户端的消息,则相当于客户端发送了 DISCONNECT 消息,服务器会断开与客户端的连接,此时会上报该 URC。
|
||
// kNetworkAbnormalDisconnect,//断开:网络异常断开
|
||
// kUnknownError,//断开:未知错误
|
||
// }mqtt_conn_state;
|
||
|
||
|
||
// //认证编号
|
||
// typedef struct
|
||
// {
|
||
// char *device_id;
|
||
// char *feature_str;
|
||
// char *device_number;//用IMEI作为设备编号
|
||
// mqtt_conn_state state;
|
||
// }Mqtt_Dev;
|
||
|
||
// #ifdef __cplusplus
|
||
// }
|
||
// #endif
|
||
|
||
// #define CONN(A, B) A##B
|
||
// #define INT_STR(X)(#X)
|
||
|
||
// /******************************** mqtt命令参数 **************************************/
|
||
// /*
|
||
// *
|
||
// * 服务器地址:mqtt.ctwing.cn
|
||
// * 端口号:1883
|
||
// * 产品ID:17126214
|
||
// * 密钥:a199d9c35ba548739dafccbd4546d816
|
||
// * 特征串:sD3p13KS3heqhHfkmex-_W0jPKvItS8TaMVWB5Uyikk
|
||
// * 设备ID:17126214862966073419375
|
||
// * 设备编号:862966073419375
|
||
// * 通讯方式:MQTT
|
||
// * */
|
||
// #define MQTT_SEVER_PORT "1883"
|
||
// #define MQTT_SEVER_URL "\"mqtt.ctwing.cn\""
|
||
// #define PROJECT_ID "\"17126214\""
|
||
// #define MASTER_API_KEY "a199d9c35ba548739dafccbd4546d816"
|
||
// #define FEATURE_STRING "\"sD3p13KS3heqhHfkmex-_W0jPKvItS8TaMVWB5Uyikk\""
|
||
// #define DEVICE_ID "\"17126214862966073419375\""
|
||
// #define DEVICE_NUMBER "\"862966073419375\""
|
||
|
||
|
||
// #define MQTT_CONNECT_ID "0" //自定义0~5
|
||
|
||
// #define MQTT_QOS_0 "0"//最多发送一次
|
||
// #define MQTT_QOS_1 "1"//最少发送一次
|
||
// #define MQTT_QOS_2 "2"//只发送一次
|
||
|
||
// #define MQTT_RETAIN_0 "0" //服务器不存储消息
|
||
// #define MQTT_RETAIN_1 "1" //服务器储存该消息,并向新订阅者发送最新订阅消息
|
||
|
||
// #define MQTT_RETRY_0 "0" //发送新消息一般设置为0。
|
||
// #define MQTT_RETRY_1 "1" //。数据发送失败后用户主动重发数据请置1
|
||
|
||
// #define MQTT_INOUT_FORMAT_ASCII "0"//原始字符串
|
||
// #define MQTT_INOUT_FORMAT_HEX "1"//十六进制字符串
|
||
// #define MQTT_INOUT_FORMAT_STR "2"//转义字符串
|
||
|
||
// #define MQTT_OUTPUT_FORMAT_ASCII "0"
|
||
// #define MQTT_OUTPUT_FORMAT_HEX "1"
|
||
|
||
|
||
// #define MQTT_CFG_VERSION "\"version\""
|
||
// #define MQTT_CFG_CID "\"cid\""
|
||
// #define MQTT_CFG_SSL "\"ssl\""
|
||
// #define MQTT_CFG_KEEPALIVE "\"keepalive\""
|
||
// #define MQTT_CFG_CLEAN "\"clean\""
|
||
// #define MQTT_CFG_RETRANS "\"retrans\""
|
||
// #define MQTT_CFG_WILLOPTION "\"willoption\""
|
||
// #define MQTT_CFG_WILLPAYLOAD "\"willpayload\""
|
||
// #define MQTT_CFG_PINGREQ "\"pingreq\""
|
||
// #define MQTT_CFG_PINGRESP "\"pingresp\""
|
||
// #define MQTT_CFG_ENCODING "\"encoding\""
|
||
// #define MQTT_CFG_CACHED "\"cached\""
|
||
// #define MQTT_CFG_RECONN "\"reconn\""
|
||
// #define MQTT_CFG_PLATSEL "\"platsel\""
|
||
// #define MQTT_CFG_DEVINFO "\"devinfo\""
|
||
|
||
// #define MQTT_PUB_TOPIC "\"test\"" //发布主题自定义
|
||
// #define MQTT_CFG "AT+MQTTCFG="
|
||
// #define MQTT_CONNET "AT+MQTTCONN=" //connect
|
||
// #define MQTT_SUB "AT+MQTTSUB=" //sub
|
||
// #define MQTT_PUB "AT+MQTTPUB=" //AT+MQTTPUB=<connect_id>,<topic>,<qos>,<retain>,<dup>,<msg_len>[,<message>]
|
||
// #define MQTT_ISSUE_THEME "\"device_control\""//下发主题
|
||
// #define MQTT_DISCON "AT+MQTTDISC="
|
||
// #define MQTT_STATE "AT+MQTTSTATE="
|
||
// #define MQTT_READ "AT+MQTTREAD="
|
||
// #define MQTT_PUB_MESSAGE "AT+MQTTPUB="
|
||
|
||
// /******************************** mqtt命令 **************************************/
|
||
// #define MQTT_CMD_VERSION_CFG MQTT_CFG MQTT_CFG_VERSION "," MQTT_CONNECT_ID
|
||
// #define MQTT_CMD_ENCODING_CFG MQTT_CFG MQTT_CFG_ENCODING "," MQTT_CONNECT_ID "," MQTT_INOUT_FORMAT_ASCII "," MQTT_OUTPUT_FORMAT_ASCII
|
||
// #define MQTT_CMD_PINGRESP_CFG MQTT_CFG MQTT_CFG_PINGRESP "," MQTT_CONNECT_ID
|
||
// #define MQTT_CMD_CNNNET MQTT_CONNET MQTT_CONNECT_ID ","MQTT_SEVER_URL "," MQTT_SEVER_PORT "," DEVICE_ID "," DEVICE_NUMBER "," FEATURE_STRING
|
||
// #define MQTT_CMD_SUB MQTT_SUB MQTT_CONNECT_ID "," MQTT_ISSUE_THEME "," MQTT_QOS_1
|
||
// #define MQTT_CMD_DISC MQTT_DISCON MQTT_CONNECT_ID//断开连接
|
||
// #define MQTT_CMD_STATE MQTT_STATE MQTT_CONNECT_ID/*1:正在重连中,2:连接成功,3:连接断开*/
|
||
// #define MQTT_CMD_READ MQTT_READ MQTT_CONNECT_ID//该命令用于缓存模式下,读取缓存中的消息。NB-IoT系列模组缓存上限为4KB,4G/5G模组缓存上限为8KB。
|
||
|
||
// /********************************mqtt urc消息**************************************/
|
||
// /*
|
||
// * +MQTTURC: "conn",<connect_id>,<conn_state> MQTT连接状态发生变化事件上报
|
||
// * +MQTTURC: "pubnmi",<connect_id>,<mid>,<data_len> 新数据包上报(New Message Indication),提示从缓存区读取数据包。
|
||
// * +MQTTURC: "drop",<connect_id>,<dropped_length>提示接收缓存区满,丢掉数据。
|
||
// * +MQTTURC: "publish",<connect_id>,<mid>,<topic>,<total_len>,<payload_len>,<payload>接收到的MQTT Publish数据。
|
||
// * +MQTTURC: "pingresp",<connect_id>,<ping_ret>配置心跳回显时,上报心跳包响应结果。
|
||
// * +MQTTURC: "timeout",<connect_id>,<mid>数据发送超时事件上报(仅上报订阅、取消订阅、发布最终超时结果,重传包超时不上报)
|
||
// * +MQTTURC: "suback",<connect_id>,<mid>,<code>[,<code1>,..收到服务器订阅ACK信息上报。
|
||
// * +MQTTURC: "unsuback",<connect_id>,<mid>收到服务器取消订阅ACK信息上报。
|
||
// * +MQTTURC: "puback",<connect_id>,<mid>,<dup>QoS1模式下的发布响应ACK信息上报。
|
||
// * +MQTTURC: "pubrec",<connect_id>,<mid>,<dup>QoS2模式下的发布响应Receive上报。
|
||
// * +MQTTURC: "pubcomp",<connect_id>,<mid>,<dup>QoS2模式下的发布响应Complete上报。
|
||
// */
|
||
// #define MQTT_URC_CONNET_STATE "+MQTTURC: \"conn\"" /*MQTT连接状态发生变化事件上报。+MQTTURC: "conn",<connect_id>,<conn_state>*/
|
||
// #define MQTT_URC_RECEIVE_PROMPT "+MQTTURC: \"pubnmi\""
|
||
// #define MQTT_URC_DISCARD_PROMPT "+MQTTURC: \"drop\""
|
||
// #define MQTT_URC_RECEIVE_MSG "+MQTTURC: \"publish\"" //接收消息URC
|
||
// #define MQTT_URC_PING_RESP "+MQTTURC: \"pingresp\"" //PING结果URC
|
||
// #define MQTT_URC_OUTTIME "+MQTTURC: \"timeout\"" //超时URC
|
||
// #define MQTT_URC_SUBACK "+MQTTURC: \"suback\"" //订阅URC
|
||
// #define MQTT_URC_UNSUBACK "+MQTTURC: \"unsuback\"" //取消urc
|
||
// #define MQTT_URC_PUBACK "+MQTTURC: \"puback\"" //QoS=1时发送结果URC
|
||
// #define MQTT_URC_PUBREC "+MQTTURC: \"pubrec\"" //QoS=2时消息到达URC
|
||
// #define MQTT_URC_PUBCOMP "+MQTTURC: \"pubcomp\"" //QoS=2时消息发送完成URC
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
// #endif // !__BSP_NET_H__
|