From cb9232b3ab413fae7bcc2b94abd70f18ca02b263 Mon Sep 17 00:00:00 2001 From: wxr <wxr@hdlchina.com.cn> Date: 星期二, 03 十二月 2024 11:20:32 +0800 Subject: [PATCH] 增加铃声;增加TCP/UDP连接选择 --- HDLLinPhoneSDK(OC)/HDLLinPhoneSDK/HDLLPOnMonitorViewController.m | 54 +++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 41 insertions(+), 13 deletions(-) diff --git "a/HDLLinPhoneSDK\357\274\210OC\357\274\211/HDLLinPhoneSDK/HDLLPOnMonitorViewController.m" "b/HDLLinPhoneSDK\357\274\210OC\357\274\211/HDLLinPhoneSDK/HDLLPOnMonitorViewController.m" index 0be0912..95309f1 100644 --- "a/HDLLinPhoneSDK\357\274\210OC\357\274\211/HDLLinPhoneSDK/HDLLPOnMonitorViewController.m" +++ "b/HDLLinPhoneSDK\357\274\210OC\357\274\211/HDLLinPhoneSDK/HDLLPOnMonitorViewController.m" @@ -10,7 +10,7 @@ #import <Photos/Photos.h> #import "HDLLinphoneUtlis.h" #import "HDLLinphoneManager.h" - +#import "HDLLinPhoneCommon.h" //#import "HDLLinPhoneSDK-Swift.h" //#import "LCUtlis.h" //#import "LCApiKit.h" @@ -37,7 +37,7 @@ @property (nonatomic,strong) dispatch_source_t openDoorTimer; @property (nonatomic, assign) int openDoorTimeout; - +@property (nonatomic, assign) BOOL isHangUpByRemote;//鏄惁瀵规柟杩滅▼鎸傛柇 /// 鎾斁鍣� //@property (nonatomic, strong) LCOpenSDK_PlayWindow *playWindow; @@ -58,6 +58,8 @@ NSString * LCSdkToken; NSString * LCHostApi; + NSString * cancelStr; + NSString * tipMsgStr; CGFloat Height66; bool isShowErrorAlert; @@ -75,7 +77,7 @@ [self initData]; [self initESVideo]; [self StartMonitoring]; -// [HDLLinphoneManager.instance enableMicro:false]; + [HDLLinphoneManager.instance enableMicro:false]; // //鏆傛椂涓嶆敮鎸佸紑閿佸姛鑳� // [self setUnlock:NO]; @@ -101,7 +103,8 @@ int state = [[notif.userInfo objectForKey:@"state"] intValue]; if ((state == LinphoneCallEnd || state == LinphoneCallError)){//鎸傛柇浜� NSLog(@"鎸傛柇鎴栧嚭閿欎簡"); - [self showUIAlertViewWithBack:@"鐩戣缁撴潫"]; + self.isHangUpByRemote=YES; + [self showUIAlertViewWithBack:endOfMonitoringStr]; } } @@ -119,6 +122,8 @@ unlockStr = @"寮�閿�"; endOfMonitoringStr = @"鐩戣缁撴潫"; unlockSuccessfullyStr = @"寮�閿佹垚鍔�"; + cancelStr = @"鍙栨秷"; + tipMsgStr = @"纭畾寮�閿佸悧?"; }else{ tipStr = @"Prompt"; @@ -129,6 +134,8 @@ unlockStr = @"Unlock"; endOfMonitoringStr = @"End of monitoring"; unlockSuccessfullyStr = @"Unlock successfully"; + cancelStr = @"Cancel"; + tipMsgStr = @"Are you sure to unlock?"; } @@ -218,11 +225,13 @@ -(UIView *)videoView{ if (_videoView == Nil) { _videoView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, GetRealWidth((210)))]; - _videoView.backgroundColor = UIColor.lightGrayColor; +// _videoView.backgroundColor = UIColor.lightGrayColor; + _videoView.backgroundColor = UIColor.blackColor; _videoView.layer.shadowColor = [UIColor colorWithRed:0/255.0 green:0/255.0 blue:0/255.0 alpha:0.25].CGColor; _videoView.layer.shadowOffset = CGSizeMake(0,0.5); _videoView.layer.shadowOpacity = 1; _videoView.layer.shadowRadius = 0; + _videoView.layer.masksToBounds=YES; } return _videoView; } @@ -255,9 +264,6 @@ [_screenshotTextBtn setTitleColor:TextColor forState:UIControlStateNormal]; NSLog(@"鎴浘"); //鎴浘 -// if(self.playWindow){ -// [self saveThumbImage]; -// } [HDLLinphoneManager.instance snapShotWithView:self.videoView]; } @@ -303,7 +309,26 @@ [_unlockTextBtn setTitleColor:TextColor forState:UIControlStateNormal]; //寮�閿� if(self.hdlLinphoneCallDelegate != NULL){ - [self.hdlLinphoneCallDelegate onUnlockAction]; + + UIAlertController *alertController = [UIAlertController alertControllerWithTitle:tipStr message:tipMsgStr preferredStyle:UIAlertControllerStyleAlert]; + + // 娣诲姞鍙栨秷鎸夐挳 + UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:cancelStr style:UIAlertActionStyleCancel handler:nil]; + [alertController addAction:cancelAction]; + + // 娣诲姞纭鎸夐挳 + WEAKSELF_AT + UIAlertAction *confirmAction = [UIAlertAction actionWithTitle:okStr style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { + + [weakSelf_AT.hdlLinphoneCallDelegate onUnlockAction]; + }]; + [alertController addAction:confirmAction]; + + // 鑾峰彇褰撳墠瑙嗗浘鎺у埗鍣� + UIViewController *currentViewController = [UIApplication sharedApplication].keyWindow.rootViewController; + + // 鏄剧ず寮圭獥 + [self presentViewController:alertController animated:YES completion:nil]; } } @@ -422,7 +447,7 @@ 寮�濮嬬洃鎺� */ -(void)StartMonitoring{ - NSLog(@"寮�濮嬪懠鍙細@%@",self.userName); + NSLog(@"寮�濮嬪懠鍙細%@",self.userName); [HDLLinphoneManager.instance startCall:self.userName]; } @@ -450,8 +475,9 @@ [alertController addAction:[UIAlertAction actionWithTitle:okStr style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { [self backAction]; }]]; - [self presentViewController:alertController animated:YES completion:nil]; +// [[HDLLinPhoneCommon rootController] presentViewController:alertController animated:YES completion:nil]; + } @@ -469,14 +495,16 @@ - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; - + } -(void)viewWillDisappear:(BOOL)animated{ [super viewWillDisappear:animated]; //1.鏆傚仠SDK鐩稿叧鎾斁 - [self stopPlay]; + if (!self.isHangUpByRemote) { + [self stopPlay]; + } //2.Delegate閲婃斁 // self.mLCCallDelegate = nil; //3.瀹氭椂鍣ㄩ噴鏀� -- Gitblit v1.8.0