using Foundation; using ObjCRuntime; using UIKit; namespace Shared.IOS.HDLLinphoneSDK { [Static] //[Verify(ConstantsInterfaceAssociation)] partial interface Constants { // extern NSString *const _Nonnull HDLLPCallDelegateOpenDoorSuccess; [Field("HDLLPCallDelegateOpenDoorSuccess", "__Internal")] NSString HDLLPCallDelegateOpenDoorSuccess { get; } } // @protocol HDLLinphoneCallDelegate [Protocol, Model(AutoGeneratedName = true)] [BaseType(typeof(NSObject))] interface HDLLinphoneCallDelegate { // @required -(void)onAnswerAction; [Abstract] [Export("onAnswerAction")] void OnAnswerAction(); // @required -(void)onRejectCallAction; [Abstract] [Export("onRejectCallAction")] void OnRejectCallAction(); // @required -(void)onUnlockAction; [Abstract] [Export("onUnlockAction")] void OnUnlockAction(); // @required -(void)onHangUpAction:(int)callDuration; [Abstract] [Export("onHangUpAction:")] void OnHangUpAction(int callDuration); // @required -(void)onScreenshotSuccessfulAction:(UIImage * _Nonnull)image; //[Abstract] //[Export("onScreenshotSuccessfulAction:")] //void OnScreenshotSuccessfulAction(UIImage image); // @required -(void)onIncomingCall:(NSString * _Nonnull)userName; [Abstract] [Export("onIncomingCall:")] void OnIncomingCall(string userName); } // @interface HDLLinphoneCallDelegate : NSObject //[BaseType(typeof(NSObject))] //interface HDLLinphoneCallDelegate //{ //} // @interface HDLLinPhoneSDK : NSObject [BaseType(typeof(NSObject))] interface HDLLinPhoneSDK { [Wrap("WeakHdlLinphoneCallDelegate")] HDLLinphoneCallDelegate HdlLinphoneCallDelegate { get; set; } // @property (nonatomic, weak) id hdlLinphoneCallDelegate; [NullAllowed, Export("hdlLinphoneCallDelegate", ArgumentSemantic.Weak)] NSObject WeakHdlLinphoneCallDelegate { get; set; } // @property (assign, nonatomic) BOOL IsAutoJumpCallView; [Export("IsAutoJumpCallView")] bool IsAutoJumpCallView { get; set; } // @property (assign, nonatomic) BOOL IsIncomingReceivedCallState; [Export("IsIncomingReceivedCallState")] bool IsIncomingReceivedCallState { get; set; } // +(instancetype)instance; [Static] [Export("instance")] HDLLinPhoneSDK Instance(); // -(void)login:(NSString *)username password:(NSString *)pwd domain:(NSString *)domain; [Export("login:password:domain:")] void Login(string username, string pwd, string domain); // -(void)initalLinPhone; [Export("initalLinPhone")] void InitalLinPhone(); // -(void)callWithUserName:(NSString *)username title:(NSString *)title; [Export("callWithUserName:title:")] void CallWithUserName(string username, string title); // -(void)gotoHDLLinphoneIntercomVC:(NSString *)titleName; [Export("gotoHDLLinphoneIntercomVC:")] void GotoHDLLinphoneIntercomVC(string titleName); // -(void)gotoHDLSRLinphoneIntercomVC:(NSString *)titleName userName:(NSString *)username; [Export("gotoHDLSRLinphoneIntercomVC:userName:")] void GotoHDLSRLinphoneIntercomVC(string titleName, string username); // -(void)logoutAllLinphoneUser; [Export("logoutAllLinphoneUser")] void LogoutAllLinphoneUser(); // -(void)clearAllConfigs; [Export("clearAllConfigs")] void ClearAllConfigs(); } }