29
29
30
30
static NSString *const MULTI_CONTROL_HOST = @" mc_host" ;
31
31
32
- static NSString *const MULTI_CONTROL_ACTION = @" action" ;
33
-
34
32
// static NSString *const BEHAVIOR_ID = @"68753A444D6F12269C600050E4C00067";
35
33
36
34
@interface DKMultiControlStreamManager ()
@@ -89,7 +87,7 @@ - (void)enableMultiControlWithUrl:(NSURL *)url {
89
87
typeof (weakSelf) self = weakSelf;
90
88
if ([commonDTOModel.dataType isEqualToString: MULTI_CONTROL_HOST]) {
91
89
[self changeToSlave ];
92
- } else if ([commonDTOModel.dataType isEqualToString: MULTI_CONTROL_ACTION ]) {
90
+ } else if ([commonDTOModel.dataType isEqualToString: DK_ACTION ]) {
93
91
// Handle behaviorId and process data.
94
92
NSData *jsonData = [commonDTOModel.data dataUsingEncoding: NSUTF8StringEncoding];
95
93
if (jsonData) {
@@ -103,6 +101,8 @@ - (void)enableMultiControlWithUrl:(NSURL *)url {
103
101
}
104
102
}
105
103
}
104
+ } else if ([commonDTOModel.dataType isEqualToString: DK_TCP]) {
105
+ self.tcpHandler ? self.tcpHandler (commonDTOModel.data ) : nil ;
106
106
}
107
107
};
108
108
for (id <DKMultiControlStreamManagerStateListener> listener in self.listenerArray ) {
@@ -395,4 +395,28 @@ - (void)broadcastWithActionMessage:(NSString *)message {
395
395
[self .webSocketSession sendString: dataString requestId: nil completionHandler: nil ];
396
396
}
397
397
398
+ - (void )broadcastWithTCPMessage : (NSString *)message {
399
+ if (!self.webSocketSession ) {
400
+ return ;
401
+ }
402
+ DKCommonDTOModel *commonDTOModel = [[DKCommonDTOModel alloc ] init ];
403
+ commonDTOModel.requestId = nil ;
404
+ commonDTOModel.deviceType = DK_DEVICE_TYPE;
405
+ commonDTOModel.data = message;
406
+ commonDTOModel.method = DK_WEBSOCKET_BROADCAST;
407
+ commonDTOModel.connectSerial = self.webSocketSession .sessionUUID ;
408
+ commonDTOModel.dataType = DK_ACTION;
409
+ NSError *error = nil ;
410
+ NSDictionary *jsonDictionary = [MTLJSONAdapter JSONDictionaryFromModel: commonDTOModel error: &error];
411
+ NSData *jsonData = [NSJSONSerialization dataWithJSONObject: jsonDictionary ?: @{} options: 0 error: &error];
412
+ NSString *dataString = nil ;
413
+ if (jsonData) {
414
+ dataString = [[NSString alloc ] initWithData: jsonData encoding: NSUTF8StringEncoding];
415
+ }
416
+ if (!dataString) {
417
+ return ;
418
+ }
419
+ [self .webSocketSession sendString: dataString requestId: nil completionHandler: nil ];
420
+ }
421
+
398
422
@end
0 commit comments