本地蓝牙Mesh

蓝牙Mesh相关的功能对应IOTSmartBlueToothMesh类(单例)。

创建Mesh网络

使用此方法可创建并初始化一个Mesh网络。

请求参数:

参数名 类型 说明 备注 必需
name String 网络的名称
ttl int 消息的最大转发次数 Time To Live的缩写

例子:

- (void)createMesh {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_createBLEMeshWithMeshName:@"name" meshTTL:@"ttl" success:^(IOTSmartMeshModel *mesh) {

​ NSLog(@"createMesh success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"createMesh failure: %@", errMsg);

}];

}

删除Mesh网络

使用此方法传入一个Mesh网络的对象,可删除该网络并重置网络下的所有节点。

请求参数:

参数名 类型 说明 备注 必需
mesh IOTSmartMeshModel 要删除的网络对象

例子:

- (void)removeMesh {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_removeBLEMesh:@"mesh" success:^ {

​ NSLog(@"remove success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"remove failure: %@", errMsg);

​ }];

}

获取所有Mesh网络

使用此方法可获取当前手机保存的所有Mesh网络的网络对象。

请求参数:无。

例子:

- (void)getAllMesh {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_getAllBLEMeshSuccess:^(NSArray *meshArr) {

​ NSLog(@"getAllMesh success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"getAllMesh failure: %@", errMsg);

​ }];

}

连接Mesh网络

使用此方法可连接到Mesh网络的某个代理节点上,进而可进行App与Mesh中节点的交互,使用前提是该Mesh网络中有代理节点。

请求参数:

参数名 类型 说明 备注 必需
timeout int 连接的超时时间
mesh IOTSmartMeshModel 要连接的mesh网络

例子:

- (void)connectMesh {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_connectBLEMesh:@"mesh" timeout:@"timeout" success:^ {

​ NSLog(@"connect success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"connect failure: %@", errMsg);

}];

}

断开Mesh网络

使用此方法可断开App与Mesh网络的连接。若已断开则直接返回成功。

请求参数:

参数名 类型 说明 备注 必需
mesh IOTSmartMeshModel 要断开的mesh网络

例子:

- (void)disconnectMesh {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_disConnectBLEMesh:@"mesh" success:^ {

​ NSLog(@"disconnect success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"disconnect failure: %@", errMsg);

}];

}

获取Mesh网络的所有节点

使用此方法可获取到某个Mesh网络下的所有节点。

请求参数:

参数名 类型 说明 备注 必需
mesh IOTSmartMeshModel 要获取节点的mesh网络

例子:

- (void)getAllNodes {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_getAllNodeWithBLEMesh:@"mesh" success:^(NSArray *nodeArr) {

​ NSLog(@"getAllNodes success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"getAllNodes failure: %@", errMsg);

​ }];

}

修改网络的名称及TTL

使用此方法可修改网络的名称及Mesh网络的TTL。前提要连接该Mesh网络。

请求参数:

参数名 类型 说明 备注 必需
meshName String 修改后的网络名称
meshTTL int 修改后的网络TTL
mesh IOTSmartMeshModel 要修改的mesh网络

例子:

- (void)modifyMeshNameAndTTL {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_modifyMeshName: @"meshName" meshTTL:@"meshTTL" withMesh:@"mesh" success:^{

​ NSLog(@"modify success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"modify failure: %@", errMsg);

}];

}

搜索周围的可添加节点

使用此方法可搜索周围没有被添加到Mesh网络的节点。

请求参数:

参数名 类型 说明 备注 必需
timeout int 搜索的超时时间
mesh IOTSmartMeshModel 要搜索节点的mesh网络

例子:

- (void)searchLeisureNode {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_searchNodeWithTimeout: @"timeout" withMesh:@"mesh" success:^(NSString nodeId, NSString nodeName, NSString *mac) {

​ NSLog(@"search success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"search failure: %@", errMsg);

}];

}

Mesh网络添加节点

使用此方法可以将搜索到的没有被添加到Mesh网络的节点添加到该Mesh网络。前提条件要先进行搜索。

请求参数:

参数名 类型 说明 备注 必需
nodeId String 节点的ID
productId int 产品ID
productKey String 产品的Key
mesh IOTSmartMeshModel 要添加节点的mesh网络

例子:

