# API 文档

[API文档](https://sdkdoc.gizwits.com/rn/basic)

# 基本概念

## 设备对象
根据通讯方式来区分，模组有以下几种通讯方式

* 蓝牙
* 局域网
* mqtt

对应的，在SDK，设备就衍生出了三种能力

* bleCapability
* lanCapability
* mqttCapability

![img](https://goms-1251025085.cos.ap-guangzhou.myqcloud.com/gizwits_docs/tuozhan.png)

这三个能力都继承于 BaseCapability，都实现了控制、连接等功能。在开发的过程中您可以自由的选择连接某个通道，对某个通道下发指令。

```javascript
// ble
await device.bleCapability.connect()
device.bleCapability.getDp()

// mqtt
await device.mqttCapability.connect()
device.mqttCapability.getDp()
```

## 连接的云服务
初始化sdk的时候，您可以手动选择连接的云
* api.gizwits.com 大陆
* euapi.gizwits.com 欧洲地区
* usapi.gizwits.com 美东地区
```javascript
import RNGizSDKManagerModule from 'react-native-gizwits-sdk-v5';
let data = await RNGizSDKManagerModule.initSDK({
    appID: 'xxx',
    appSecret: 'xxx',
    productInfos: [
    {
        productKey: 'xxx',
        productSecret: 'xxx',
    },
    ],
    serverInfo: {
    openAPIInfo: "api.gizwits.com"
    }
});
```

如果不填写，将会按照客户端所在的地区自动选择
