FeasyHome2.0.0 SDK集成使用文档

1.Android集成

1.1 添加必须权限

<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

1.2 初始化SDK

void Init(Context context);

1.3 创建Mesh网络

void CreateMeshNetwork(String networkName, FscMeshNetworkCallback fscMeshNetworkCallback);

1.4 删除网络

void deleteMeshNetworkFromDb(MeshNetwork meshNetwork);

1.5 获取当前使用的网络对象

MeshNetwork getMeshNetwork();

1.6 查询网络

void QueryMeshNetwork(String meshuuid, FscMeshNetworkCallback fscMeshNetworkCallback);

1.7 查询本地所有网络

void QueryMeshNetworks(FscMeshNetworksCallback fscMeshNetworksCallback);

1.8 导出网络

String exportMeshNetwork();

1.9 导出网络

String exportMeshNetwork(MeshNetwork meshNetwork);

1.10 导入网络

void importMeshNetworkJson(String json);

1.11 查询节点对象

ProvisionedMeshNode getNode(Integer unicastAddress);

1.12 获取设备节点列表

void getNodes(String meshuuid,QuerNodesCallback querNodesCallback);

1.13 删除本地节点数据

boolean deleteNode(@NonNull final ProvisionedMeshNode meshNode);

1.14 打开未入网状态灯开关广播

void OpenIndicatorByAdv(boolean state);

1.15 关闭广播

void CloseAdv();

1.16 扫描设备

    /**
     * @param stopTime   扫描时长
     * @param filterUuid   过滤uuid
     * @param mdevPid   设备pid标识
     * @param mdevSecondType   设备型号标识
     * @param mfscScancallback
     */
    void StartScan(long stopTime,UUID filterUuid, byte mdevPid, byte mdevSecondType, FscScancallback mfscScancallback);

1.17 停止扫描

void StopScan();

1.18 未入网设备闪灯(帮助确认找到扫到的设备)

void OpenSearchAdv(String mac);

1.19 配置未入网设备入网

void StartProvisionedNode(ExtendedBluetoothDevice extendedBluetoothDevice, ProvisioningCallback provisioningCallback);

1.20 断开连接

void Disconnect();

1.21 节点订阅群组

void AddNodeToGroup(ProvisionedMeshNode meshNod, byte[] group_adr, byte isGroupleader, SubscribeGroupCallback subscribeGroupCallback);

1.22 设置灯光亮度

void ControlLightness(String group_adr, byte lightness);

1.23 设置灯光色温

void ControlLightct(String group_adr, byte ct);

1.24 设置窗帘开度

void ControlCurtainOpenPercent(String group_adr, byte openpercent);

1.25 清除窗帘行程

void ControlCurtainCleanMil(String group_adr);

1.26 窗帘反向运行

void ControlCurtainDirection(String group_adr, byte direction);

1.27 控制设备开关(通用指令)

void ControlDevOnOff(String group_adr, byte onoff);

1.28 连接网络

void ConnectNetWork(String networkId, FscConnectCallback fscConnectCallback);

1.29 获取连接的设备节点地址

String getConnectedAdr();

1.30 删除组并把组中所有设备退网

void DeleteGroup(String group_adr);

1.31 获取组的信息

void GetGroupData(String group_adr, GroupDataCallback groupDataCallback);

1.32 单个设备退网

void ResetNode(int unicastAddress);

1.33 网络内所有设备退网

void ResetAllNode();

1.34 是否连接

boolean isConnect();

1.35 更新网络信息

void UpMeshnetwork(MeshNetwork meshNetwork);

1.36 开关面板按键绑定群组(可以是灯组或者窗帘组)

void AT_GroupBindPanelBtn(int unicastAddress, String group_adr, String btn_id, String do_type);

1.37 开关面板按键绑定色温功能

void AT_GroupBindColorBtn(int unicastAddress, String btn_id, String do_type);

1.38 开关面板按键绑定场景

void AT_SceneBindPanelBen(int unicastAddress, int sceneid, String btn_id, String do_type);

1.39 语音盒子绑定房间号

void SetAssignRoom(int unicastAddress, byte roomID);

1.40 场景绑定灯光组

void SceneBindLightGroup(int sceneid, String group_adr, byte lightness, byte ct);

1.41 场景绑定窗帘组

void SceneBindCurtainGroup(int sceneid, String group_adr, byte openPercent);

1.42 场景解绑组

void SceneUnbindGroup(int sceneid, String group_adr);

1.43 删除场景

void DelScene(int sceneid);

1.44 控制场景启动

void ControlSceneOnOff(int sceneid, byte onoff);

1.45 同步语音信息

void SyncVoice(int unicastAddress, byte[] data);

1.46 语音信息同步结束

void SynconeB(int unicastAddress, int room_code, byte iv);

6. 附录