- (void)meshAddNode {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_addNodeWithNodeId: @"nodeId" productId: @"productId" productKey:@"productKey" toMesh:@"mesh" success:^(IOTSmartNode *node) {

​ NSLog(@"addNode success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"addNode failure: %@", errMsg);

}];

}

重置节点

使用此方法可将节点重置为未加入Mesh网络的节点,并将节点信息从传入的mesh网络中删除。注意与删除节点信息进行区分。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
node IOTSmartNode 需要重置的节点
mesh IOTSmartMeshModel 要重置节点的mesh网络

例子:

- (void)resetNode {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_resetNodeWithNode:@"node" fromMesh:@"mesh" success:^ {

​ NSLog(@"resetNode success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"resetNode failure: %@", errMsg);

}];

}

删除节点信息

删除本地保存的节点信息,将节点从网络的节点列表中删除,不管节点是否被重置。

请求参数:

参数名 类型 说明 备注 必需
node IOTSmartNode 需要删除信息的节点
mesh IOTSmartMeshModel 要删除节点的mesh网络

例子:

- (void)deleteNodeInfo {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_deleteNodeWithNode:@"node" fromMesh:@"mesh"];

}

修改节点名称

使用此方法可修改网络内指定mac对应节点的名称。

请求参数:

参数名 类型 说明 备注 必需
nodeName String 修改后的节点的名称
mac String 要修改名称的节点mac
mesh IOTSmartMeshModel 要修改节点名称的mesh网络

例子:

- (void)modifyNodeName {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_modifyNodeName:@"nodeName" nodeMac:@"mac" fromMesh:@"mesh" success:^ {

​ NSLog(@"modify success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"modify failure: %@", errMsg);

}];

}

向节点发送二进制透传消息

使用此方法可向网络内的任意节点发送二进制透传消息。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
data NSData 透传的数据
mac String 目标节点的mac
mesh IOTSmartMeshModel 发送透传消息的mesh网络

例子:

- (void)pushMessage {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_pushData:@"data" mac:@"mac" withMesh:@"mesh" success:^ {

​ NSLog(@"push success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"push failure: %@", errMsg);

}];

}

向节点发送数据点消息

使用此方法可向网络内的任意节点下发数据点消息。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
dpArr NSArray 数组中存放数据点对象
mac String 目标节点的mac
mesh IOTSmartMeshModel 发送数据点的mesh网络

例子:

- (void)publishDps {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_publishDPs:@"dpArr" mac:@"mac" withMesh:@"mesh" success:^ {

​ NSLog(@"publish success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"publish failure: %@", errMsg);

}];

}

获取节点的订阅节点列表

使用此方法可获取某节点所订阅的所有节点。如:A订阅了B、C、D,参数中传A的mac,返回B、C、D的对象数组。

请求参数:

参数名 类型 说明 备注 必需
mac String 节点的mac
mesh IOTSmartMeshModel 节点所属的mesh网络

例子:

- (void)getSubscribeArr {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_ getSubscribeNodeListWithMac: @"mac" withMesh:@"mesh" success:^(NSArray *nodeArr) {

​ NSLog(@"getSubscribeArr success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"getSubscribeArr failure: %@", errMsg);

}];

}

让节点去订阅另一个节点

此方法可让节点1(源节点)去订阅节点2(被订阅节点)。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
srcMac String 源节点
subMac String 源节点需要订阅的节点
mesh IOTSmartMeshModel 节点所属的mesh网络

例子:

- (void)addSubscribeNode {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_addSubscribeWithSourceNodeMac:@"srcMac" subscribeNodeMac:@"subMac" withMesh:@"mesh" success:^ {

​ NSLog(@"subscribe success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"subscribe failure: %@", errMsg);

}];

}

让节点取消订阅某个节点

使用此方法可让节点1(源节点)取消订阅节点2(被订阅节点),前提是节点1已经订阅了节点2。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
srcMac String 源节点
subMac String 源节点需要取消订阅的节点
mesh IOTSmartMeshModel 节点所属的mesh网络

例子:

- (void)addSubscribeNode {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_removeSubscribeWithSourceNodeMac:@"srcMac" subscribeNodeMac:@"subMac" withMesh:@"mesh" success:^ {

​ NSLog(@"remove subscribe success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"remove subscribe failure: %@", errMsg);

}];

}

下发极速小数据点

