Skip to content

Commit 58346eb

Browse files
alvin1221JaylinYu
authored andcommitted
feat(nng-mqtt): add README.md in English
1 parent 2218447 commit 58346eb

File tree

2 files changed

+274
-29
lines changed

2 files changed

+274
-29
lines changed

mqtt-client-C-nng/README.md

Lines changed: 28 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,34 @@
11
# NanoSDK
22

3-
### 安装NanoSDK库
3+
> [中文](./README_ZH.md)
4+
5+
### Install NanoSDK library
46

57
```shell
68
git clone https://github.com/emqx/NanoSDK
79
cd NanoSDK
810
mkdir build
911
cd build
1012
cmake -G Ninja ..
11-
# 编译TLS:
13+
# Build with TLS:
1214
# cmake -G Ninja -DNNG_ENABLE_TLS=ON ..
13-
# 编译SQLITE:
15+
# Build with SQLITE:
1416
# cmake -G Ninja -DNNG_ENABLE_SQLITE=ON ..
1517
ninja
1618
ninja install
1719
```
1820

19-
### 创建nng_socket
21+
### Open and create nng_socket
2022

2123
```c
2224
nng_socket sock;
2325
nng_mqtt_client_open(&sock);
2426
nng_mqttv5_client_open(&sock);
2527
```
2628
27-
### 创建work
29+
### Create work
2830
29-
#### work定义
31+
#### work struct
3032
3133
```c
3234
struct work {
@@ -37,7 +39,7 @@ struct work {
3739
};
3840
```
3941

40-
#### 为socket创建n个work
42+
#### Create works for socket
4143

4244
```c
4345
static size_t nwork = 32;
@@ -49,7 +51,7 @@ for (i = 0; i < nwork; i++) {
4951
}
5052
```
5153

52-
### 创建并设置mqtt connect消息体
54+
#### Initialize connect message
5355

5456
```c
5557
nng_msg *msg;
@@ -58,16 +60,15 @@ nng_mqtt_msg_set_packet_type(msg, NNG_MQTT_CONNECT);
5860
nng_mqtt_msg_set_connect_keep_alive(msg, 60);
5961
nng_mqtt_msg_set_connect_clean_session(msg, true);
6062
nng_mqtt_msg_set_connect_proto_version(msg, opts->version);
61-
nng_mqtt_msg_set_connect_user_name(msg, "admin");
62-
nng_mqtt_msg_set_connect_password(msg, "public");
63+
nng_mqtt_msg_set_connect_user_name(msg, "admin");
64+
nng_mqtt_msg_set_connect_password(msg, "public");
6365
```
6466
6567
6668
67-
### 创建并设置nng_dialer
69+
### Initialize nng_dialer
6870
6971
```c
70-
7172
nng_mqtt_set_connect_cb(sock, connect_cb, &sock);
7273
nng_mqtt_set_disconnect_cb(sock, disconnect_cb, NULL);
7374
@@ -88,15 +89,7 @@ nng_dialer_start(dialer, NNG_FLAG_NONBLOCK);
8889
```
8990

9091

91-
### 状态机回调函数
92-
93-
> 本实例演示从初始INIT状态进入到RECV状态后进入数据接收状态
94-
>
95-
> RECV状态中获取收到的PUBLISH数据
96-
>
97-
> WAIT状态中进行清理nng_msg并重用,组装一个PUBLISH消息,设置SEND状态并进入发送回调
98-
>
99-
> SEND状态获取发送结果,并返回到RECV状态中
92+
### State callback function
10093

10194
```c
10295
void
@@ -179,7 +172,8 @@ client_cb(void *arg)
179172
}
180173
```
181174
182-
### 启动回调函数
175+
### Start callback function
176+
183177
```c
184178
for (i = 0; i < nwork; i++) {
185179
client_cb(works[i]);
@@ -190,14 +184,15 @@ for (;;) {
190184
}
191185
```
192186

193-
### 工程编译及运行
187+
### Building and Running
188+
194189
```shell
195190
mkdir build
196191
cd build
197192
cmake -G Ninja ..
198-
# 编译TLS:
193+
# Build with TLS:
199194
# cmake -G Ninja -DNNG_ENABLE_TLS=ON ..
200-
# 编译SQLITE:
195+
# Build with SQLITE:
201196
# cmake -G Ninja -DNNG_ENABLE_SQLITE=ON ..
202197
ninja
203198
```
@@ -211,6 +206,8 @@ mqtt_async:
211206
[default: mqtt-tcp://127.0.0.1:1883]
212207
-n, --parallel <number of works> (default: 32)
213208
-v, --version <mqtt version> (default: 4)
209+
-u, --username <username>
210+
-P, --password <password>
214211
--sqlite enable sqlite cache (default: false)
215212
-s, --secure enable ssl/tls mode (default: disable)
216213
--cacert <cafile path>
@@ -229,14 +226,16 @@ mqtt_async:
229226
./mqtt_async --url "tls+mqtt-tcp://127.0.0.1:8883" -s --cacert ca.crt --cert server.crt --key server.key
230227
```
231228

232-
### NanoSDK实现案例
229+
### NanoSDK Implementation case
230+
233231
[nanomq_cli](https://github.com/emqx/nanomq/tree/master/nanomq_cli)
234232

235-
### 完整代码工程
233+
### Project source
234+
235+
[mqtt-client-C-nng](https://github.com/emqx/MQTT-Client-Examples/tree/master/mqtt-client-nng)
236236

237-
[mqtt-client-nng](https://github.com/emqx/MQTT-Client-Examples/tree/master/mqtt-client-nng)
238237

238+
### NanoSDK source
239239

240-
### NanoSDK源码
241240
[NanoSDK](https://github.com/emqx/NanoSDK)
242241

0 commit comments

Comments
 (0)