Exemple #1
0
    def webSearchConfirmation(self, speech, language, regMatched):
        webSearchQuery = regMatched.group(1)
        #webSearchConfirmation = regMatched.group(2)        
        lang = language.split("-")[0]

        resultCallback1View = UIAddViews(refId="")
        resultCallback1ViewView = UIAssistantUtteranceView()
        resultCallback1ViewView.dialogIdentifier="WebSearch#initiateWebSearch"
        resultCallback1ViewView.text=webSearchAnswerText[lang].format(u"„{0}“".format(webSearchQuery))
        resultCallback1ViewView.speakableText=webSearchAnswerText[lang].format(webSearchQuery)
        resultCallback1View.views = [resultCallback1ViewView]
        
        search = WebSearch(refId="", aceId="", query=webSearchQuery)
        resultCallback3View = UIAddViews(refId="")
        resultCallback3ViewView = UIAssistantUtteranceView()
        resultCallback3ViewView.dialogIdentifier="WebSearch#fatalResponse"
        resultCallback3ViewView.text=webSearchAnswerFailureText[lang]
        resultCallback3ViewView.speakableText=webSearchAnswerFailureText[lang]
        resultCallback3View.views=[resultCallback3ViewView]
        resultCallback3 = ResultCallback(commands=[resultCallback3View])
        search.callbacks = [resultCallback3]

        resultCallback2 = ResultCallback(commands=[search])
        resultCallback1View.callbacks = [resultCallback2]

        self.complete_request(callbacks=[ResultCallback(commands=[resultCallback1View])])
Exemple #2
0
    def webSearchConfirmation(self, speech, language):
        # lets use a little hack to get that regex
        matcher = self.webSearchConfirmation.__dict__[__criteria_key__]['de-DE']
        regMatched = matcher.match(speech)
        webSearchQuery = regMatched.group(1)
        webSearchConfirmation = regMatched.group(2)
        
        lang = language.split("-")[0]

        resultCallback1View = UIAddViews(refId="")
        resultCallback1ViewView = UIAssistantUtteranceView()
        resultCallback1ViewView.dialogIdentifier="WebSearch#initiateWebSearch"
        resultCallback1ViewView.text=webSearchAnswerText[lang].format(u"„{0}“".format(webSearchQuery))
        resultCallback1ViewView.speakableText=webSearchAnswerText[lang].format(webSearchQuery)
        resultCallback1View.views = [resultCallback1ViewView]
        
        search = WebSearch(refId="", aceId="", query=webSearchQuery)
        resultCallback3View = UIAddViews(refId="")
        resultCallback3ViewView = UIAssistantUtteranceView()
        resultCallback3ViewView.dialogIdentifier="WebSearch#fatalResponse"
        resultCallback3ViewView.text=webSearchAnswerFailureText[lang]
        resultCallback3ViewView.speakableText=webSearchAnswerFailureText[lang]
        resultCallback3View.views=[resultCallback3ViewView]
        resultCallback3 = ResultCallback(commands=[resultCallback3View])
        search.callbacks = [resultCallback3]

        resultCallback2 = ResultCallback(commands=[search])
        resultCallback1View.callbacks = [resultCallback2]

        self.complete_request(callbacks=[ResultCallback(commands=[resultCallback1View])])
Exemple #3
0
    def webSearchConfirmation(self, speech, language, regMatched):
        webSearchQuery = regMatched.group(1)
        #webSearchConfirmation = regMatched.group(2)
        
        lang = language.split("-")[0]

        resultCallback1View = UIAddViews(refId="")
        resultCallback1ViewView = UIAssistantUtteranceView()
        resultCallback1ViewView.dialogIdentifier="WebSearch#initiateWebSearch"
        resultCallback1ViewView.text=webSearchAnswerText[lang].format(u"„{0}“".format(webSearchQuery))
        resultCallback1ViewView.speakableText=webSearchAnswerText[lang].format(webSearchQuery)
        resultCallback1View.views = [resultCallback1ViewView]
        
        search = WebSearch(refId="", aceId="", query=webSearchQuery)
        resultCallback3View = UIAddViews(refId="")
        resultCallback3ViewView = UIAssistantUtteranceView()
        resultCallback3ViewView.dialogIdentifier="WebSearch#fatalResponse"
        resultCallback3ViewView.text=webSearchAnswerFailureText[lang]
        resultCallback3ViewView.speakableText=webSearchAnswerFailureText[lang]
        resultCallback3View.views=[resultCallback3ViewView]
        resultCallback3 = ResultCallback(commands=[resultCallback3View])
        search.callbacks = [resultCallback3]

        resultCallback2 = ResultCallback(commands=[search])
        resultCallback1View.callbacks = [resultCallback2]

        self.complete_request(callbacks=[ResultCallback(commands=[resultCallback1View])])