使用此方法可向某节点极速下发数据点消息。注意:此方法一次只能发送一个数据点且数据点只能使用(布尔、整形、枚举、浮点)类型。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
dpModel IOTSmartBlueToothDPModel 数据点对象
mac String 要发送到的节点的mac
mesh IOTSmartMeshModel 节点所属的mesh网络

例子:

- (void)addSubscribeNode {

​ [[IOTSmartBlueToothMesh shareInstance] IOTCloudSDK_topSpeedPublishSmallDP: @"dpModel" mac:@"mac" withMesh:@"mesh"];

}

实时接收节点发送二进制透传

用户遵循IOTSmartBlueToothMeshDelegate并实现IOTCloudSDK_didReceivedPushData: withMac:meshId:方法即可实时的接收到网络内的节点发送的二进制透传消息。

实时接收节点上报数据点

用户遵循IOTSmartBlueToothMeshDelegate并实现IOTCloudSDK_didReceivedDPArr: withMac:meshId:方法即可实时的接收到网络内的节点上报数据点消息。前提需要先连接Mesh网络。

实时接收节点上报极速小数据点

用户需要遵循IOTSmartBlueToothMeshDelegate协议并实现其中的代理方法IOTCloudSDK_didReceivedTopSpeedSmallDP:withMac:meshId:即可实时的接收到网络内节点上报的极速小数据点。前提需要连接Mesh网络。

监听网络连接和断开

手机端要监听Mesh网络的连接或非正常断开(主动断开只执行回调)。需将自身作为IOTSmartBlueToothMeshConnectionStatus通知的观察者。当手机与Mesh网络连接成功或非正常断开连接时即可监听到对应消息。

云端蓝牙Mesh

云端蓝牙Mesh对应的所有功能都在IOTSmartCloudBlueToothMesh(单例)类中。本节全部功能的前提条件:项目中必须要导入IOTSDK且必须要先进行登录。

创建Mesh网络

使用此方法可创建并初始化一个Mesh网络,并将此Mesh网络的信息保存至云端与当前登录用户进行关联。

请求参数:

参数名 类型 说明 备注 必需
name String 网络的名称
ttl int 消息的最大转发次数 Time To Live的缩写

例子:

- (void)createMesh {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_createBLEMeshWithMeshName:@"name" meshTTL:@"ttl" success:^(IOTSmartMeshModel *mesh) {

​ NSLog(@"createMesh success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"createMesh failure: %@", errMsg);

}];

}

删除指定的Mesh网络

使用此方法传入一个Mesh网络的对象,可删除该网络并重置网络下的所有节点。

请求参数:

参数名 类型 说明 备注 必需
mesh IOTSmartMeshModel 要删除的网络对象

例子:

- (void)removeMesh {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_removeBLEMesh:@"mesh" success:^ {

​ NSLog(@"remove success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"remove failure: %@", errMsg);

​ }];

}

获取所有Mesh网络

使用此方法可获取当前登录的用户拥有的所有Mesh网络的对象。

请求参数:无。

例子:

- (void)getAllMesh {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_getAllBLEMeshSuccess:^(NSArray *meshArr) {

​ NSLog(@"getAllMesh success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"getAllMesh failure: %@", errMsg);

​ }];

}

连接Mesh网络

使用此方法可连接到指定Mesh网络,进而可进行App与Mesh中节点的数据交互。

请求参数:

参数名 类型 说明 备注 必需
timeout int 连接的超时时间
mesh IOTSmartMeshModel 要连接的mesh网络

例子:

