NIMRTSOption.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. //
  2. // NIMRTSOption.h
  3. // NIMLib
  4. //
  5. // Created by Netease.
  6. // Copyright (c) 2015年 Netease. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import "NIMAVChatDefs.h"
  10. NS_ASSUME_NONNULL_BEGIN
  11. /**
  12. * 实时会话的附带选项, 用于发起和响应
  13. */
  14. @interface NIMRTSOption : NSObject
  15. /**
  16. * 扩展消息, 仅在发起会话时有效, 用于开发者在主被叫之间沟通额外信息
  17. */
  18. @property (nullable,nonatomic, copy) NSString *extendMessage;
  19. /**
  20. * 结束网络通话时自动停止AudioSession, 默认为 YES
  21. */
  22. @property (nonatomic, assign) BOOL autoDeactivateAudioSession;
  23. /**
  24. * 语音降噪, 默认为 YES
  25. */
  26. @property (nonatomic, assign) BOOL audioDenoise;
  27. /**
  28. * 人声检测, 默认为 YES
  29. */
  30. @property (nonatomic, assign) BOOL voiceDetect;
  31. /**
  32. * 啸叫抑制, 默认为 NO
  33. */
  34. @property (nonatomic, assign) BOOL audioHowlingSuppress;
  35. /**
  36. 期望发送高清语音, 只有在通话的所有的参与者都设置为高清语音时才生效。开启该选项后蓝牙耳机将不能使用
  37. */
  38. @property (nonatomic, assign) BOOL preferHDAudio;
  39. /**
  40. * 场景设置
  41. */
  42. @property (nonatomic, assign) NIMAVChatScene scene;
  43. /**
  44. 服务器录制语音
  45. */
  46. @property (nonatomic, assign) BOOL serverRecordAudio;
  47. /**
  48. 服务器录制实时会话数据
  49. */
  50. @property (nonatomic, assign) BOOL serverRecordData;
  51. /**
  52. * 始终持续呼叫, 用于设置被叫离线时是否仍然需要持续呼叫, 默认为 YES
  53. */
  54. @property (nonatomic, assign) BOOL alwaysKeepCalling;
  55. /**
  56. * 实时会话请求是否附带推送
  57. * @discussion 默认为YES。将这个字段设为NO,实时会话请求将不再有苹果推送通知。
  58. */
  59. @property (nonatomic,assign) BOOL apnsInuse;
  60. /**
  61. * 推送是否需要角标计数
  62. * @discussion 默认为YES。将这个字段设为NO,实时会话请求将不再对角标计数。
  63. */
  64. @property (nonatomic,assign) BOOL apnsBadge;
  65. /**
  66. * 推送是否需要带前缀(一般为昵称)
  67. * @discussion 默认为YES。将这个字段设为NO,推送消息将不带有前缀(xx:)。
  68. */
  69. @property (nonatomic,assign) BOOL apnsWithPrefix;
  70. /**
  71. * apns推送文案
  72. * @discussion 默认为nil,用户可以设置当前通知的推送文案
  73. */
  74. @property (nullable,nonatomic,copy) NSString *apnsContent;
  75. /**
  76. * apns推送声音文件
  77. * @discussion 默认为nil,用户可以设置当前通知的推送声音。该设置会覆盖apnsPayload中的sound设置
  78. */
  79. @property (nullable,nonatomic,copy) NSString *apnsSound;
  80. /**
  81. * apns推送Payload
  82. * @discussion 可以通过这个字段定义自定义通知的推送Payload,支持字段参考苹果技术文档,最多支持2K
  83. */
  84. @property (nullable,nonatomic,copy) NSDictionary *apnsPayload;
  85. @end
  86. NS_ASSUME_NONNULL_END