Commit 7644aa434200059da9b5830b13a8a600900bea4a

Authored by Volodymyr Babak
1 parent 8f5fefa0

Added edge update config handler

@@ -83,6 +83,7 @@ import org.thingsboard.server.gen.edge.DeviceUpdateMsg; @@ -83,6 +83,7 @@ import org.thingsboard.server.gen.edge.DeviceUpdateMsg;
83 import org.thingsboard.server.gen.edge.DownlinkMsg; 83 import org.thingsboard.server.gen.edge.DownlinkMsg;
84 import org.thingsboard.server.gen.edge.DownlinkResponseMsg; 84 import org.thingsboard.server.gen.edge.DownlinkResponseMsg;
85 import org.thingsboard.server.gen.edge.EdgeConfiguration; 85 import org.thingsboard.server.gen.edge.EdgeConfiguration;
  86 +import org.thingsboard.server.gen.edge.EdgeUpdateMsg;
86 import org.thingsboard.server.gen.edge.EntityDataProto; 87 import org.thingsboard.server.gen.edge.EntityDataProto;
87 import org.thingsboard.server.gen.edge.EntityViewUpdateMsg; 88 import org.thingsboard.server.gen.edge.EntityViewUpdateMsg;
88 import org.thingsboard.server.gen.edge.RelationRequestMsg; 89 import org.thingsboard.server.gen.edge.RelationRequestMsg;
@@ -244,12 +245,11 @@ public final class EdgeGrpcSession implements Closeable { @@ -244,12 +245,11 @@ public final class EdgeGrpcSession implements Closeable {
244 void onConfigurationUpdate(Edge edge) { 245 void onConfigurationUpdate(Edge edge) {
245 try { 246 try {
246 this.edge = edge; 247 this.edge = edge;
247 - // TODO: voba - push edge configuration update to edge  
248 -// sendResponseMsg(org.thingsboard.server.gen.integration.ResponseMsg.newBuilder()  
249 -// .setIntegrationUpdateMsg(IntegrationUpdateMsg.newBuilder()  
250 -// .setConfiguration(constructIntegrationConfigProto(configuration, defaultConverterProto, downLinkConverterProto))  
251 -// .build())  
252 -// .build()); 248 + EdgeUpdateMsg edgeConfig = EdgeUpdateMsg.newBuilder()
  249 + .setConfiguration(constructEdgeConfigProto(edge)).build();
  250 + outputStream.onNext(ResponseMsg.newBuilder()
  251 + .setEdgeUpdateMsg(edgeConfig)
  252 + .build());
253 } catch (Exception e) { 253 } catch (Exception e) {
254 log.error("Failed to construct proto objects!", e); 254 log.error("Failed to construct proto objects!", e);
255 } 255 }
@@ -903,7 +903,7 @@ public final class EdgeGrpcSession implements Closeable { @@ -903,7 +903,7 @@ public final class EdgeGrpcSession implements Closeable {
903 } 903 }
904 } 904 }
905 if (uplinkMsg.getDeviceRpcCallMsgList() != null && !uplinkMsg.getDeviceRpcCallMsgList().isEmpty()) { 905 if (uplinkMsg.getDeviceRpcCallMsgList() != null && !uplinkMsg.getDeviceRpcCallMsgList().isEmpty()) {
906 - for (DeviceRpcCallMsg deviceRpcCallMsg: uplinkMsg.getDeviceRpcCallMsgList()) { 906 + for (DeviceRpcCallMsg deviceRpcCallMsg : uplinkMsg.getDeviceRpcCallMsgList()) {
907 result.add(ctx.getDeviceProcessor().processDeviceRpcCallResponseMsg(edge.getTenantId(), deviceRpcCallMsg)); 907 result.add(ctx.getDeviceProcessor().processDeviceRpcCallResponseMsg(edge.getTenantId(), deviceRpcCallMsg));
908 } 908 }
909 } 909 }
@@ -114,6 +114,9 @@ public class EdgeGrpcClient implements EdgeRpcClient { @@ -114,6 +114,9 @@ public class EdgeGrpcClient implements EdgeRpcClient {
114 } 114 }
115 onError.accept(new EdgeConnectionException("Failed to establish the connection! Response code: " + connectResponseMsg.getResponseCode().name())); 115 onError.accept(new EdgeConnectionException("Failed to establish the connection! Response code: " + connectResponseMsg.getResponseCode().name()));
116 } 116 }
  117 + } else if (responseMsg.hasEdgeUpdateMsg()) {
  118 + log.debug("[{}] Edge update message received {}", edgeKey, responseMsg.getEdgeUpdateMsg());
  119 + onEdgeUpdate.accept(responseMsg.getEdgeUpdateMsg().getConfiguration());
117 } else if (responseMsg.hasUplinkResponseMsg()) { 120 } else if (responseMsg.hasUplinkResponseMsg()) {
118 log.debug("[{}] Uplink response message received {}", edgeKey, responseMsg.getUplinkResponseMsg()); 121 log.debug("[{}] Uplink response message received {}", edgeKey, responseMsg.getUplinkResponseMsg());
119 onUplinkResponse.accept(responseMsg.getUplinkResponseMsg()); 122 onUplinkResponse.accept(responseMsg.getUplinkResponseMsg());
@@ -44,6 +44,7 @@ message ResponseMsg { @@ -44,6 +44,7 @@ message ResponseMsg {
44 ConnectResponseMsg connectResponseMsg = 1; 44 ConnectResponseMsg connectResponseMsg = 1;
45 UplinkResponseMsg uplinkResponseMsg = 2; 45 UplinkResponseMsg uplinkResponseMsg = 2;
46 DownlinkMsg downlinkMsg = 3; 46 DownlinkMsg downlinkMsg = 3;
  47 + EdgeUpdateMsg edgeUpdateMsg = 4;
47 } 48 }
48 49
49 enum RequestMsgType { 50 enum RequestMsgType {
@@ -52,6 +53,10 @@ enum RequestMsgType { @@ -52,6 +53,10 @@ enum RequestMsgType {
52 SYNC_REQUEST_RPC_MESSAGE = 2; 53 SYNC_REQUEST_RPC_MESSAGE = 2;
53 } 54 }
54 55
  56 +message EdgeUpdateMsg {
  57 + EdgeConfiguration configuration = 1;
  58 +}
  59 +
55 message ConnectRequestMsg { 60 message ConnectRequestMsg {
56 string edgeRoutingKey = 1; 61 string edgeRoutingKey = 1;
57 string edgeSecret = 2; 62 string edgeSecret = 2;