概述
TXIoTEngine 是整个 SDK 的入口,通过 +(instancetype)getInstance 获取单例,使用前须先调用 login 完成身份验证。说明:
线程模型:SDK 接口可在任意线程调用;回调均在主线程(UI 线程)触发,调用方可在回调中直接操作 UI。
SDK 模块一览:
模块 | 说明 |
TXIoTEngine 引擎管理 | 登录、获取各个业务对象。 |
TXIoTFamilyManager 家庭与房间管理 | 家庭、房间、成员管理。 |
TXIoTDeviceManager 设备管理 | 设备绑定/解绑、分享、指令下发、属性查询。 |
TXIoTCallSession 音视频通话 | 音视频通话。 |
TXIoTMonitorSession 监控直播 | 监控直播(拉流/对讲/云台/截图/录像)。 |
公共类型与枚举 | 错误码、通用枚举、公共数据结构、回调接口。 |
方法列表
方法签名 | 描述 |
获取引擎单例。 | |
添加/移除引擎事件代理。 | |
使用 appKey、userId、用户签名登录。 | |
登出当前账号。 | |
获取当前登录用户信息。 | |
获取家庭管理器,未登录时返回 null。 | |
获取设备管理器,未登录时返回 null。 | |
获取音视频通话会话,未登录时返回 null。 | |
获取实时监控会话,未登录时返回 null。 |
getInstance
getInstance
TXIoTEngine 实例 getInstance | () |
获取引擎单例
返回值 | 描述 |
TXIoTEngine 实例 | SDK 引擎单例对象。 |
addDelegate:
addDelegate:
void addDelegate: | (id<TXIoTEngineDelegate> delegate) |
添加引擎事件代理对象
参数 | 描述 |
delegate | id<TXIoTEngineDelegate>;引擎事件代理对象。 |
removeDelegate:
removeDelegate:
void removeDelegate: | (id<TXIoTEngineDelegate> delegate) |
移除引擎事件代理对象
参数 | 描述 |
delegate | id<TXIoTEngineDelegate>;要移除的引擎事件代理对象。 |
login:userId:userSignature:
login:userId:userSignature:
void login:userId:userSignature: | (NSString* appKey, NSString* userId, TXIoTUserSignature* userSignature) |
使用 appKey、userId、用户签名进行登录
参数 | 描述 |
appKey | NSString*;应用密钥。 |
userId | NSString*;用户 ID。支持字母、数字、下划线,长度不超过 32 字节。 |
userSignature |
logout
logout
void logout | () |
登出当前账号
getLoginUserInfo
getLoginUserInfo
TXIoTUserInfo* getLoginUserInfo | () |
获取当前已登录的用户信息
返回值 | 描述 |
getFamilyManager
getFamilyManager
TXIoTFamilyManager* getFamilyManager | () |
获取家庭管理器
返回值 | 描述 |
TXIoTFamilyManager* |
getDeviceManager
getDeviceManager
TXIoTDeviceManager* getDeviceManager | () |
获取设备管理器
返回值 | 描述 |
TXIoTDeviceManager* |
getCallSession
getCallSession
TXIoTCallSession* getCallSession | () |
获取音视频通话会话
返回值 | 描述 |
TXIoTCallSession* |
getMonitorSession
getMonitorSession
TXIoTMonitorSession* getMonitorSession | () |
获取实时监控会话
返回值 | 描述 |
TXIoTMonitorSession* |
引擎事件回调
TXIoTEngineDelegate 协议定义引擎层事件回调,所有方法均为 @optional。TXIoTEngineDelegate
回调 | 说明 |
onLoginSuccess | 登录成功。 |
onLoginFailure:errMsg: | |
onLogout | 登出完成。 |
onUserSignatureExpired | 用户签名已过期,需重新登录。 |
onReceivePushMessage: | 收到推送消息(如设备上下线状态变更)。 |
引擎相关数据结构与枚举
TXIoTPushMessage
TXIoTPushMessage
推送消息,通过
onReceivePushMessage: 回调接收。字段 | 说明 |
messageTime | 推送消息时间戳(Unix 秒级时间戳)。 |
type | 推送消息类型。 |
subType | 推送消息子类型。 |
deviceId | 关联的设备 ID。 |
TXIoTUserSignature
TXIoTUserSignature
用户签名,用于登录认证。
字段 | 说明 |
requestId | 请求 ID,由服务端签发。 |
timestamp | 签名的 Unix 秒级时间戳。 |
nonce | 签名随机数。 |
signature | 签名字符串,由服务端签发。 |
TXIoTPushMessageType
TXIoTPushMessageType
推送消息类型枚举。
枚举 | 取值 |
TXIoTPushMessageTypeStatusChange | 0 |
TXIoTPushMessageSubType
TXIoTPushMessageSubType
推送消息子类型枚举。
枚举 | 取值 |
TXIoTPushMessageSubTypeOnline | 0 |
TXIoTPushMessageSubTypeOffline | 1 |