def doDisconnect(): print('\nall over %s' % ctime()) global HR if (not HR): HR = HttpRequest.HttpRequest() data = HR.open("camera._disconnect") print(data)
def stopRecord(): print('stoprecording---') global HR if (not HR): HR = HttpRequest.HttpRequest() try: data = HR.open("camera._stopRecording") if (not data['state'] == 'done'): # # print(type(ctime()),type(data)) # nowtime = ctime() # datastr = str(data) # errstr = 'nowtime is' + ctime() + '\ndata is:' + datastr # print(type(nowtime), type(datastr)) # SendEmail.send(errstr) print('first stop done~') print(data) except Exception as e: print(e) secdata = HR.open("camera._stopRecording") # if (not data['state'] == 'done'): # # print(type(ctime()),type(data)) # nowtime = ctime() # datastr = str(data) # errstr = 'nowtime is' + ctime() + '\ndata is:' + datastr # print(type(nowtime), type(datastr)) # SendEmail.send(errstr) print(secdata)
def StartLiving(): global count count = 1 print('startLive---') HR = HttpRequest.HttpRequest() HR.open("camera._startLive", parameters=getLiveDataFromExcel(count)) count = count + 1
def testStartQRCodeScan_ok(self): HR = HttpRequest.HttpRequest() start = HR.open("camera._startQRCodeScan") if (start['state'] == 'done'): data = HR.open("camera._stopQRCodeScan") self.assertIsNotNone(data['state'], '获取state失败!') self.assertTrue(data['state'] == 'done', 'state不等于done!')
def TakePic(): for i in range(10): print('TakePic') # 发送TakePicture请求 HR = HttpRequest.HttpRequest() # HR.getFingerPrint() sub_data = { "origin": { "mime": "jpeg", "framerate": None, "width": 4000, "bitrate": None, "height": 3000, "saveOrigin": 'true' }, "stiching": { "mime": "jpeg", "framerate": None, "width": 7680, "bitrate": None, "height": 3840, "mode": "pano" } } data = HR.open("camera._takePicture", parameters=sub_data) print(data) sleep(10)
def Record(): for i in range(): print('StartRecording') # 发送TakePicture请求 HR = HttpRequest.HttpRequest() # HR.getFingerPrint() sub_data = { "audio": { "bitrate": 128, "mime": "aac", "samplerate": 48000, "sampleFormat": "s16", "channelLayout": "stereo" }, "origin": { "mime": "h264", "framerate": 30, "width": 3200, "bitrate": 40960, "height": 2400, "saveOrigin": 'true' } } data = HR.open("camera._startRecording", parameters=sub_data) print(data) sleep(random.randint(10, 20)) enddata = HR.open("camera._endRecording") print(enddata)
def doSetExposureRandom(property=None, option=None, special=None): #property:如果有就用值,没有就所有随机。option:如果有传值就用值,没有就随机 global HR if (not HR): HR = HttpRequest.HttpRequest() if (not property): AUTO = 1 MANUAL = 0 ISOLATED = 2 if (special == 'hdr'): modeValue = [AUTO, ISOLATED] else: modeValue = [AUTO, MANUAL, ISOLATED] mode = random.choice(modeValue) HR.open('camera._setOptions', parameters={ 'property': 'aaa_mode', 'value': mode }) sleep(2) if (mode == MANUAL): if (special == 'shutter'): propertyValue = ['wb', 'iso_value'] else: propertyValue = ['wb', 'iso_value', 'shutter_value'] else: propertyValue = ['wb', 'ev_bias'] properties = random.sample(propertyValue, random.randint(1, len(propertyValue))) for property in range(len(properties)): #property = random.choice(propertyValue) exeProperty(properties[property], option) else: exeProperty(property, option)
def testGetImageParam(self): HR=HttpRequest.HttpRequest() data=HR.open("camera._getImageParam",fingerprint=Constant.fingerprint) self.assertTrue(data['state'] == 'done') self.assertTrue(data.has_key('results'), '获取results失败') self.assertIsNotNone(data['results']['hue'],'获取hue失败,hue:%s'%data['results']['hue']) self.assertIsInstance(data['results']['hue'],int) self.assertIsNotNone(data['results']['aaa_mode'], '获取aaa_mode失败,aaa_mode:%s' % data['results']['aaa_mode']) self.assertIsInstance(data['results']['aaa_mode'],int) self.assertIsNotNone(data['results']['wb'], '获取wb失败,wb:%s' % data['results']['wb']) self.assertIsInstance(data['results']['wb'],int) self.assertIsNotNone(data['results']['iso_value'], '获取hue失败,iso_value:%s' % data['results']['iso_value']) self.assertIsInstance(data['results']['iso_value'], int) self.assertIsNotNone(data['results']['shutter_value'], '获取shutter_value失败,shutter_value:%s' % data['results']['shutter_value']) self.assertIsInstance(data['results']['shutter_value'], int) self.assertIsNotNone(data['results']['brightness'], '获取brightness失败,brightness:%s' % data['results']['brightness']) self.assertIsInstance(data['results']['brightness'], int) self.assertIsNotNone(data['results']['contrast'], '获取contrast失败,contrast:%s' % data['results']['contrast']) self.assertIsInstance(data['results']['contrast'], int) self.assertIsNotNone(data['results']['saturation'], '获取saturation失败,saturation:%s' % data['results']['saturation']) self.assertIsInstance(data['results']['saturation'], int) self.assertIsNotNone(data['results']['sharpness'], '获取sharpness失败,sharpness:%s' % data['results']['sharpness']) self.assertIsInstance(data['results']['sharpness'], int) self.assertIsNotNone(data['results']['ev_bias'], '获取ev_bias失败,ev_bias:%s' % data['results']['ev_bias']) self.assertIsInstance(data['results']['ev_bias'], int) self.assertIsNotNone(data['results']['ae_meter'], '获取ae_meter失败,hue:%s' % data['results']['ae_meter']) self.assertIsInstance(data['results']['ae_meter'], int)
def exeProperty(property, option): global HR if (not HR): HR = HttpRequest.HttpRequest() if (property == 'wb'): if (option == None): option = random.randint(0, 5) elif (property == 'iso_value'): if (option == None): option = random.randint(0, 9) elif (property == 'ev_bias'): if (option == None): #option = round(random.uniform(-255, 255),1) option = round(random.randint(-160, 160)) elif (property == 'shutter_value'): if (option == None): shvalue = list(map(lambda x: x, range(7, 44))) option = random.choice(shvalue) #logging.info('camera._setOptions,parameters={property:',property,'value:',option,'}') data = HR.open('camera._setOptions', parameters={ 'property': property, 'value': option }) logging.info(data) #下次写遍历wb+iso ev+wb等等 sleep(1)
def testStartQRCodeScan_fail(self): HR = HttpRequest.HttpRequest() data = HR.open("camera._startQRCodeScan",fingerprint='') self.assertIsNotNone(data['state'], '获取state失败!') self.assertTrue(data['state'] == 'exception', 'state不等于exception!') self.assertTrue(data.has_key('error'), '没有error关键字!') self.assertIsNotNone(data['error']['description'], '获取error description失败!') self.assertIsNotNone(data['error']['code'], '获取error code失败!')
def testStopLive_ok(self): HR = HttpRequest.HttpRequest() start = HR.open("camera._stopLive", self.param) if (start['state'] == 'done'): data = HR.open("camera._stopRecording") self.assertIsNotNone(data, u'获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'done')
def testDisconneact_fail(self): HR=HttpRequest.HttpRequest() data=HR.open("camera._disconnect") self.assertIsNotNone(data['state'], '获取state失败!') self.assertTrue(data['state'] == 'exception', 'state不等于exception!') self.assertTrue(data.has_key('error'), '没有error关键字!') self.assertIsNotNone(data['error']['description'], '获取error description失败!') self.assertIsNotNone(data['error']['code'], '获取error code失败!')
def testStopRecording_ok(self): print(Constant.fingerprint) HR = HttpRequest.HttpRequest() start = HR.open("camera._startRecording", self.param) print(start) data = HR.open("camera._stopRecording") print(data) self.assertIsNotNone(data, u'获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'done')
def testStartPreview(self,_,param): HR=HttpRequest.HttpRequest() data = HR.open('camera._startPreview',fingerprint=Constant.fingerprint,parameters=param) print(data) self.assertIsNotNone(data,'获取data失败!data:%s'%data) self.assertTrue(data['state']=='done') self.assertTrue(data.has_key('results'), '获取results失败') previewUrl=data['results']['_previewUrl'] self.assertIsNotNone(previewUrl,'获取_previewUrl失败!')
def testStopLive_nostart(self): HR = HttpRequest.HttpRequest() data = HR.open("camera._stopLive") self.assertIsNotNone(data, u'获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'error') err = data['error'] self.assertIsNotNone(err['error'], u'获取error失败') self.assertIsNotNone(err['description'], u'获取description失败') self.assertIsNotNone(err['code'], u'获取code失败')
def setOption(property=None, option=None): global HR if (not HR): HR = HttpRequest.HttpRequest() data = HR.open('camera._setOptions', parameters={ 'property': property, 'value': option }) logging.info(data)
def testStopRecording_nostart(self): print(Constant.fingerprint) HR = HttpRequest.HttpRequest() data = HR.open("camera._stopRecording") print(data) self.assertIsNotNone(data, u'获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'error') err = data['error'] self.assertIsNotNone(err['description'], u'获取description失败') self.assertIsNotNone(err['code'], u'获取code失败')
def teststopStopRecording_errFP(self): print(Constant.fingerprint) HR = HttpRequest.HttpRequest() start = HR.open("camera._startRecording", self.param) if (start['state'] == 'done'): data = HR.open("camera._stopRecording", fingerprint='') self.assertIsNotNone(data, '获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'exception') err = data['error'] self.assertIsNotNone(err['description'], '获取description失败') self.assertIsNotNone(err['code'], '获取code失败')
def stopStopLive_errFP(self): HR = HttpRequest.HttpRequest() start = HR.openCommon(self.param) if (start['state'] == 'done'): data = HR.open("camera._stopLive", fingerprint='') self.assertIsNotNone(data, '获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'exception') err = data['error'] self.assertIsNotNone(err['error'], '获取error失败') self.assertIsNotNone(err['description'], '获取description失败') self.assertIsNotNone(err['code'], '获取code失败')
def testGetImageParam_otherabnormal(self): HR = HttpRequest.HttpRequest() data = HR.open("camera._getImageParam",fingerprint='') self.assertIsNotNone(data, '获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'exception') self.assertTrue(data.has_key('error'), '获取error失败') err_descri=data['error']['description'] self.assertIsNotNone(err_descri,u'获取错误描述失败!description:%s'%err_descri) err_code=data['error']['code'] self.assertIsNotNone(err_code,'获取错误码失败!code:%s'%err_code) self.assertTrue(err_code=='invalidParameterValue')
def teststopPreview_notok(self): print(Constant.fingerprint) HR = HttpRequest.HttpRequest() data = HR.open("camera._stopPreview") print(data) self.assertIsNotNone(data, u'获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'error') self.assertTrue(data.has_key('error'), '没有error关键字') self.assertIsNotNone(data['name'], '获取name失败') error = data['error'] self.assertIsNotNone(error['description'], '获取description失败') self.assertIsNotNone(error['code'], '获取code失败')
def testStartPreview_abnormalParaminTable(self, _, param): # HR = HttpRequest.HttpRequest() # data = HR.open('camera._startPreview', parameters=param) # self.assertIsNotNone(data, '获取data失败!data:%s' % data) # self.assertTrue(data['state'] == 'exception') # self.assertTrue(data.has_key('error'), '获取error失败') HR=HttpRequest.HttpRequest() data = HR.open('camera._startPreview',fingerprint=Constant.fingerprint,parameters=param) self.assertIsNotNone(data,'获取data失败!data:%s'%data) self.assertTrue(data['state']=='done') self.assertTrue(data.has_key('results'), '获取results失败') previewUrl=data['results']['_previewUrl'] self.assertIsNot(previewUrl,'获取_previewUrl失败!')
def testStartPreview_otherabnormal(self): HR = HttpRequest.HttpRequest() param=StartPreviewParam.StartPreview(stimime='h264', stiframe='30', stiwidth='1920', stibitrate='1000', stiheight='960', stimode='pano', orimime='h265', oriframe='30', oriwidth='1920', oribitrate='15000', oriheight='1440', saveori='false').getJsonData() data = HR.open('camera._startPreview',fingerprint='',parameters=param) print(data) self.assertIsNotNone(data, '获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'exception') self.assertTrue(data.has_key('error'), '获取error失败')
def testQueryState_ok(self): CommomUtils.Connect() HR = HttpRequest.HttpRequest() data = HR.open("camera._queryState") self.assertIsNotNone(data['state'], '获取state失败!') self.assertTrue(data['state'] == 'done', 'state不等于done!') self.assertTrue(data.has_key('results'), '没有results关键字!') results = data['results'] self.assertIsNotNone(results, '获取results失败!') preview = results['preview'] self.assertIsNotNone(preview['width'], '获取width失败!') self.assertIsNotNone(preview['url'], 'preview获取失败!') self.assertIsNotNone(results['version'], '获取version失败')
def testGetoffset(self): HR = HttpRequest.HttpRequest() data = HR.open("camera._getOffset", fingerprint=Constant.fingerprint) self.assertIsNotNone(data, '获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'done') self.assertTrue(data.has_key('results'), '获取results失败') pano4_3 = data['results']['offset_pano_4_3'] self.assertIsNot(pano4_3, '获取pano4_3失败!') pano16_9 = data['results']['offset_pano_16_9'] self.assertIsNot(pano16_9, '获取pano16_9失败!') _3dleft = data['results']['offset_3d_left'] self.assertIsNot(_3dleft, '获取offset_3d_left失败!') _3dright = data['results']['offset_3d_right'] self.assertIsNot(_3dright, '获取offset_3d_right失败!')
def doSetOptionRound(property=None): global HR if (not HR): HR = HttpRequest.HttpRequest() if (property == 'wb'): for i in range(5): option = i print('p--', property, 'o--', option) HR.open('camera._setOptions', parameters={ 'property': property, 'value': option }) takePicAction(30)
def PicAndRecord(): for i in range(100): HR = HttpRequest.HttpRequest() # HR.getFingerPrint() sub_data = { "origin": { "mime": "jpeg", "framerate": None, "width": 4000, "bitrate": None, "height": 3000, "saveOrigin": 'true' }, "stiching": { "mime": "jpeg", "framerate": None, "width": 7680, "bitrate": None, "height": 3840, "mode": "pano" } } data = HR.open("camera._takePicture", parameters=sub_data) print(data) sleep(10) sub_data_rec = { "audio": { "bitrate": 128, "mime": "aac", "samplerate": 48000, "sampleFormat": "s16", "channelLayout": "stereo" }, "origin": { "mime": "h264", "framerate": 30, "width": 3200, "bitrate": 40960, "height": 2400, "saveOrigin": 'true' } } recdata = HR.open("camera._startRecording", parameters=sub_data_rec) print(recdata) sleep(random.randint(10, 20)) enddata = HR.open("camera._endRecording") print(enddata) sleep(10)
def IsConnect(self): HR = HttpRequest.HttpRequest() if (not Constant.fingerprint): HR.getFingerPrint() if (Constant.fingerprint): data = HR.openHeart(key=0) self.returndata = data if (data): if ('error' not in data): return True else: print(data['error']) # if(data['error']['description']==u'camera not connected'): # Constant.fingerprint=None return False return False
def testStartQRCodeScan_ok(self): HR=HttpRequest.HttpRequest() param = StartPreviewParam.StartPreview(stimime='h264', stiframe='30', stiwidth='1920', stibitrate='1000', stiheight='960', stimode='pano', orimime='h265', oriframe='30', oriwidth='1920', oribitrate='15000', oriheight='1440', saveori='false').getJsonData() preivewdata = HR.open('camera._startPreview', parameters=param) print(preivewdata) data=HR.open("camera._startQRCodeScan") print(data) self.assertIsNotNone(data['state'],'获取state失败!') self.assertTrue(data['state']=='done','state不等于done!')
def testStartRecording(self, _, param): HR = HttpRequest.HttpRequest() print(param) data = HR.open('camera._startRecording', parameters=param) print(data) CommomUtils.Heart(2) self.assertIsNotNone(data, '获取data失败!data:%s' % data) self.assertTrue(data['state'] == 'done') try: print('stopRecording print Heart----------') data = HR.open("camera._stopRecording") if (not data['state'] == 'done'): print('first stop undone~') print(data) except Exception as e: print e secdata = HR.open("camera._stopRecording")