- (void)connectMesh {

[[IOTSmartCloudBlueToothMesh shareInstance]

IOTCloudSDK_connectBLEMesh:@"mesh" timeout:@"timeout" success:^ {

​ NSLog(@"connect success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"connect failure: %@", errMsg);

}];

}

断开Mesh网络

使用此方法可断开App与Mesh网络的连接。若已断开则直接返回成功。

请求参数:

参数名 类型 说明 备注 必需
mesh IOTSmartMeshModel 要断开的mesh网络

例子:

- (void)disconnectMesh {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_disConnectBLEMesh:@"mesh" success:^ {

​ NSLog(@"disconnect success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"disconnect failure: %@", errMsg);

}];

}

获取Mesh网络的所有节点

使用此方法可从云端获取指定Mesh网络下的所有节点。

请求参数:

参数名 类型 说明 备注 必需
mesh IOTSmartMeshModel 要获取节点的mesh网络

例子:

- (void)getAllNodes {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_getAllNodeWithBLEMesh:@"mesh" success:^(NSArray *nodeArr) {

​ NSLog(@"getAllNodes success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"getAllNodes failure: %@", errMsg);

​ }];

}

修改网络的名称及TTL

使用此方法可修改Mesh网络的名称及Mesh网络的TTL。前提要连接该Mesh网络。

请求参数:

参数名 类型 说明 备注 必需
meshName String 修改后的网络名称
meshTTL int 修改后的网络TTL
mesh IOTSmartMeshModel 要修改的mesh网络

例子:

- (void)modifyMeshNameAndTTL {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_modifyMeshName: @"meshName" meshTTL:@"meshTTL" withMesh:@"mesh" success:^{

​ NSLog(@"modify success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"modify failure: %@", errMsg);

}];

}

搜索周围的可入网节点

使用此方法可搜索周围没有被添加到Mesh网络的节点。

请求参数:

参数名 类型 说明 备注 必需
timeout int 搜索的超时时间
mesh IOTSmartMeshModel 要搜索节点的mesh网络

例子:

- (void)searchLeisureNode {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_searchNodeWithTimeout: @"timeout" withMesh:@"mesh" success:^(NSString nodeName, NSString mac) {

​ NSLog(@"search success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"search failure: %@", errMsg);

}];

}

Mesh网络添加节点

使用此方法可将搜索到的没有被添加到Mesh网络的节点添加到该Mesh网络。前提条件要先进行搜索。

请求参数:

参数名 类型 说明 备注 必需
mac String 节点的mac地址
productId int 产品ID
productKey String 产品的Key
mesh IOTSmartMeshModel 要添加节点的mesh网络

例子:

- (void)meshAddNode {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_addNodeWithMac:@"mac" productId: @"productId" productKey:@"productKey" toMesh:@"mesh" success:^(IOTSmartNode *node) {

​ NSLog(@"addNode success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"addNode failure: %@", errMsg);

}];

}

重置节点

使用此方法可将节点重置为未加入Mesh网络的节点,并将节点信息从指定的mesh网络中删除。注意与删除节点信息进行区分。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
node IOTSmartNode 需要重置的节点
mesh IOTSmartMeshModel 要重置节点的mesh网络

例子:

- (void)resetNode {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_resetNodeWithNode:@"node" fromMesh:@"mesh" success:^ {

​ NSLog(@"resetNode success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"resetNode failure: %@", errMsg);

}];

}

删除节点信息

此方法用来清除由于某些原因导致节点已不属于Mesh网络但节点信息还存在的节点。其他情况下请勿调用此方法,可能会导致节点信息从云端和本地清除了但节点还在Mesh网络内的情况,此时就必须用户手动在设备上进行重置。若要将某节点从网络中移除请使用重置节点方法。

请求参数:

参数名 类型 说明 备注 必需
node IOTSmartNode 需要删除信息的节点
mesh IOTSmartMeshModel 要删除节点的mesh网络

例子:

- (void)deleteNodeInfo {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_deleteNodeWithNode:@"node" fromMesh:@"mesh" success:^ {

​ NSLog(@"deleteNode success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"deleteNode failure: %@", errMsg);

​ }];

}

修改节点名称

使用此方法可修改网络内指定mac对应节点的名称。

请求参数:

参数名 类型 说明 备注 必需
nodeName String 修改后的节点的名称
mac String 要修改名称的节点mac
mesh IOTSmartMeshModel 要修改节点名称的mesh网络

例子:

- (void)modifyNodeName {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_modifyNodeName:@"nodeName" nodeMac:@"mac" fromMesh:@"mesh" success:^ {

​ NSLog(@"modify success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"modify failure: %@", errMsg);

}];

}

向节点发送二进制透传消息

使用此方法向指定的Mesh网络内的指定节点发送二进制透传消息。前提条件:需要连接网络。

请求参数:

参数名 类型 说明 备注 必需
data NSData 透传的数据
mac String 目标节点的mac
mesh IOTSmartMeshModel 发送透传消息的mesh网络

例子:

- (void)pushMessage {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_pushData:@"data" mac:@"mac" withMesh:@"mesh" success:^ {

​ NSLog(@"push success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"push failure: %@", errMsg);

}];

}

向节点发送数据点消息

使用此方法可向指定Mesh网络的指定节点下发数据点消息。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
dpArr NSArray 数组中存放数据点对象
mac String 目标节点的mac
mesh IOTSmartMeshModel 发送数据点的mesh网络

例子:

- (void)publishDps {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_publishDPs:@"dpArr" mac:@"mac" withMesh:@"mesh" success:^ {

​ NSLog(@"publish success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"publish failure: %@", errMsg);

}];

}

获取节点的订阅节点列表

使用此方法可获取某节点所订阅的所有节点。如:A订阅了B、C、D,参数中传A的mac,返回B、C、D的对象数组。

请求参数:

参数名 类型 说明 备注 必需
mac String 节点的mac
mesh IOTSmartMeshModel 节点所属的mesh网络

例子:

- (void)getSubscribeArr {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_getSubscribeNodeListWithMac:@"mac" withMesh:@"mesh" success:^(NSArray *nodeArr) {

​ NSLog(@"getSubscribeArr success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"getSubscribeArr failure: %@", errMsg);

}];

}

让节点去订阅另一个节点

此方法可让节点1(源节点)去订阅节点2(被订阅节点)。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
srcMac String 源节点
subMac String 源节点需要订阅的节点
mesh IOTSmartMeshModel 节点所属的mesh网络

例子:

- (void)addSubscribeNode {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_addSubscribeWithSourceNodeMac:@"srcMac" subscribeNodeMac:@"subMac" withMesh:@"mesh" success:^ {

​ NSLog(@"subscribe success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"subscribe failure: %@", errMsg);

}];

}

让节点取消订阅某个节点

使用此方法可让节点1(源节点)取消订阅节点2(被订阅节点),前提是节点1已经订阅了节点2。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
srcMac String 源节点
subMac String 源节点需要取消订阅的节点
mesh IOTSmartMeshModel 节点所属的mesh网络

例子:

- (void)addSubscribeNode {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_removeSubscribeWithSourceNodeMac:@"srcMac" subscribeNodeMac:@"subMac" withMesh:@"mesh" success:^ {

​ NSLog(@"remove subscribe success");

​ } failure:^(NSString *errMsg) {

​ NSLog(@"remove subscribe failure: %@", errMsg);

}];

}

