Last Updated on : 2023-06-05 03:04:26download
Smart Residence App SDK is designed to provide a variety of modules and components for mobile app development in smart apartment rental scenarios. In light of this purpose, the philosophy of sites is abstracted away from smart rental scenarios. Each site encompasses a collection of devices, accounts, permissions, and other resources that are managed by app users.
Site management supports the following capabilities:
After login, TuyaResidenceSite
must be called to query site information and manage sites. TuyaResidenceSite
is used to manage sites. For example, create, modify, query, or delete a site, and manage users on the site.
Make sure that TuyaResidenceSite
in ViewController
or other objects is declared as a global variable (@property). Otherwise, a temporary variable of TuyaResidenceSite
might be released during initialization due to the scope limit, and thus nil
is returned.
This API method must be called each time an object of TuyaResidenceSite
is used. The siteId
parameter of the API method is also required to call other object methods of the class. If you do not have a site ID, call + createSiteWithName:geoName:rooms:latitude:longitude:success:failure:
to create a site.
After the site object is initialized, call fetchSiteDetailWithSuccess:failure:
to return site details. This way, the site instance object can have data respecting the properties siteModel
, roomList
, deviceList
, groupList
, sharedDeviceList
, and sharedGroupList
.
API description
+ (instancetype)siteWithSiteId:(long long)siteId;
Request parameters
Parameter | Description |
---|---|
siteId | The site ID. You can call TuyaResidenceSiteModel to get the value. |
Return parameters
Parameter | Description |
---|---|
instancetype | An object of TuyaResidenceSite , used to call the API methods of TuyaResidenceSite . |
API description
+ (void)createSiteWithName:(NSString *)siteName
geoName:(NSString *)geoName
rooms:(NSArray <NSString *>*)rooms
latitude:(double)latitude
longitude:(double)longitude
success:(TYSuccessLongLong)success
failure:(TYFailureError)failure;
Request parameters
Parameter | Description |
---|---|
siteName | The name of the site. |
geoName | The name of the city in which the site is located. |
rooms | The string array of room names included on the site. |
latitude | The latitude of the site, used to locate the site and show suitable units. |
longitude | The longitude of the site, used to locate the site and show suitable units. |
Return parameters
Parameter | Description |
---|---|
success | The success callback. The new site is returned. |
failure | The failure callback. An error message is returned. |
Example
[TuyaResidenceSite createSiteWithName:siteName geoName:geoName rooms:areas latitude:latitude longitude:longitude success:^(long long result) {
} failure:^(NSError *error) {
}];
Returns details of a site. After the successful call, you can query the cached site and device information by using [TuyaResidenceSite siteWithSiteId:siteId].siteModel;
. We recommend that you make this API request to cache device information immediately after site initialization.
API description
- (void)fetchSiteDetailWithSuccess:(void (^)(TuyaResidenceSiteModel *siteModel))success
failure:(TYFailureError)failure;
Return parameters
Parameter | Description |
---|---|
success | The success callback. An object of TuyaResidenceSiteModel is returned, including site details. |
failure | The failure callback. An error message is returned. |
Example
[self.site fetchSiteDetailWithSuccess:^(TuyaResidenceSiteModel * _Nonnull siteModel) {
} failure:^(NSError *error) {
}];
API description
+ (void)fetchSiteListWithSuccess:(void(^)(NSArray <TuyaResidenceSiteModel *> *sites))success
failure:(TYFailureError)failure;
Return parameters
Parameter | Description |
---|---|
success | The success callback. TuyaResidenceSiteModel is returned to include a list of site information such as site type. |
failure | The failure callback. An error message is returned. |
Example
[TuyaResidenceSite fetchSiteListWithSuccess:^(NSArray<TuyaResidenceSiteModel *> * _Nonnull homes) {
} failure:^(NSError *error) {
}];
Returns a list of rooms on a site.
API description
- (void)fetchSiteRoomCountWithSuccess:(TYSuccessID)success
failure:(TYFailureError)failure;
Return parameters
Parameter | Description |
---|---|
success | The success callback. A list of rooms on the site is returned. |
failure | The failure callback. An error message is returned. |
Example
[self.site fetchSiteRoomCountWithSuccess:^(id result) {
} failure:^(NSError *error) {
}];
API description
- (void)updateSiteInfoWitSiteName:(NSString *)siteName
geoName:(NSString *)geoName
latitude:(double)latitude
longitude:(double)longitude
success:(TYSuccessHandler)success
failure:(TYFailureError)failure;
Request parameters
Parameter | Description |
---|---|
siteName | The name of the site. |
geoName | The name of the city in which the site is located. |
latitude | The latitude of the site. |
longitude | The longitude of the site. |
Return parameters
Parameter | Description |
---|---|
success | The success callback. Site information is modified. |
failure | The failure callback. An error message is returned. |
Example
[self.site updateSiteInfoWitSiteName:siteName geoName:geoname latitude:latitude longitude:longitude success:^{
} failure:^(NSError *error) {
}];
API description
- (void)addSiteRoomWithRoomName:(NSString *)roomName
success:(TYSuccessHandler)success
failure:(TYFailureError)failure;
Request parameters
Parameter | Description |
---|---|
roomName | The name of a room. |
Return parameters
Parameter | Description |
---|---|
success | The success callback. The new room is returned. |
failure | The failure callback. An error message is returned. |
Example
[self.site addSiteRoomWithRoomName:_addRoomTextField.text success:^{
} failure:^(NSError *error) {
}];
Modifies information about a member on a site. If the role of a member is set to TYSiteRoleType_Owner
, the member is assigned the ownership of the site.
API description
- (void)updateSiteMemberInfoWithMemberId:(long long)memberId
headPicImage:(UIImage * _Nullable)headPicImage
memberName:(NSString *)memberName
role:(TYSiteRoleType)role
success:(TYSuccessHandler)success
failure:(TYFailureError)failure;
Request parameters
Parameter | Description |
---|---|
memberId | The ID of the member to be managed. |
headPicImage | The image of the member avatar. |
memberName | The username of a member. |
role | The role of the member. |
Return parameters
Parameter | Description |
---|---|
success | The success callback. Member information is modified. |
failure | The failure callback. An error message is returned. |
Example
[self.site updateSiteMemberInfoWithMemberId:memberId headPicImage:nil memberName:_memberNameTextField.text role:TYSiteRoleType_Owner success:^{
} failure:^(NSError *error) {
}];
API description
- (void)removeSiteWithOwnerId:(long long)ownerId
success:(TYSuccessHandler)success
failure:(TYFailureError)failure;
Request parameters
Parameter | Description |
---|---|
ownerId | The owner ID of the site. |
Return parameters
Parameter | Description |
---|---|
success | The success callback. The site is deleted. |
failure | The failure callback. An error message is returned. |
Example
[self.site removeSiteWithOwnerId:groupUserId success:^{
} failure:^(NSError *error) {
}];
API description
- (void)fetchExpiredListWithPageSize:(NSInteger)pageSize
pageNo:(NSInteger)pageNo
success:(void (^)(NSArray<TuyaResidenceExpiredAuthorModel * > *))success
failure:(TYFailureError)failure;
Request parameters
Parameter | Description |
---|---|
pageSize | The number of entries to be returned per page. Valid values: 1 to 100 . |
pageNo | The page number, starting from 1 and incremented by 1 for each request. |
Return parameters
Parameter | Description |
---|---|
success | The success callback. A list of expired residence orders is returned. |
failure | The failure callback. An error message is returned. |
Example
[self.site fetchExpiredListWithPageSize:20 pageNo:1 success:^(NSArray<TuyaResidenceExpiredAuthorModel *> *list) {
} failure:^(NSError *error) {
}];
API description
- (void)fetchSiteResidentListWithSuccess:(void (^)(NSArray<TuyaResidenceSiteMemberModel *> *list))success
failure:(TYFailureError)failure;
Return parameters
Parameter | Description |
---|---|
success | The success callback. A list of members on the site is returned. |
failure | The failure callback. An error message is returned. |
Example
[self.site fetchSiteResidentListWithSuccess:^(NSArray<TuyaResidenceSiteMemberModel *> * _Nonnull list) {
} failure:^(NSError *error) {
}];
API description
- (void)removeMemberWithMemberId:(long long)memberId
success:(TYSuccessHandler)success
failure:(TYFailureError)failure;
Request parameters
Parameter | Description |
---|---|
memberId | The ID of the member to be removed. |
Return parameters
Parameter | Description |
---|---|
success | The success callback. The member is removed. |
failure | The failure callback. An error message is returned. |
Example
[self.site removeMemberWithMemberId:model.memberId success:^{
} failure:^(NSError *error) {
}];
Returns information about the current logged-in user of a site.
API description
- (void)fetchLoginedSiteMemberInfoWithSuccess:(void(^)(TuyaResidenceSiteMemberModel *model))success
failure:(TYFailureError)failure;
Return parameters
Parameter | Description |
---|---|
success | The success callback. The current user information is returned. |
failure | The failure callback. An error message is returned. |
Example
[self.site fetchLoginedSiteMemberInfoWithSuccess:^(TuyaResidenceSiteMemberModel * _Nonnull model) {
} failure:^(NSError *error) {
}];
Is this page helpful?
YesFeedbackIs this page helpful?
YesFeedback