AgoraChannelMediaRelayConfiguration
跨频道媒体流转发配置信息。
Objective-C
__attribute__((visibility("default"))) @interface AgoraChannelMediaRelayConfiguration: NSObject
@property (strong, nonatomic, readonly) NSDictionary<NSString *, AgoraChannelMediaRelayInfo *> *_Nullable destinationInfos;
@property (strong, nonatomic) AgoraChannelMediaRelayInfo *_Nonnull sourceInfo;
- (BOOL)setDestinationInfo:(AgoraChannelMediaRelayInfo *_Nonnull)destinationInfo forChannelName:(NSString *_Nonnull)channelName NS_SWIFT_NAME(setDestinationInfo(_:forChannelName:));
- (BOOL)removeDestinationInfoForChannelName:(NSString *_Nonnull)channelName NS_SWIFT_NAME(removeDestinationInfo(forChannelName:));
@end
sourceInfo
源频道信息 AgoraChannelMediaRelayInfo,包含如下成员:
- channelName:源频道名。默认值为
nil
,表示 SDK 填充当前的频道名。 - token:能加入源频道的 token。由你在 srcInfo 中设置的 channelName 和 uid 生成。
- 如未启用 App Certificate,可直接将该参数设为默认值
nil
,表示 SDK 填充 App ID。 - 如已启用 App Certificate,则务必填入使用 channelName 和 uid 生成的 token,且其中的 uid 必须为 0。
- 如未启用 App Certificate,可直接将该参数设为默认值
- uid:标识源频道中的转发媒体流的 UID。默认值为 0,请勿修改。
destinationInfos
目标频道信息 AgoraChannelMediaRelayInfo,包含如下成员:
- channelName :目标频道的频道名。
- token:能加入目标频道的 token。由你在 destInfos 中设置的 channelName 和 uid 生成。
- 如未启用 App Certificate,可直接将该参数设为默认值
nil
,表示 SDK 填充 App ID。 - 如已启用 App Certificate,则务必填入使用 channelName 和 uid 生成的 token。
注意由于目标频道中任意频道的 token 过期会导致所有跨频道推流停止,因此建议你将目标频道的 token 设置为相同的过期时长。
- 如未启用 App Certificate,可直接将该参数设为默认值
- uid:标识目标频道中的转发媒体流的 UID。取值范围为 0 到 (2 32-1),请确保与目标频道中的所有 UID 不同。默认值为 0,表示 SDK 随机分配一个 UID。
方法
setDestinationInfo
设置目标频道信息。详见 setDestinationInfo:forChannelName:。
removeDestinationInfoForChannelName
删除目标频道信息。详见 removeDestinationInfoForChannelName:。