向节点下发极速小数据点

使用此方法可向某节点极速下发数据点消息。注意:此方法一次只能发送一个数据点且数据点只能使用(布尔、整形、枚举、浮点)类型。前提条件:需要连接网络

请求参数:

参数名 类型 说明 备注 必需
dpModel IOTSmartBlueToothDPModel 数据点对象
mac String 要发送到的节点的mac
mesh IOTSmartMeshModel 节点所属的mesh网络

例子:

- (void)addSubscribeNode {

​ [[IOTSmartCloudBlueToothMesh shareInstance] IOTCloudSDK_topSpeedPublishSmallDP: @"dpModel" mac:@"mac" withMesh:@"mesh"];

}

实时接收节点发送二进制透传

用户遵循IOTSmartCloudBlueToothMeshDelegate代理协议并实现协议中的IOTCloudSDK_didReceivedPushData:withMac:meshUUID:方法可实时的接收到网络内的节点发送的二进制透传消息。

实时接收节点上报数据点

遵循IOTSmartCloudBlueToothMeshDelegate并实现IOTCloudSDK_didReceivedDPArr: withMac:meshUUID:方法可实时的接收到网络内的节点上报数据点消息。前提需要先连接Mesh网络。

实时接收节点上报极速小数据点消息

用户遵循IOTSmartCloudBlueToothMeshDelegate协议并实现其中的IOTCloudSDK_ didReceivedTopSpeedSmallDP:withMac:meshUUID: 方法可实时的接收到网络内节点上报的极速小数据点。前提需要连接Mesh网络。

监听网络连接和断开

手机端要监听Mesh网络的连接或非正常断开(主动断开只执行回调)。需将自身作为IOTSmartCloudBlueToothMeshConnectionStatus通知的观察者。当手机与Mesh网络连接成功或非正常断开连接时即可监听到对应消息。

Copyright & copy qinglianyun all right reserved,powered by Gitbook该文件修订时间: 2021-04-22 18:53:48

results matching ""

    No results matching ""