Files
cloud-sdk/web-sdk/README.md
2023-04-19 13:36:02 +08:00

163 lines
3.9 KiB
Markdown

## Usage
### 1. Register your APP
Register your APP on irext SDK console [irext SDK console](http://site.irext.net), (You need to register an irext account first
While your APP is registered, you can see the APP key and APP secret in your APP list
### 2. Import the SDK
You can either import this project or download the web-api .jar file from [Java SDK](http://irext-lib-releaese.oss-cn-hangzhou.aliyuncs.com/decode/0.1.2/web-api-java-0.1.2.jar) and import to your project
### 3. Use the SDK
Import classes:
```java
import net.irext.webapi.model.*;
import net.irext.webapi.WebAPIs;
import net.irext.webapi.WebAPICallbacks.*;
```
Get web API instance:
```java
WebAPIs webApis = WebAPIs.getInstance();
```
Sign in for access id and token:
```java
// App key and secret are fetched in step 1.
SignInCallback signInCallback = new SignInCallback() {
@Override
public void onSignInSuccess(UserApp userApp) {
int id = userApp.getId();
int token = userApp.getToken();
}
@Override
public void onSignInFailed() {
}
@Override
public void onSignInError() {
}
};
webApis.signIn(context, signInCallback);
```
Fetch household appliances categories:
```java
ListCategoriesCallback listCategoriesCallback = new ListCategoriesCallback() {
@Override
public void onListCategoriesSuccess(List<Category> categories) {
}
@Override
public void onListCategoriesFailed() {
}
@Override
public void onListCategoriesError() {
}
};
webApis.listCategories(listCategoriesCallback);
```
Fetch brands of a certain category other than STB:
```java
ListBrandsCallback listBrandsCallback = new ListBrandsCallback() {
@Override
public void onListBrandsSuccess(List<Brand> brands) {
}
@Override
public void onListBrandsFailed() {
}
@Override
public void onListBrandsError() {
}
};
webApis.listBrands(category.getId(), listBrandsCallback);
```
Fetch cities (in China) for STB:
```java
ListProvincesCallback listProvincesCallback = new ListProvincesCallback() {
@Override
public void onListProvincesSuccess(List<City> provinces) {
}
@Override
public void onListProvincesFailed() {
}
@Override
public void onListProvincesError() {
}
};
ListCitiesCallback listCitiesCallback = new ListCitiesCallback() {
@Override
public void onListCitiesSuccess(List<City> cities) {
}
@Override
public void onListCitiesFailed() {
}
@Override
public void onListCitiesError() {
}
};
webApis.listProvinces(listProvincesCallback);
webApis.listCities(provincePrefix, listCitiesCallback);
```
Fetch STB operators of a certain city:
```java
ListOperatersCallback listOperatorCallback = new ListOperatersCallback() {
@Override
public void onListOperatorsSuccess(List<StbOperator> operators) {
}
@Override
public void onListOperatorsFailed() {
}
@Override
public void onListOperatorsError() {
}
};
webApis.listOperators(cityCode, listOperatorCallback);
```
Fetch remote indexes of a certain brand or STB operator:
```java
ListIndexesCallback listIndexesCallback = new ListIndexesCallback() {
@Override
public void onListIndexesSuccess(List<RemoteIndex> indexes) {
}
@Override
public void onListIndexesFailed() {
}
@Override
public void onListIndexesError() {
}
};
webApis.listRemoteIndexes(category.getId(), brand.getId(), city.getCode(), operator.getOperator_id(), listIndexesCallback);
```
Download IR binary for certain remote index:
```java
DownloadBinCallback downloadBinCallback = new DownloadBinCallback() {
@Override
public void onDownloadBinSuccess(InputStream inputStream) {
}
@Override
public void onDownloadBinFailed() {
}
@Override
public void onDownloadBinError() {
}
};
webApis.downloadBin(remoteIndex.getRemote_map(), remoteIndex.getId(), downloadBinCallback);
```