2025-10-09 16:48:46 +08:00

516 lines
12 KiB
Objective-C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// NIMSignalingRequest.h
// NIMLib
//
// Created by taojinliang on 2018/10/25.
// Copyright © 2018 Netease. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "NIMSignalManagerProtocol.h"
@class NIMSignalingPushInfo;
NS_ASSUME_NONNULL_BEGIN
#pragma mark - 创建频道请求
/**
* 创建频道请求
*/
@interface NIMSignalingCreateChannelRequest : NSObject
/**
频道名,非必填
*/
@property(nullable, nonatomic, copy) NSString *channelName;
/**
频道类型,必填
*/
@property(nonatomic, assign) NIMSignalingChannelType channelType;
/**
额外字段,非必填(频道的自定义扩展信息)
*/
@property(nullable, nonatomic, copy) NSString *channelExt;
@end
#pragma mark - 延迟频道有效期(同时延迟操作者和频道)
/**
* 延迟频道有效期(同时延迟操作者和频道)
*/
@interface NIMSignalingDelayChannelRequest : NSObject
/**
频道id必填
*/
@property(nonatomic, copy) NSString *channelId;
@end
#pragma mark - 关闭频道请求
/**
* 关闭频道请求
*/
@interface NIMSignalingCloseChannelRequest : NSObject
/**
频道id必填
*/
@property(nonatomic, copy) NSString *channelId;
/**
是否存离线YES表示存离线NO表示不存离线非必填默认为NO
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
通知事件额外字段,非必填 (操作者附加的自定义信息,透传给其他人)
*/
@property(nullable, nonatomic, copy) NSString *customInfo;
@end
#pragma mark - 加入频道请求
/**
* 加入频道请求
*/
@interface NIMSignalingJoinChannelRequest : NSObject
/**
频道id必填
*/
@property(nonatomic, copy) NSString *channelId;
/**
通知事件额外字段,非必填(操作者附加的自定义信息,透传给其他人)
*/
@property(nullable, nonatomic, copy) NSString *customInfo;
/**
用户id非必填 自己在频道中对应的uid大于零有效无效时服务器会分配随机唯一的uid
*/
@property(nonatomic, assign) uint64_t uid;
/**
是否存离线YES表示存离线NO表示不存离线非必填默认为NO
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
nertc房间名填了则会返回token
*/
@property(nullable, nonatomic, copy) NSString *nertcChannelName;
/**
nertc的token有效期表示token的过期时间单位秒选填默认10分钟会回填
*/
@property(nonatomic, assign) long nertcTokenTtl;
/**
nertc的加入房间的请求参数
*/
@property(nullable, nonatomic, copy) NSString *nertcJoinRoomQueryParamMap;
@end
#pragma mark - 离开频道请求
/**
* 离开频道请求
*/
@interface NIMSignalingLeaveChannelRequest : NSObject
/**
频道id必填
*/
@property(nonatomic, copy) NSString *channelId;
/**
是否存离线YES表示存离线NO表示不存离线非必填默认为NO
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
通知事件额外字段,非必填 (操作者附加的自定义信息,透传给其他人)
*/
@property(nullable, nonatomic, copy) NSString *customInfo;
@end
#pragma mark - 邀请加入频道请求
/**
* 邀请加入频道请求
*/
@interface NIMSignalingInviteRequest : NSObject
/**
频道id必填
*/
@property(nonatomic, copy) NSString *channelId;
/**
对方,被邀请人,必填
*/
@property(nonatomic, copy) NSString *accountId;
/**
是否存离线YES表示存离线NO表示不存离线非必填默认为NO
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
邀请唯一标识(用于标识持续呼叫),必填邀请者邀请的请求id需要邀请者填写之后取消邀请、拒绝、接受需要复用该标示长度必须小于128超出会报参数错误
*/
@property(nonatomic, copy) NSString *requestId;
/**
通知事件额外字段,非必填(邀请者附加的自定义信息,透传给被邀请者)
*/
@property(nullable, nonatomic, copy) NSString *customInfo;
/**
推送信息
*/
@property(nonatomic, strong) NIMSignalingPushInfo *push;
@end
#pragma mark - 取消邀请请求
/**
* 取消邀请请求
*/
@interface NIMSignalingCancelInviteRequest : NSObject
/**
频道id必填
*/
@property(nonatomic, copy) NSString *channelId;
/**
对方,被邀请人,必填
*/
@property(nonatomic, copy) NSString *accountId;
/**
邀请唯一标识(用于标识持续呼叫),必填长度必须小于128超出会报参数错误
*/
@property(nonatomic, copy) NSString *requestId;
/**
是否存离线YES表示存离线NO表示不存离线非必填默认为NO
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
通知事件额外字段,非必填
*/
@property(nullable, nonatomic, copy) NSString *customInfo;
@end
#pragma mark - 拒绝邀请请求
/**
* 拒绝邀请请求
*/
@interface NIMSignalingRejectRequest : NSObject
/**
频道id必填
*/
@property(nonatomic, copy) NSString *channelId;
/**
对方,被邀请人,必填
*/
@property(nonatomic, copy) NSString *accountId;
/**
邀请唯一标识(用于标识持续呼叫),必填长度必须小于128超出会报参数错误
*/
@property(nonatomic, copy) NSString *requestId;
/**
是否存离线YES表示存离线NO表示不存离线非必填默认为NO
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
通知事件额外字段,非必填
*/
@property(nullable, nonatomic, copy) NSString *customInfo;
@end
#pragma mark - 接受邀请请求
/**
* 接受邀请请求
*/
@interface NIMSignalingAcceptRequest : NSObject
/**
频道id必填 (对应的频道id)
*/
@property(nonatomic, copy) NSString *channelId;
/**
对方,被邀请人,必填 (邀请者的账号)
*/
@property(nonatomic, copy) NSString *accountId;
/**
邀请唯一标识(用于标识持续呼叫),必填(邀请者邀请的请求id用于被邀请者回传request_id_作对应的回应操作)长度必须小于128超出会报参数错误
*/
@property(nonatomic, copy) NSString *requestId;
/**
是否存离线YES表示存离线NO表示不存离线非必填默认为NO
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
通知事件额外字段,非必填(被邀请者附加的自定义信息,透传给邀请者)
*/
@property(nullable, nonatomic, copy) NSString *acceptCustomInfo;
/**
是否加入默认不打开打开后后续参数uid_、join_custom_info_有效
*/
@property(nonatomic, assign) BOOL autoJoin;
/**
自己在频道中对应的uid大于零有效无效时服务器会分配随机唯一的uid
*/
@property(nonatomic, assign) uint64_t uid;
/**
加入频道的自定义扩展信息,将在加入频道通知中带给其他频道成员
*/
@property(nullable, nonatomic, copy) NSString *joinCustomInfo;
/**
nertc房间名填了则会返回token
*/
@property(nullable, nonatomic, copy) NSString *nertcChannelName;
/**
nertc的token有效期表示token的过期时间单位秒选填默认10分钟会回填
*/
@property(nonatomic, assign) long nertcTokenTtl;
@property(nullable, nonatomic, copy) NSString *nertcJoinRoomQueryParamMap;
@end
#pragma mark - 邀请并且加入请求
/**
* 接受邀请请求
*/
@interface NIMSignalingJoinAndAcceptRequest : NSObject
/**
频道id必填 (对应的频道id)
*/
@property(nonatomic, copy) NSString *channelId;
/**
对方,被邀请人,必填 (邀请者的账号)
*/
@property(nonatomic, copy) NSString *accountId;
/**
邀请唯一标识(用于标识持续呼叫),必填(邀请者邀请的请求id用于被邀请者回传request_id_作对应的回应操作)长度必须小于128超出会报参数错误
*/
@property(nonatomic, copy) NSString *requestId;
/**
是否存离线YES表示存离线NO表示不存离线非必填默认为NO
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
额外字段,非必填(被邀请者附加的自定义信息,透传给邀请者)
*/
@property(nullable, nonatomic, copy) NSString *customInfo;
/**
自己在频道中对应的uid大于零有效无效时服务器会分配随机唯一的uid
*/
@property(nonatomic, assign) uint64_t uid;
/**
nertc房间名填了则会返回token
*/
@property(nullable, nonatomic, copy) NSString *nertcChannelName;
/**
nertc的token有效期表示token的过期时间单位秒选填默认10分钟会回填
*/
@property(nonatomic, assign) long nertcTokenTtl;
/**
nertc加入房间的请求参数可以转成json , 非必填
*/
@property(nullable, nonatomic, copy) NSString *nertcJoinRoomQueryParamMap;
@end
#pragma mark - 呼叫请求
/**
* 呼叫请求
*/
@interface NIMSignalingCallExRequest : NSObject
/**
频道类型,必填
*/
@property(nonatomic, assign) NIMSignalingChannelType channelType;
/**
被操作者(如被邀请者),必填
*/
@property(nonatomic, copy) NSString *accountId;
/**
邀请唯一标识(用于标识持续呼叫), 必填(邀请者邀请的请求id用于被邀请者回传request_id_作对应的回应操作)长度必须小于128超出会报参数错误
*/
@property(nonatomic, copy) NSString *requestId;
/**
频道名,非必填
*/
@property(nullable, nonatomic, copy) NSString *channelName;
/**
额外字段,非必填(频道的自定义扩展信息)
*/
@property(nullable, nonatomic, copy) NSString *channelExt;
/**
自己在频道中对应的uid大于零有效无效时服务器会分配随机唯一的uid非必填
*/
@property(nonatomic, assign) uint64_t uid;
/**
附加自定义信息,非必填
*/
@property(nonatomic, copy) NSString *customInfo;
/**
是否存离线1表示存离线0表示不存离线非必填
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
nertc房间名填了则会返回token
*/
@property(nullable, nonatomic, copy) NSString *nertcChannelName;
/**
nertc的token有效期是一个long表示token的过期时间单位秒选填默认10分钟回包时会回填
*/
@property(nonatomic, assign) long nertcTokenTtl;
/**
nertc加入房间的请求参数可以转成json
*/
@property(nullable, nonatomic, copy) NSString *nertcJoinRoomQueryParamMap;
/**
推送信息
*/
@property(nonatomic, strong) NIMSignalingPushInfo *push;
@end
#pragma mark - 自定义控制指令请求
/**
* 自定义控制指令请求
*/
@interface NIMSignalingControlRequest : NSObject
/**
频道id必填
*/
@property(nonatomic, copy) NSString *channelId;
/**
若指定则只发给指定人,否则发给频道内所有人,非必填
*/
@property(nullable, nonatomic, copy) NSString *accountId;
/**
通知事件额外字段,非必填
*/
@property(nullable, nonatomic, copy) NSString *customInfo;
@end
#pragma mark - 呼叫请求(组合:创建、加入、邀请)
/**
* 呼叫请求(组合:创建、加入、邀请)
*/
@interface NIMSignalingCallRequest : NIMSignalingCreateChannelRequest
/**
自己在频道中对应的uid
*/
@property(nonatomic, assign) uint64_t uid;
/**
对方accid被邀请者的账号
*/
@property(nonatomic, copy) NSString *accountId;
/**
邀请唯一标识(用于标识持续呼叫),必填长度必须小于128超出会报参数错误
*/
@property(nonatomic, copy) NSString *requestId;
/**
是否存离线YES表示存离线NO表示不存离线非必填默认为NO
*/
@property(nonatomic, assign) BOOL offlineEnabled;
/**
通知事件额外字段,非必填
*/
@property(nullable, nonatomic, copy) NSString *customInfo;
/**
通知事件额外字段,非必填
*/
@property(nullable, nonatomic, strong) NIMSignalingPushInfo *push;
/**
nertc房间名填了则会返回token
*/
@property(nullable, nonatomic, copy) NSString *nertcChannelName;
/**
nertc的token有效期表示token的过期时间单位秒选填默认10分钟会回填
*/
@property(nonatomic, assign) long nertcTokenTtl;
@end
#pragma mark - 查询请求
/**
* 查询请求
*/
@interface NIMSignalingQueryChannelRequest : NSObject
/**
频道名称,选填(对应的频道名称)(channelId两者必须要填一个优先使用channelName查询)
*/
@property(nonatomic, copy) NSString *channelName;
/**
频道id选填 (对应的频道id)(channelName两者必须要填一个,必须进入房间后才能使用channelId查询)
*/
@property(nonatomic, copy) NSString *channelId;
@end
NS_ASSUME_NONNULL_END