Exemple #4
0
    def webSearch(self, speech, language):
        if (language == "en-US"):
            if (speech.find('Web search') == 0):
                speech = speech.replace('Web search', ' ', 1)
            elif (speech.find('Web') == 0):
                speech = speech.replace('Web', ' ', 1)
            elif (speech.find('Internet search') == 0):
                speech = speech.replace('Internet search', ' ', 1)
            elif (speech.find('Internet') == 0):
                speech = speech.replace('Internet', ' ', 1)
            speech = speech.strip()
            if speech == "":
                speech = self.ask("What is your query?")
        elif (language == "de-DE"):
            if (speech.find('Websuche') == 0):
                speech = speech.replace('Websuche', ' ', 1)
            elif (speech.find('Web suche') == 0):
                speech = speech.replace('Web suche', ' ', 1)
            elif (speech.find('Internetsuche') == 0):
                speech = speech.replace('Internetsuche', ' ', 1)
            elif (speech.find('Internet suche') == 0):
                speech = speech.replace('Internet suche', ' ', 1)
            elif (speech.find('Web') == 0):
                speech = speech.replace('Web', ' ', 1)
            elif (speech.find('Internet') == 0):
                speech = speech.replace('Internet', ' ', 1)
            speech = speech.strip()
            if speech == "":
                speech = self.ask("Nach was soll ich suchen?")

        search = WebSearch(refId=self.refId, query=speech)
        self.sendRequestWithoutAnswer(search)
        self.complete_request()
    def webSearchConfirmation(self, speech, language):
        regMatched = re.match(u"(?u)\^webSearchQuery\^=\^([\w ]+)\^\^webSearchConfirmation\^=\^([\w]+)\^", speech, re.IGNORECASE)
        if regMatched != None:
            webSearchQuery = regMatched.group(1)
            webSearchConfirmation = regMatched.group(2)
        
        lang = language.split("-")[0]

        resultCallback1View = AddViews(refId="", views=[AssistantUtteranceView(dialogIdentifier="WebSearch#initiateWebSearch", text=webSearchAnswerText[lang].format(u"“{0}”".format(webSearchQuery)), speakableText=webSearchAnswerText[lang].format(webSearchQuery))])
        
        search = WebSearch(refId="", aceId="", query=webSearchQuery)
        resultCallback3View = AddViews(refId="", views=[AssistantUtteranceView(dialogIdentifier="WebSearch#fatalResponse", text=webSearchAnswerFailureText[lang], speakableText=webSearchAnswerFailureText[lang])])
        resultCallback3 = ResultCallback(commands=[resultCallback3View])
        search.callbacks = [resultCallback3]

        resultCallback2 = ResultCallback(commands=[search])
        resultCallback1View.callbacks = [resultCallback2]

        self.complete_request(callbacks=[ResultCallback(commands=[resultCallback1View])])
Exemple #6
0
    def webSearchConfirmation(self, speech, language):
        # lets use a little hack to get that regex
        matcher = self.webSearchConfirmation.__dict__[__criteria_key__]['de-DE']
        regMatched = matcher.match(speech)
        webSearchQuery = regMatched.group(1)
        webSearchConfirmation = regMatched.group(2)
        
        lang = language.split("-")[0]

        resultCallback1View = AddViews(refId="", views=[AssistantUtteranceView(dialogIdentifier="WebSearch#initiateWebSearch", text=webSearchAnswerText[lang].format(u"„{0}“".format(webSearchQuery)), speakableText=webSearchAnswerText[lang].format(webSearchQuery))])
        
        search = WebSearch(refId="", aceId="", query=webSearchQuery)
        resultCallback3View = AddViews(refId="", views=[AssistantUtteranceView(dialogIdentifier="WebSearch#fatalResponse", text=webSearchAnswerFailureText[lang], speakableText=webSearchAnswerFailureText[lang])])
        resultCallback3 = ResultCallback(commands=[resultCallback3View])
        search.callbacks = [resultCallback3]

        resultCallback2 = ResultCallback(commands=[search])
        resultCallback1View.callbacks = [resultCallback2]

        self.complete_request(callbacks=[ResultCallback(commands=[resultCallback1View])])
