Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
黄嘉阳
/
iot-platform-server
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
72744f3e
authored
Jan 09, 2024
by
罗志长
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
fix: mqtt连接
parent
94bf8942
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
30 additions
and
23 deletions
server-common/src/main/java/com/makeit/module/iot/util/HeaderUtils.java
server-common/src/main/java/com/makeit/module/iot/vo/HeaderInfo.java
server-web/src/main/java/com/makeit/mqtt/MqttPushClient.java
server-web/src/main/java/com/makeit/mqtt/PushCallback.java
server-common/src/main/java/com/makeit/module/iot/util/HeaderUtils.java
View file @
72744f3e
...
@@ -70,7 +70,7 @@ public class HeaderUtils {
...
@@ -70,7 +70,7 @@ public class HeaderUtils {
headers
.
put
(
"X-Client-Id"
,
clientId
);
headers
.
put
(
"X-Client-Id"
,
clientId
);
headers
.
put
(
"X-Timestamp"
,
xTimestamp
);
headers
.
put
(
"X-Timestamp"
,
xTimestamp
);
log
.
info
(
"请求头信息:{}"
,
Hex
.
encodeHexString
(
digest
.
digest
())
+
"|"
+
clientId
+
"|"
+
xTimestamp
);
//
log.info("请求头信息:{}",Hex.encodeHexString(digest.digest()) +"|"+clientId+"|"+ xTimestamp);
return
headers
;
return
headers
;
}
}
...
...
server-common/src/main/java/com/makeit/module/iot/vo/HeaderInfo.java
View file @
72744f3e
package
com
.
makeit
.
module
.
iot
.
vo
;
package
com
.
makeit
.
module
.
iot
.
vo
;
import
com.google.common.collect.Lists
;
import
lombok.Data
;
import
lombok.Data
;
import
java.util.List
;
import
java.util.List
;
...
@@ -13,7 +14,7 @@ public class HeaderInfo {
...
@@ -13,7 +14,7 @@ public class HeaderInfo {
private
String
_uid
;
private
String
_uid
;
private
String
creatorId
;
private
String
creatorId
;
private
String
traceparent
;
private
String
traceparent
;
private
List
<
Bind
>
bindings
;
private
List
<
Bind
>
bindings
=
Lists
.
newArrayList
()
;
@Data
@Data
...
...
server-web/src/main/java/com/makeit/mqtt/MqttPushClient.java
View file @
72744f3e
...
@@ -47,6 +47,7 @@ public class MqttPushClient {
...
@@ -47,6 +47,7 @@ public class MqttPushClient {
options
.
setPassword
(
password
.
toCharArray
());
options
.
setPassword
(
password
.
toCharArray
());
options
.
setConnectionTimeout
(
timeout
);
options
.
setConnectionTimeout
(
timeout
);
options
.
setKeepAliveInterval
(
keepalive
);
options
.
setKeepAliveInterval
(
keepalive
);
options
.
setAutomaticReconnect
(
true
);
MqttPushClient
.
setMqttClient
(
client
);
MqttPushClient
.
setMqttClient
(
client
);
if
(!
client
.
isConnected
())
{
if
(!
client
.
isConnected
())
{
try
{
try
{
...
...
server-web/src/main/java/com/makeit/mqtt/PushCallback.java
View file @
72744f3e
...
@@ -98,30 +98,32 @@ public class PushCallback implements MqttCallbackExtended {
...
@@ -98,30 +98,32 @@ public class PushCallback implements MqttCallbackExtended {
@Override
@Override
public
void
connectionLost
(
Throwable
cause
)
{
public
void
connectionLost
(
Throwable
cause
)
{
logger
.
info
(
"连接断开,可以重连"
);
logger
.
info
(
"连接断开,可以重连"
,
cause
);
if
(
client
==
null
||
!
client
.
isConnected
())
{
int
times
=
1
;
mqttConfig
.
getMqttPushClient
();
while
(
client
==
null
||
!
client
.
isConnected
())
{
}
if
(
times
>
5
)
{
// int times = 1;
logger
.
info
(
"已达最大次数"
);
// while (client == null || !client.isConnected()) {
break
;
// logger.info("重新连接, 第" + (times++) + "次");
}
// MqttPushClient mqttPushClient = mqttConfig.getMqttPushClient();
logger
.
info
(
"重新连接, 第"
+
(
times
++)
+
"次"
);
// if (mqttPushClient != null && mqttPushClient.getMqttClient() != null && mqttPushClient.getMqttClient().isConnected()) {
MqttPushClient
mqttPushClient
=
mqttConfig
.
getMqttPushClient
();
// logger.info("重连成功");
if
(
mqttPushClient
!=
null
&&
mqttPushClient
.
getMqttClient
()
!=
null
&&
mqttPushClient
.
getMqttClient
().
isConnected
())
{
// break;
logger
.
info
(
"重连成功"
);
// }
break
;
// logger.info("重连失败");
}
// // 每隔10秒重试一次
logger
.
info
(
"重连失败"
);
// try {
// 每隔10秒重试一次
// TimeUnit.SECONDS.sleep(10);
try
{
// } catch (InterruptedException e) {
TimeUnit
.
SECONDS
.
sleep
(
10
);
// e.printStackTrace();
}
catch
(
InterruptedException
e
)
{
// }
e
.
printStackTrace
();
// }
}
}
}
}
@Override
@Override
public
void
messageArrived
(
String
topic
,
MqttMessage
message
)
throws
Exception
{
public
void
messageArrived
(
String
topic
,
MqttMessage
message
)
{
try
{
// 收到消息并设置返回字符串格式
// 收到消息并设置返回字符串格式
String
payload
=
new
String
(
message
.
getPayload
(),
"UTF-8"
);
String
payload
=
new
String
(
message
.
getPayload
(),
"UTF-8"
);
...
@@ -133,6 +135,9 @@ public class PushCallback implements MqttCallbackExtended {
...
@@ -133,6 +135,9 @@ public class PushCallback implements MqttCallbackExtended {
syncProperties
(
device
);
syncProperties
(
device
);
checkAlarm
(
device
);
checkAlarm
(
device
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"消息接收处理异常"
,
e
);
}
}
}
@Override
@Override
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment