iOS 音视频通话

监听呼入通话和通话状态

通过设置相应 CallDelegate 来监听呼叫过来的通话。

proxy.callDelegate = xx; //设置呼叫处理 delegate

拨打个人语音通话

    /**
     * 发起语音呼叫
     * @param peerUserID 对方用户ID
     * @param roomID 标识一次呼叫的唯一ID
     * @param extraData 附加信息
     * @return true 表示调用成功
     */
-(BOOL) audioCall:(NSString*)peerUserID roomID:(NSString*)roomID extraData:(NSData*)extraData;

拨打个人视频通话

    /**
     * 发起视频呼叫
     * @param peerUserID 对方用户ID
     * @param roomID 标识一次呼叫的唯一ID
     * @param extraData 附加信息
     * @return true 表示调用成功
     */
-(BOOL) videoCall:(NSString*)peerUserID roomID:(NSString*)roomID extraData:(NSData*)extraData;

接听通话

    /**
     * 接受视频呼叫
     * @param extraData 附加信息
     * @return true 表示调用成功
     */
-(BOOL) acceptVideoCall:(NSData*)extraData;
 
    /**
     * 接受视频呼叫
     * @param extraData 附加信息
     * @return true 表示调用成功
     */
-(BOOL) acceptAudioCall:(NSData*)extraData;

拒绝接听

    /**
     * 拒绝来电
     * @return true 表示调用成功
     */
-(BOOL) reject;

挂断个人通话

    /**
     * 挂断呼叫
     * @return true 表示调用成功
     */
-(BOOL) hangup;

拨打群组通话

    /**
     * 发起群视频呼叫请求
     * @param groupID 群组ID
     * @param roomID 标识一次呼叫的唯一ID
     * @param ssrc 流标识
     * @param csrc 用户在群中的标识
     * @param relayServer turn server 列表
     * @param extraData 附加信息
     * @return true 表示调用成功
     */
-(BOOL) groupCall:(NSString*)groupID roomID:(NSString*)roomID ssrc:(NSInteger)ssrc csrc:(NSInteger)csrc
      relayServer:(NSString*)relayServer extraData:(NSData*)extraData;

挂断群组通话

   /**
     * 挂断群组呼叫
     * @param groupID 群组ID
     * @param extraData 附加信息
     * @return true 表示调用成功
     */
-(BOOL) groupHangup:(NSString*)groupID extraData:(NSData*)extraData;