VideoManager.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. //
  2. // VideoManager.h
  3. // SikeyComm
  4. //
  5. // Created by 刘振兴 on 2024/3/21.
  6. // Copyright © 2024 BaH Cy. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import <AgoraRtcKit/AgoraRtcKit.h>
  10. #import "EModel.h"
  11. NS_ASSUME_NONNULL_BEGIN
  12. #define NOTIFICATION_JUPHOON @"NOTIFICATION_JUPHOON"
  13. #define NOTIFICATION_AGORA @"NOTIFICATION_AGORA"
  14. @interface VideoManager : NSObject
  15. + (VideoManager *)shared;
  16. @property(nonatomic, assign) VIDEO_TYPE mVideoType;
  17. @property(nonatomic, strong) SKInCallViewController* mInCallVC;
  18. //Juphoon
  19. @property(nonatomic, strong) JCClient *mJuphoonClient;
  20. @property(nonatomic, strong) JCCall *mJuphoonCall;
  21. @property(nonatomic, strong) JCMediaDevice *mJuphoonMediaDevice;
  22. //声网
  23. @property(nonatomic, strong) AgoraRtcEngineKit *agoraKit;
  24. @property(nonatomic, strong) AgoraMediaRecorder *localRecorder;
  25. @property(nonatomic, strong) AgoraMediaRecorder *remoteRecorder;
  26. @property(nonatomic, strong) NSString* uid;
  27. @property(nonatomic, strong) NSString* mTicket;
  28. @property(nonatomic, strong) NSString* mToken;
  29. @property(nonatomic, strong) NSString* mChannelName;
  30. - (void)initManager;
  31. - (void)clear;
  32. - (void)videoCallStart:(NSString*)uid ticket:(NSString*)ticket;
  33. - (void)videoEnd:(BOOL)isIncomming isSendMessage:(BOOL)isSendMessage;
  34. - (void)videoAnswer;
  35. - (void)switchCamera;
  36. - (void)actionFromSocket:(SocketModel*)model dial:(NSInteger)dial;
  37. - (void)termWithTimeout;
  38. - (BOOL)isVideoTalking;
  39. - (JCCallItem*)getActiveCall;
  40. - (NSString*)getTalkName;
  41. - (NSString*)getTalkHeadImageURL;
  42. - (NSString*)getChannelName:(NSString*)sid ticket:(NSString*)ticket;
  43. @end
  44. NS_ASSUME_NONNULL_END