可以配置MQTT用户名和密码

This commit is contained in:
zogodo
2022-01-02 20:58:37 +08:00
parent ad461596ca
commit b71c10da3f
8 changed files with 713 additions and 688 deletions

View File

@@ -157,10 +157,11 @@ exit:
static int HttpGetTc1Status(httpd_request_t *req)
{
char* sockets = GetSocketStatus();
char* tc1_status = malloc(412);
char* tc1_status = malloc(512);
sprintf(tc1_status, TC1_STATUS_JSON, sockets, ip_status.mode,
sys_config->micoSystemConfig.ssid, sys_config->micoSystemConfig.user_key,
user_config->ap_name, user_config->ap_key, MQTT_SERVER, MQTT_SERVER_PORT, VERSION, ip_status.ip, ip_status.mask, ip_status.gateway, 0L);
user_config->ap_name, user_config->ap_key, MQTT_SERVER, MQTT_SERVER_PORT, MQTT_SERVER_USR, MQTT_SERVER_PWD,
VERSION, ip_status.ip, ip_status.mask, ip_status.gateway, 0L);
OSStatus err = kNoErr;
send_http(tc1_status, strlen(tc1_status), exit, &err);
@@ -295,7 +296,7 @@ static int HttpSetMqttConfig(httpd_request_t *req)
err = httpd_get_data(req, buf, buf_size);
require_noerr(err, exit);
sscanf(buf, "%s %d", MQTT_SERVER, &MQTT_SERVER_PORT);
sscanf(buf, "%s %d %s %s", MQTT_SERVER, &MQTT_SERVER_PORT, MQTT_SERVER_USR, MQTT_SERVER_PWD);
mico_system_context_update(sys_config);
send_http("OK", 2, exit, &err);

View File

@@ -56,6 +56,8 @@
'ap_pwd':'%s',\
'mqtt_addr':'%s',\
'mqtt_port':%d,\
'mqtt_usr':'%s',\
'mqtt_pwd':'%s',\
'version':'%s',\
'ip':'%s',\
'mask':'%s',\

View File

@@ -251,11 +251,19 @@
<form action="#">
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<input class="mdl-textfield__input" type="text" id="mqtt_addr">
<label class="mdl-textfield__label" for="mqtt_addr">MQTT 地址</label>
<label class="mdl-textfield__label" for="mqtt_addr">地址</label>
</div>
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<input class="mdl-textfield__input" type="text" id="mqtt_port">
<label class="mdl-textfield__label" for="mqtt_port">MQTT 端口</label>
<label class="mdl-textfield__label" for="mqtt_port">端口</label>
</div>
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<input class="mdl-textfield__input" type="text" id="mqtt_usr">
<label class="mdl-textfield__label" for="mqtt_usr">用户名</label>
</div>
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<input class="mdl-textfield__input" type="text" id="mqtt_pwd">
<label class="mdl-textfield__label" for="mqtt_pwd">密码</label>
</div>
</form>
</div>
@@ -636,6 +644,8 @@ var info_station_name;
var info_wifi_password;
var mqtt_addr;
var mqtt_port;
var mqtt_usr;
var mqtt_pwd;
HttpGet("/status", function (re) {
var status = JSON.parse(re);
@@ -661,6 +671,8 @@ HttpGet("/status", function (re) {
mqtt_addr = status.mqtt_addr;
mqtt_port = status.mqtt_port;
mqtt_usr = status.mqtt_usr;
mqtt_pwd = status.mqtt_pwd;
$("#info_version").html(status.version);
$("#info_ip").html(status.ip);
$("#info_mask").html(status.mask);
@@ -692,6 +704,8 @@ function ShowPage(id) {
$("#custom_password")[0].parentElement.MaterialTextfield.change(info_wifi_password);
$("#mqtt_addr")[0].parentElement.MaterialTextfield.change(mqtt_addr);
$("#mqtt_port")[0].parentElement.MaterialTextfield.change(mqtt_port);
$("#mqtt_usr")[0].parentElement.MaterialTextfield.change(mqtt_usr);
$("#mqtt_pwd")[0].parentElement.MaterialTextfield.change(mqtt_pwd);
} else {
window.clearTimeout(rescan_timer);
}
@@ -780,7 +794,9 @@ function GetScanResult() {
$("#mqtt_submit").on("click", function() {
var mqtt_addr = $("#mqtt_addr").val();
var mqtt_port = $("#mqtt_port").val();
var params = mqtt_addr + " " + mqtt_port;
var mqtt_usr = $("#mqtt_usr").val();
var mqtt_pwd = $("#mqtt_pwd").val();
var params = mqtt_addr + " " + mqtt_port + " " + mqtt_usr + " " + mqtt_pwd;
HttpPost("/mqtt/config", function (re) {
ShowToast(re);
}, params);

View File

File diff suppressed because it is too large Load Diff

View File

@@ -16,7 +16,7 @@
#define wifi_log(M, ...) do { custom_log("WIFI", M, ##__VA_ARGS__); web_log("WIFI", M, ##__VA_ARGS__); } while(0)
#define power_log(M, ...) do { custom_log("POWER", M, ##__VA_ARGS__); web_log("POWER", M, ##__VA_ARGS__); } while(0)
#define VERSION "v2.1.3"
#define VERSION "v2.1.4"
#define TYPE 1
#define TYPE_NAME "zTC1"

View File

@@ -237,8 +237,6 @@ void MqttClientThread(mico_thread_arg_t arg)
connectData.clientID.cstring = str_mac;
connectData.username.cstring = user_config->mqtt_user;
connectData.password.cstring = user_config->mqtt_password;
connectData.username.cstring = "test";
connectData.password.cstring = "12345678";
connectData.keepAliveInterval = MQTT_CLIENT_KEEPALIVE;
connectData.cleansession = 1;

View File

@@ -16,6 +16,8 @@
#define MQTT_SERVER user_config->mqtt_ip
#define MQTT_SERVER_PORT user_config->mqtt_port
#define MQTT_SERVER_USR user_config->mqtt_user
#define MQTT_SERVER_PWD user_config->mqtt_password
extern OSStatus UserMqttInit(void);
extern OSStatus UserMqttSend(char *arg);