示例#1
0
    def set_opration_tic(self, task_name):

        if self.is_should_disable():
            return
        if task_name:
            self.user_event_list[task_name] = Utils.get_millisecond()
            self.is_event_make_pair[task_name] = False
示例#2
0
    def __build_upload_data(self):
        sysEvent = {
            'preEventList': {},
            'postEventList': {},
            'eventCostTime': self.event_cost_time,
            'deviceEventCostTime': self.device_event_cost_time
        }

        timestamp = Utils.get_millisecond()

        retData = {
            'serviceData': {
                'sdkType': self.config.get_sdk_type(),
                'sdkVersion': self.config.get_sdk_version(),
                'requestId': self.request.get_request_id(),
                'query': self.request.get_query(),
                'reason': self.request.get_reson(),
                'deviceId': self.request.get_device_id(),
                'requestType': self.request.get_type(),
                'userId': self.request.get_user_id(),
                'intentName': self.request.get_intent_name(),
                'sessionId': self.request.get_session_id(),
                'location': self.request.get_location(),
                'slotToElicit': self.response.get_slot_name(),
                'shouldEndSession': self.response.get_should_end_session(),
                'outputSpeech': self.response.get_output_speech(),
                'reprompt': self.response.get_reprompt(),
                'audioUrl': self.audio_url,
                'appInfo': {
                    'appName': self.app_name,
                    'packageName': self.package_name,
                    'deepLink': self.deep_link
                },
                'requestStartTime': self.request_start_time,
                'requestEndTime': self.request_end_time,
                'timestamp': timestamp,
                'sysEvent': sysEvent,
                'userEvent': self.user_event_list
            }
        }

        orginData = json.dumps(retData)
        logging.info('数据统计原始数据:' + orginData)

        base64Data = str(base64.b64encode(orginData.encode('utf-8')))
        # logging.info('数据统计加密数据:' + base64Data)

        if self.environment == 0:
            pkversion = 'debug'
        else:
            pkversion = 'online'

        return (base64Data, timestamp, pkversion)
示例#3
0
    def set_opration_toc(self, task_name):

        if self.is_should_disable():
            return
        if task_name:

            if task_name in self.user_event_list:
                old_time = self.user_event_list[task_name]
            else:
                old_time = None
            cost_time = 0

            if old_time:
                curr_time = Utils.get_millisecond()
                cost_time = curr_time - old_time

            self.user_event_list[task_name] = cost_time
            self.is_event_make_pair[task_name] = True
示例#4
0
 def __init__(self, post_data, private_key=None):
     if not isinstance(post_data, dict):
         post_data = json.loads(post_data)
     self.data = post_data
     self.request_start_time = Utils.get_millisecond()
     self.request_end_time = 0
     self.request = Request(post_data)
     self.audio_url = None
     self.app_name = None
     self.package_name = None
     self.deep_link = None
     self.event_start_time = 0
     self.event_cost_time = 0
     self.device_event_start_time = 0
     self.device_event_cost_time = 0
     self.user_event_list = {}
     self.is_event_make_pair = {}
     self.config = BotMonitorConfig()
     self.private_key = private_key
     self.environment = 0
     self.enabled = False
     self.certificate = None
     self.response = None
示例#5
0
    def set_device_event_end(self):

        if self.is_should_disable():
            return
        self.device_event_cost_time = Utils.get_millisecond(
        ) - self.device_event_start_time
示例#6
0
    def set_event_start(self):

        if self.is_should_disable():
            return
        self.event_start_time = Utils.get_millisecond()
示例#7
0
    def set_response_data(self, response_data):

        if self.is_should_disable():
            return
        self.request_end_time = Utils.get_millisecond()
        self.response = Response(response_data)