Exemple #7
0
 def askWiki(self, speech, language, regex):
     wikiLanguage = language[0:2]
     searchString = regex.group(regex.lastindex).strip()
     #searchString=searchString.replace(' ','_')
     url = "http://{0}.wikipedia.org/w/api.php?format=json&action=query&titles={1}&prop=revisions&rvprop=content".format(
         wikiLanguage, urllib.quote_plus(str(searchString.encode("utf-8"))))
     try:
         jsonString = urllib2.urlopen(url, timeout=10).read()
     except:
         jsonString = None
     if jsonString != None:
         response = json.loads(jsonString)
         if response['query']['pages'].keys()[0] > 0:
             pageId = response['query']['pages'].keys()[0]
             title = response['query']['pages'][pageId]['title']
             if language == "de-DE":
                 self.say(u"Nach \"{0}\" suchen...".format(title), None)
             elif language == "fr-FR":
                 self.say(u"Recherche de \"{0}\"...".format(title), None)
             elif language == "zh-CN":
                 self.say(u"正在搜索“{0}”…".format(title), None)
             else:
                 self.say(u"Searching for \"{0}\"...".format(title), None)
             wikiSearch = WebSearch(refId=self.refId,
                                    query=searchString,
                                    provider="Wikipedia")
             time.sleep(2)
             self.sendRequestWithoutAnswer(wikiSearch)
             self.complete_request()
         else:
             if language == "de-DE":
                 self.say(
                     'Ich habe nichts zu \"{0}\" auf Wikipedia gefunden'.
                     format(searchString))
             elif language == "fr-FR":
                 self.say(
                     u'Je n\'ai rien trouvé sur Wikipedia pour \"{0}\"'.
                     format(searchString))
             elif language == "zh-CN":
                 self.say(u"在维基百科上未找到“{0}”。".format(searchString))
             else:
                 self.say("Nothing found for \"{0}\" on Wikipedia".format(
                     searchString))
     else:
         if language == "de-DE":
             self.say('Ich konnte keine Verbindung zu Wikipedia aufbauen.')
         elif language == "fr-FR":
             self.say(u'Je n\'arrive pas à me connecter à Wikipedia.')
         elif language == "zh-CN":
             self.say(u'无法连接维基百科。')
         else:
             self.say("Couldn't establish connection to Wikipedia")
     self.complete_request()
Exemple #8
0
    def webSearch(self, speech, language, regex):
        if (language == "en-US"):
            if (speech.find('Web search') == 0):
                speech = speech.replace('Web search', ' ', 1)
            elif (speech.find('Web') == 0):
                speech = speech.replace('Web', ' ', 1)
            elif (speech.find('Internet search') == 0):
                speech = speech.replace('Internet search', ' ', 1)
            elif (speech.find('Internet') == 0):
                speech = speech.replace('Internet', ' ', 1)
            speech = speech.strip()
            if speech == "":
                speech = self.ask("What is your query?")
        elif (language == 'zh-CN'):
            speech = regex.group(regex.lastindex).strip()
            if (speech == ""):
                speech = self.ask(u"您想让我搜索什么?")
        elif (language == 'fr-FR'):
            speech = regex.group(regex.lastindex).strip()
            if (speech == ""):
                speech = self.ask(u"Que voulez-vous rechercher ?")
        elif (language == "de-DE"):
            if (speech.find('Websuche') == 0):
                speech = speech.replace('Websuche', ' ', 1)
            elif (speech.find('Web suche') == 0):
                speech = speech.replace('Web suche', ' ', 1)
            elif (speech.find('Internetsuche') == 0):
                speech = speech.replace('Internetsuche', ' ', 1)
            elif (speech.find('Internet suche') == 0):
                speech = speech.replace('Internet suche', ' ', 1)
            elif (speech.find('Web') == 0):
                speech = speech.replace('Web', ' ', 1)
            elif (speech.find('Internet') == 0):
                speech = speech.replace('Internet', ' ', 1)
            speech = speech.strip()
            if speech == "":
                speech = self.ask("Nach was soll ich suchen?")

        search = WebSearch(refId=self.refId, query=speech)
        self.sendRequestWithoutAnswer(search)
        self.complete_request()