简体中文

基于IOTCAPIs的局域网设备搜索

星空无限传媒xk8027-高清全集免费看

功能描述

目前IOTCAPIs里面有提供一套局域网搜索的API,用以搜索同一个路由器下的设备。
API:
1.IOTC_Lan_Search2 ;此接口已废弃
2.IOTC_Lan_Search2_Ex;此接口已废弃
3.IOTC_Search_Device_Start+ IOTC_Search_Device_Stop+IOTC_Search_Device_Result

使用方法

APP端在需要搜索局域网设备时使用,这里以方法3为例。

// 设备搜索结果结构体数组(最多存储20台设备)
struct st_SearchDeviceInfo devices[20];
int deviceCount = 0;

// 启动设备搜索:超时3000ms,搜索间隔100ms
IOTC_Search_Device_Start(3000, 100);

// 循环获取搜索结果,直到收到中断请求
while (!isInterruptionRequested()) {
    // 获取搜索到的设备列表(最多20台,0表示非阻塞模式)
    int ret = IOTC_Search_Device_Result(devices, 20, 0);
    
    if (ret < 0) {
        // 搜索出错,退出循环
        printf("设备搜索出错,错误码:%d\n", ret);
        break;
    } else if (ret > 0) {
        // 发现新设备,更新设备计数并打印UID
        deviceCount = ret;
        printf("发现%d台设备:\n", deviceCount);
        for (int i = 0; i < deviceCount; i++) {
            // 修正:使用正确的数组名devices,而非psSearchDeviceInfo
            printf("  设备%d UID:%s\n", i + 1, devices[i].UID);
        }
    }
    // 若ret=0,无新设备,不处理
    
    // 1秒后再次查询
    msleep(1000);
}

// 停止设备搜索,释放资源
IOTC_Search_Device_Stop();
printf("设备搜索已停止,共发现%d台设备\n", deviceCount);

API说明

int32_t IOTC_Search_Device_Result(struct st_SearchDeviceInfo* psSearchDeviceInfo,int32_t nArrayLen,int32_t nGetAll)

参数说明:
[out] psSearchDeviceInfo,设备信息数组指针,即搜索结果会通过这个指针返回给应用层。
[in] nArrayLen,设备信息数组的长度
[in] nGetAll,0表示只返回新搜索到的设备,1表示所有的设备

返回值:
本次搜索到的UID的个数。

搜索到的设备,会存放到psSearchDeviceInfo数组中,对应的设备信息可以参考结构体的定义。

Tips
1.如果不想在搜索过程中,暴露出UID,设备端可以使用IOTC_Set_Device_Name(user_define_string)来携带自定义的字符串标识,APP端在搜到的参数里面可以拿到这个字符串标识。
2.如果想修改搜索端口,可以使用IOTC_Set_LanSearchPort()设定其他的端口,SDK默认使用32761端口做广播搜索。

即刻开启您的物联网之旅

联系解决方案专家
Kalay App
资讯安全白皮书
全球专利布局
解决方案
新闻动态
公司动态
行业资讯
媒体报道
永续发展
经营者的话
社会参与
环境永续
公司治理

+86 755 27702549

7×24小时服务热线

法律声明 隐私权条款

关注“TUTK”

TUTK服务尽在掌握

© 2022 星空无限传媒xk8027版权所有粤ICP备14023641号
在线咨询
扫一扫

TUTK服务尽在掌握

全国免费服务热线
+86 755 27702549

返回顶部