def refresh_service_status(self): if not self._task.task_is_running(): self._bindData = False self._task.set_status(0) else: _good_status = False _status_value = None if not self._bindService: ret = dsif.bindService(self._ip, self._port, self._task.name, 'get_status') if int(ret) == 1: self._bindService = True log.info('获取[%s]状态bind service成功' % self._task.name) else: self._bindService = False log.error('获取[%s]状态bind service异常,原因:%s' % (self._task.name, ret)) if not self._bindData: # 状态数据对象 bindData = pb_data_sensor_list.pb_data_sensor_list() bindData.list_id = 1 status_tag = bindData.pb_data_sensors.add() status_tag.name = '%s_status' % self._task.name log.debug('准备[%s]状态数据bind data...' % self._task.name) try: ret = dsif.bindData('get_status', 'pb_data_sensor_list', bindData, 'get_status_list') if int(ret) == 1: self._bindData = True log.info('获取[%s]状态[bind data]成功' % self._task.name) else: self._bindData = False log.error('获取[%s]状态[bind data]失败,原因:%s' % (self._task.name, ret)) except Exception as e: self._bindData = False log.error('获取[%s]状态[bind data]异常,原因:%s' % (self._task.name, repr(e))) if self._bindData: self._getData = pb_data_sensor_list.pb_data_sensor_list() try: log.debug('准备[%s]状态数据get data...' % self._task.name) ret = dsif.getData('get_status', 'get_status_list', 'pb_data_sensor_list', self._getData) if ret == 1 and len(self._getData.pb_data_sensors) > 0: _status_value = int(self._getData.pb_data_sensors[0].value) _good_status = True log.debug('[%s]当前运行状态为:%s' % (self._task.name, _status_value)) else: log.error('获取[%s]状态[get data]失败,原因:%s' % (self._task.name, ret)) except Exception as e: log.error('获取[%s]get data异常,原因:%s' % (self._task.name, repr(e))) if _good_status: self._task.set_status(_status_value) self._task.update_status_time(int(time.time())) else: self._bindData = False self._task.set_status(0)
def refresh_service_status(self): _good_status = False _status_value = None if not self._bindService: ret = dsif.bindService(self._task.ip, self._task.port, self._task.name, 'get_status') if int(ret) == 1: self._bindService = True log.info('获取[%s]状态bind service成功' % self._task.name) else: self._bindService = False log.error('获取[%s]状态bind service异常,原因:%s' % (self._task.name, ret)) if self._task.handle is not None: # 状态数据对象 bindData = pb_data_sensor_list.pb_data_sensor_list() bindData.list_id = 1 status_tag = bindData.pb_data_sensors.add() status_tag.name = '%s_status' % self._task.name try: ret = dsif.bindData('get_status', 'pb_data_sensor_list', bindData, 'get_status_list') if int(ret) == 1: self._bindData = True log.info('获取[%s]状态[bind data]成功' % self._task.name) else: self._bindData = False log.error('获取[%s]状态[bind data]异常,原因:%s' % (self._task.name, ret)) except Exception as e: self._bindData = False log.error('获取[%s]状态[bind data]异常,原因:%s' % (self._task.name, repr(e))) self._getData = pb_data_sensor_list.pb_data_sensor_list() try: ret = dsif.getData('get_status', 'get_status_list', 'pb_data_sensor_list', self._getData) if ret == 1 and len(self._getData.pb_data_sensors) > 0: _status_value = int( self._getData.pb_data_sensors[0].value) _good_status = True log.debug('[%s]当前运行状态为:%s' % (self._task.name, _status_value)) except Exception as e: log.error('获取[%s]get data异常,原因:%s' % (self._task.name, repr(e))) if _good_status: self._task.set_status(_status_value) self._task.set_status_last_time( common.get_current_timespan()) else: self._task.set_status(0)
set_sensor1.type = pb_config_tag.ENUM_INT32 set_sensor1.size = 4 set_sensor1.value = b'100' set_sensor1.time = int(time.time()) set_sensor2 = setData.pb_data_sensors.add() set_sensor2.name = '10002' set_sensor2.type = pb_config_tag.ENUM_INT32 set_sensor2.size = 4 set_sensor2.value = b'200' set_sensor2.time = int(time.time()) ret = dsif.setData('rtds', 'get_sensor_01', 'pb_data_sensor_list', setData) print('setData return:', ret) print('%s setData over %s' % ('-' * number, '-' * number)) #------------------------------------------------------------ time.sleep(3) getData = pb_data_sensor_list.pb_data_sensor_list() ret = dsif.getData('rtds', 'get_sensor_01', 'pb_data_sensor_list', getData) print('getData return: %s, data: %s' % (ret, getData)) print('%s getData over %s' % ('-' * number, '-' * number)) #------------------------------------------------------------ ret = dsif.stop('rtds', 'rtds_01') print('stop return:', ret) print('%s stop over %s' % ('-' * number, '-' * number)) #------------------------------------------------------------ ret = dsif.dispose('rtds', 'rtds_01', 'get_sensor_01') print('dispose return:', ret) print('%s dispose over %s' % ('-' * number, '-' * number))
# tag3.correct_coefficient = 3 # tag3.adiust_parameters = 2 # tag3.data_unit = pb_config_tag.LEN_M # data_value = opcda.SerializeToString() # data = pb_data_mongodb.m_config() # data.config_key = 'config_opc_01' # data.config_value = data_value # ret = dsif.setData('s_mongodb_service', 'get_config_opc_01', 'm_config', data) # print('setData return:', ret) #------------------------------------------------------------ import pb_data_sensor_list getData = pb_data_opcalarm_list.pb_data_opcalarm_list() ret = dsif.getData('s_mongodb_service', 'get_config_opc_01', 'pb_data_opcalarm_list', getData) index = 1 print('getData.pb_data_opcalarms len:', len(getData.pb_data_opcalarms)) for opcalarm in getData.pb_data_opcalarms: print('index: %s getdata: %s' % (index, opcalarm)) index += 1 # opcda_obj = pb_config_opcda_client.pb_config_opcda_client() # opcda_obj.ParseFromString(getData.config_value) # print('getData return: %s, data: %s' % (ret, opcda_obj)) print('%s getdata over %s' % ('-' * number, '-' * number)) # ------------------------------------------------------------ ret = dsif.stop('s_mongodb_service', 's_mongodb_service') print('stop return:', ret) print('%s stop over %s' % ('-' * number, '-' * number))
# tag3.correct_coefficient = 3 # tag3.adiust_parameters = 2 # tag3.data_unit = pb_config_tag.LEN_M # data_value = opcda.SerializeToString() # data = pb_data_mongodb.m_config() # data.config_key = 'config_opc_01' # data.config_value = data_value # ret = dsif.setData('s_mongodb_service', 'get_config_opc_01', 'm_config', data) # print('setData return:', ret) #------------------------------------------------------------ import pb_data_sensor_list getData = pb_data_mongodb.m_config() ret = dsif.getData('s_mongodb_service', 'get_config_opc_01', 'm_config', getData) print('getdata', getData) opcda_obj = pb_config_opcda_client.pb_config_opcda_client() opcda_obj.ParseFromString(getData.config_value) print('getData return: %s, data: %s' % (ret, opcda_obj)) print('%s getdata over %s' % ('-' * number, '-' * number)) # ------------------------------------------------------------ ret = dsif.stop('s_mongodb_service', 's_mongodb_service') print('stop return:', ret) print('%s stop over %s' % ('-' * number, '-' * number)) #------------------------------------------------------------ ret = dsif.dispose('s_mongodb_service', 's_mongodb_service', 'get_config_opc_01') print('dispose return:', ret)