def get_token(self): """ 获取directive的token. 默认在构造时自动生成了token :return: """ return Utils.getDictDataByKeyss(self.data, ['videoItem', 'stream', 'token'])
def get_original_device_id(self): """ 获取来自端上报的原始设备Id :return: """ return Utils.getDictDataByKeyss( self.data, ['context', 'System', 'device', 'originalDeviceId'])
def get_user_id(self): """ 获取用户ID :return: """ return Utils.getDictDataByKeyss( self.data, ['context', 'System', 'user', 'userId'])
def get_device_id(self): """ 获取设备Id :return: """ return Utils.getDictDataByKeyss( self.data, ['context', 'System', 'device', 'deviceId'])
def get_user_info(self): """ 获取用户信息 :return: """ return Utils.getDictDataByKeyss( self.data, ['context', 'System', 'user', 'userInfo'])
def get_baidu_uid(self): """ 获取百度Id :return: """ return Utils.getDictDataByKeyss(self.data, [ 'context', 'System', 'user', 'userInfo', 'account', 'baidu', 'baiduUid' ])
def __init__(self, data): """ :param data: 请求数据 """ super(Request, self).__init__() if not isinstance(data, dict): self.data = json.loads(data) else: self.data = data self.request_type = Utils.getDictDataByKeyss(self.data, ['request', 'type']) self.session = Session(self.data['session']) self.nlu = None if self.request_type == 'IntentRequest': self.nlu = Nlu( Utils.getDictDataByKeyss(self.data, ['request', 'intents'])) self.deviceData = None self.arrUserProfile = None
def get_query(self): """ 获取请求的Query :return: """ if self.request_type == 'IntentRequest' and self.data['request'][ 'query']['original']: return Utils.getDictDataByKeyss(self.data, ['request', 'query', 'original']) else: return ''
def get_screen_card_from_context(self): return Utils.getDictDataByKeyss(self.data, ['context', 'Screen', 'card'])
def get_bot_id(self): return Utils.getDictDataByKeyss( self.data, ['context', 'System', 'application', 'applicationId'])
def get_log_id(self): return Utils.getDictDataByKeyss(self.data, ['request', 'requestId'])
def get_timestamp(self): return Utils.getDictDataByKeyss(self.data, ['request', 'timestamp'])
def __get_system_user(self): return Utils.getDictDataByKeyss(self.data, ['context', 'System', 'user'])
def get_supported_interfaces(self): return Utils.getDictDataByKeyss( self.data, ['context', 'System', 'device', 'supportedInterfaces'])