def ove_launch_video_space_func(text,lang): if lang.lower() == 'english': if text.lower() == 'video local 9': space = Space(ove_host="localhost", space_name="LocalNine", control_port=8080) space.enable_online_mode() space.enable_browser_opening() video = space.add_section(w=2880, h=1616, x=720, y=404, app_type='videos') video.set_url('https://www.youtube.com/watch?v=QJo-VFs1X5c') speak_text = "please choose which viewer you want to see, zero to eight and choose some operations after loading the video" tts.speak(speak_text=speak_text,language=lang) conf.SPACE = "LocalNine" elif text.lower() == 'video local 4': space = Space(ove_host="localhost", space_name="LocalFour", control_port=8080) space.enable_online_mode() space.enable_browser_opening() video = space.add_section(w=2880, h=1616, x=0, y=0, app_type='videos') video.set_url('https://www.youtube.com/watch?v=QJo-VFs1X5c') speak_text = "please choose which viewer you want to see, zero to three and choose some operations after loading the video" tts.speak(speak_text=speak_text,language=lang) conf.SPACE = "LocalFour" else: if(text == '视频数字9'): #send post request to image application space = Space(ove_host="localhost", space_name="LocalNine", control_port=8080) space.enable_online_mode() space.enable_browser_opening() video = space.add_section(w=2880, h=1616, x=720, y=404, app_type='videos') video.set_url('https://www.youtube.com/watch?v=QJo-VFs1X5c') speak_text = "请选择您想用哪一个显示器观看,分屏零到分屏八并在下载视频后选择相应操作" tts.speak(speak_text=speak_text,language=lang) conf.SPACE = "LocalNine" elif(text == '视频数字4'): space = Space(ove_host="localhost", space_name="LocalFour", control_port=8080) space.enable_online_mode() space.enable_browser_opening() video = space.add_section(w=2880, h=1616, x=0, y=0, app_type='videos') video.set_url('https://www.youtube.com/watch?v=QJo-VFs1X5c') speak_text = "请选择您想用哪一个显示器观看,分屏零到分屏三并在下载视频后选择相应操作" tts.speak(speak_text=speak_text,language=lang) conf.SPACE = "LocalFour" else: speak_text = "错误的屏幕选择,请重新选择九屏或者四屏播放视频" tts.speak(speak_text=speak_text,language=lang)
def ove_launch_image_func(lang): if lang.lower() == 'english': speak_text = "welcome to launch the image application" else: speak_text = "欢迎使用OVE图像应用" tts.speak(speak_text=speak_text, language=lang) #send post request to image application space = conf.SPACE url = "http://" + conf.URL + "/app/images" url_post = "http://" + conf.URL + "/section" headers = {'Content-Type': 'application/json'} if space == "DOCluster": payload = { "space": space, "x": 13440, "y": 0, "w": 3840, "h": 4320, "app": { "url": url, "states": { "load": "Highsmith" } } } elif space == "DOSection": payload = { "space": space, "x": 13440, "y": 0, "w": 5760, "h": 4320, "app": { "url": url, "states": { "load": "Highsmith" } } } r = requests.post(url_post, data=json.dumps(payload), headers=headers) ControlID = json.loads(r.text) url_web = 'http://' + conf.URL + '/app/images/control.html?oveSectionId=' + str( ControlID['id']) try: webbrowser.open(url_web) except Exception as e: print("OVE image controller webpage open error:", e)
def ove_launch_video_func(lang): if lang.lower() == 'english': speak_text = "welcome to launch the video application and choose some operations after loading the video" else: speak_text = "欢迎使用OVE视频应用,并在下载视频后选择相应操作" tts.speak(speak_text=speak_text, language=lang) #send post request to video application space = conf.SPACE url = "http://" + conf.URL + "/app/videos" url_post = "http://" + conf.URL + "/section" headers = {'Content-Type': 'application/json'} if space == "DOCluster": payload = { "space": space, "x": 7680, "y": 0, "w": 15360, "h": 4320, "app": { "url": url, "states": { "load": "DSIIntro" } } } elif space == "DOSection": payload = { "space": space, "x": 5760, "y": 0, "w": 19200, "h": 4320, "app": { "url": url, "states": { "load": "DSIIntro" } } } r = requests.post(url_post, data=json.dumps(payload), headers=headers) ControlID = json.loads(r.text) url_web = 'http://' + conf.URL + '/app/videos/control.html?oveSectionId=' + str( ControlID['id']) try: webbrowser.open(url_web) except Exception as e: print("OVE video controller webpage open error:", e)
def ove_delete_func(lang): if lang.lower() == 'english': speak_text = "Do you want to delete all sections or section with i d n" tts.speak(speak_text=speak_text, language=lang) else: speak_text = "您想要删掉全部或者删掉id等于n的部分" tts.speak(speak_text=speak_text, language=lang) url = 'http://localhost:8080' try: webbrowser.open(url) except Exception as e: print("OVE core open error:", e)
def ove_launch_func(lang): if lang.lower() == 'chinese': speak_text = "进入OVE 控制并打开并选择一个模式,DO Cluster 或者 DO Section" else: speak_text = "Enter the control of OVE and launch and choose a mode DO Cluster or DO Section" url = "http://" + conf.URL try: webbrowser.open(url) except Exception as e: print("OVE core open error:", e) tts.speak(speak_text=speak_text, language=lang)
def ove_launch_func(lang): if lang.lower() == 'chinese': speak_text = "进入OVE 控制并打开" else: speak_text = "Enter the control of OVE and launch" tts.speak(speak_text=speak_text, language=lang) url = 'http://localhost:8080' try: webbrowser.open(url) except Exception as e: print("OVE core open error:", e)
def ove_launch_video_func(lang): if lang.lower() == 'english': speak_text = "welcome to launch the video application" tts.speak(speak_text=speak_text,language=lang) url = 'http://localhost:8080/app/videos' try: webbrowser.open(url) except Exception as e: print("OVE core open error:",e) #update space speak_text = "which space do you choose, local nine or local four" tts.speak(speak_text=speak_text,language=lang) else: speak_text = "欢迎使用OVE视频应用" tts.speak(speak_text=speak_text,language=lang) url = 'http://localhost:8080/app/videos' try: webbrowser.open(url) except Exception as e: print("OVE core open error:",e) #update space speak_text = "请问您想用九屏显示器或者四屏显示器观看" tts.speak(speak_text=speak_text,language=lang)
def google_search_func(lang): if lang.lower() == 'chinese': speak_text = "您想知道什么" else: speak_text = "What do you want to know" tts.speak(speak_text=speak_text, language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.lower() == 'can not recognize': speak_text = "Check your internet connection and try again" tts.speak(speak_text=speak_text, language=lang) else: link = 'https://www.google.com/search?q={}'.format(search_text) try: webbrowser.open(link) except Exception as e: print("google_search error:", e)
def ove_launch_view_section_func(text, lang): Viewsection = text print(Viewsection) if lang.lower() == 'english': speak_text = "you are using the viewer " + Viewsection + ", enjoy" tts.speak(speak_text=speak_text, language=lang) else: speak_text = "您正在使用显示器" + Viewsection + ", 观影愉快" tts.speak(speak_text=speak_text, language=lang) if (conf.SPACE == "LocalNine"): url = 'http://localhost:8080/view.html?oveViewId=LocalNine-' + Viewsection try: webbrowser.open(url) except Exception as e: print("OVE controller webpage open error:", e) elif (conf.SPACE == "LocalFour"): url = 'http://localhost:8080/view.html?oveViewId=LocalFour-' + Viewsection try: webbrowser.open(url) except Exception as e: print("OVE controller webpage open error:", e) else: speak_text = "wrong viewer section choices" tts.speak(speak_text=speak_text, language=lang)
def current_weather_func(lang): api_key = '4e0b3bce5ba5fdc8bd92ef1257460df4' current_location_info = requests.get('https://ipinfo.io/json/?token=4361d58fa32061').json() region = current_location_info['region'] link = "https://api.openweathermap.org/data/2.5/weather?q={city}&appid={api_key}".format(city=region,api_key=api_key) weather_data = requests.get(link).json() kelvin_to_celsius = lambda x: round(x-273.15) temp = kelvin_to_celsius(weather_data['main']['temp']) max_temp = weather_data['main']['temp_max'] description = weather_data['weather'][0]['description'] if lang.lower() == 'chinese': msg = '现在 {} 温度为 {} 摄氏度和 {}'.format(region,temp,description) else: msg = 'Right now in {} its {} degree celsius and {}'.format(region,temp,description) print(msg) tts.speak(speak_text=msg, language=lang)
def ove_delete_sections_func(text, lang): if lang.lower() == 'english': if text == "delete all": headers = {'Content-Type': 'application/json'} url = "http://146.169.220.4:8080/sections" r = requests.delete(url, headers=headers) speak_text = "it successfully deletes all sections" tts.speak(speak_text=speak_text, language=lang) conf.SPACE = '' else: sectionID = str(text[3]) headers = {'Content-Type': 'application/json'} url = "http://146.169.220.4:8080/sections/" + sectionID r = requests.delete(url, headers=headers) speak_text = "it successfully deletes section with i d " + sectionID tts.speak(speak_text=speak_text, language=lang) conf.SPACE = '' else: if text == "全部删除": headers = {'Content-Type': 'application/json'} url = "http://146.169.220.4:8080/sections" r = requests.delete(url, headers=headers) speak_text = "成功删除所有部分" tts.speak(speak_text=speak_text, language=lang) conf.SPACE = '' else: sectionID = str(text[2]) headers = {'Content-Type': 'application/json'} url = "http://146.169.220.4:8080/sections/" + sectionID r = requests.delete(url, headers=headers) speak_text = "成功删除部分" + sectionID tts.speak(speak_text=speak_text, language=lang) conf.SPACE = '' url1 = 'http://localhost:8080' try: webbrowser.open(url1) except Exception as e: print("OVE core open error:", e)
def translate_func(lang): if lang.lower() == 'english': asking_text = "Please say the word or sentence" else: asking_text = "请说出字词或者语句 " tts.speak(speak_text=asking_text, language=lang) text = stt.stt_func(selected_lang=lang) textFormatted = '<b>{}: </b><span style=" font-size:16pt; font-weight:600; color:#33c4ff;">{}</span>'.format( conf.USER_NAME.capitalize(), text) conf.CHAT_OBJ.appendHtml(textFormatted) translator = Translator() if lang.lower() == 'english': translation = translator.translate(text, dest='zh') tts.speak(speak_text=translation.text, language='chinese') else: translation = translator.translate(text, dest='en') tts.speak(speak_text=translation.text, language='english') print(translation.text)
def ove_delete_func(lang): url_delete = "http://" + conf.URL if lang.lower() == 'english': speak_text = "Do you want to delete all sections or section with id n" tts.speak(speak_text=speak_text, language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text == "delete all": headers = {'Content-Type': 'application/json'} url = url_delete + "/sections" r = requests.delete(url, headers=headers) speak_text = "it successfully deletes all sections" tts.speak(speak_text=speak_text, language=lang) elif search_text.isdigit(): sectionID = search_text headers = {'Content-Type': 'application/json'} url = url_delete + "/sections/" + sectionID r = requests.delete(url, headers=headers) speak_text = "it successfully deletes section with id " + sectionID tts.speak(speak_text=speak_text, language=lang) else: speak_text = "wrong delete operations; try agian." tts.speak(speak_text=speak_text, language=lang) else: speak_text = "您想要删掉全部或者删掉id等于n的部分" tts.speak(speak_text=speak_text, language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text == "全部删除": headers = {'Content-Type': 'application/json'} url = url_delete + "/sections" r = requests.delete(url, headers=headers) speak_text = "成功删除所有部分" tts.speak(speak_text=speak_text, language=lang) elif search_text.isdigit(): sectionID = search_text headers = {'Content-Type': 'application/json'} url = url_delete + "/sections/" + sectionID r = requests.delete(url, headers=headers) speak_text = "成功删除部分" + sectionID tts.speak(speak_text=speak_text, language=lang) #conf.SPACE = None else: speak_text = "错误的删除操作" + sectionID tts.speak(speak_text=speak_text, language=lang) url1 = url = "http://" + conf.URL try: webbrowser.open(url1) except Exception as e: print("OVE core open error:", e)
def ove_launch_image_space_func(text, lang): space = text print(space) if lang.lower() == 'english': if (space.lower() == 'local 9'): #send post request to image application headers = {'Content-Type': 'application/json'} payload = { "space": "LocalNine", "x": "0", "y": "0", "w": "4320", "h": "2424", "app": { "url": "http://146.169.220.4:8080/app/images", "states": { "load": "Highsmith" } } } r = requests.post("http://146.169.220.4:8080/section", data=json.dumps(payload), headers=headers) ControlID = json.loads(r.text) url = 'http://146.169.220.4:8080/app/images/control.html?oveSectionId=' + str( ControlID['id']) try: webbrowser.open(url) except Exception as e: print("OVE image controller webpage open error:", e) speak_text = "please choose which viewer you want to see, zero to eight" tts.speak(speak_text=speak_text, language=lang) conf.SPACE = "LocalNine" elif (space.lower() == 'local 4'): headers = {'Content-Type': 'application/json'} payload = { "space": "LocalFour", "x": "0", "y": "0", "w": "2880", "h": "1616", "app": { "url": "http://146.169.220.4:8080/app/images", "states": { "load": "Highsmith" } } } r = requests.post("http://146.169.220.4:8080/section", data=json.dumps(payload), headers=headers) ControlID = json.loads(r.text) url = 'http://146.169.220.4:8080/app/images/control.html?oveSectionId=' + str( ControlID['id']) try: webbrowser.open(url) except Exception as e: print("OVE image controller webpage open error:", e) speak_text = "please choose which viewer you want to see, zero to three" tts.speak(speak_text=speak_text, language=lang) conf.SPACE = "LocalFour" else: speak_text = "wrong image space choices, please choose again, local nine or local four" tts.speak(speak_text=speak_text, language=lang) # chinese version else: if (space == '屏幕9'): #send post request to image application headers = {'Content-Type': 'application/json'} payload = { "space": "LocalNine", "x": "0", "y": "0", "w": "4320", "h": "2424", "app": { "url": "http://146.169.220.4:8080/app/images", "states": { "load": "Highsmith" } } } r = requests.post("http://146.169.220.4:8080/section", data=json.dumps(payload), headers=headers) ControlID = json.loads(r.text) url = 'http://146.169.220.4:8080/app/images/control.html?oveSectionId=' + str( ControlID['id']) try: webbrowser.open(url) except Exception as e: print("OVE image controller webpage open error:", e) speak_text = "请选择您想用哪一个显示器观看,分屏零到分屏八" tts.speak(speak_text=speak_text, language=lang) conf.SPACE = "LocalNine" elif (space == '屏幕4'): headers = {'Content-Type': 'application/json'} payload = { "space": "LocalFour", "x": "0", "y": "0", "w": "2880", "h": "1616", "app": { "url": "http://146.169.220.4:8080/app/images", "states": { "load": "Highsmith" } } } r = requests.post("http://146.169.220.4:8080/section", data=json.dumps(payload), headers=headers) ControlID = json.loads(r.text) url = 'http://146.169.220.4:8080/app/images/control.html?oveSectionId=' + str( ControlID['id']) try: webbrowser.open(url) except Exception as e: print("OVE image controller webpage open error:", e) speak_text = "请选择您想用哪一个显示器观看,分屏零到分屏三" tts.speak(speak_text=speak_text, language=lang) conf.SPACE = "LocalFour" else: speak_text = "错误的屏幕选择,请重新选择,九屏或者四屏" tts.speak(speak_text=speak_text, language=lang)
def ove_launch_video_operation_func(text,lang): if lang.lower() == 'english': if text.lower() == 'play': speak_text = "play all videos or choose a section" tts.speak(speak_text=speak_text,language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.lower() == 'play all': url = "http://localhost:8080/app/videos/operation/play" r = requests.post(url) speak_text = "play video " + search_text.lower() + ", done." tts.speak(speak_text=speak_text,language=lang) elif search_text.isdigit(): sectionID = search_text url = "http://localhost:8080/app/videos/operation/play?loop=true&oveSectionId=" + sectionID r = requests.post(url) speak_text = "play video " + search_text.lower() + ", done." tts.speak(speak_text=speak_text,language=lang) else: speak_text = "wrong video operations, try again." tts.speak(speak_text=speak_text,language=lang) elif text.lower() == 'pause': speak_text = "pause all videos or choose a section" tts.speak(speak_text=speak_text,language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.lower() == 'pause all': url = "http://localhost:8080/app/videos/operation/pause" r = requests.post(url) speak_text = "pause video " + search_text.lower() + ", done." tts.speak(speak_text=speak_text,language=lang) elif search_text.isdigit(): sectionID = search_text url = "http://localhost:8080/app/videos/operation/pause?loop=true&oveSectionId=" + sectionID r = requests.post(url) speak_text = "pause video " + search_text.lower() + ", done." tts.speak(speak_text=speak_text,language=lang) else: speak_text = "wrong video operations, try again." tts.speak(speak_text=speak_text,language=lang) elif text.lower() == 'mute': speak_text = "mute all videos or choose a section" tts.speak(speak_text=speak_text,language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.lower() == 'mute all': url = "http://localhost:8080/app/videos/operation/mute" r = requests.post(url) speak_text = "mute video " + search_text.lower() + ", done." tts.speak(speak_text=speak_text,language=lang) elif search_text.isdigit(): sectionID = search_text url = "http://localhost:8080/app/videos/operation/mute?loop=true&oveSectionId=" + sectionID r = requests.post(url) speak_text = "mute video " + search_text.lower() + ", done." tts.speak(speak_text=speak_text,language=lang) else: speak_text = "wrong video operations, try again." tts.speak(speak_text=speak_text,language=lang) elif text.lower() == 'stop': speak_text = "stop all videos or choose a section" tts.speak(speak_text=speak_text,language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.lower() == 'stop all': url = "http://localhost:8080/app/videos/operation/stop" r = requests.post(url) speak_text = "stop video " + search_text.lower() + ", done." tts.speak(speak_text=speak_text,language=lang) elif search_text.isdigit(): sectionID = search_text url = "http://localhost:8080/app/videos/operation/stop?loop=true&oveSectionId=" + sectionID r = requests.post(url) speak_text = "stop video " + search_text.lower() + ", done." tts.speak(speak_text=speak_text,language=lang) else: speak_text = "wrong video operations, try again." tts.speak(speak_text=speak_text,language=lang) else: speak_text = '' else: if text == '播放': speak_text = "播放所有视频或者选择某个部分播放" tts.speak(speak_text=speak_text,language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text == '全部播放': url = "http://localhost:8080/app/videos/operation/play" r = requests.post(url) speak_text = "视频播放 " + search_text.lower() + ",完成." tts.speak(speak_text=speak_text,language=lang) elif search_text.isdigit(): sectionID = search_text url = "http://localhost:8080/app/videos/operation/play?loop=true&oveSectionId=" + sectionID r = requests.post(url) speak_text = "视频播放 " + search_text.lower() + ",完成." tts.speak(speak_text=speak_text,language=lang) else: speak_text = "错误的视频操作,请重新命令" tts.speak(speak_text=speak_text,language=lang) elif text == '暂停': speak_text = "暂停所有视频或者选择某个部分播放" tts.speak(speak_text=speak_text,language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text == '全部暂停': url = "http://localhost:8080/app/videos/operation/pause" r = requests.post(url) speak_text = "视频暂停 " + search_text.lower() + ",完成." tts.speak(speak_text=speak_text,language=lang) elif search_text.isdigit(): sectionID = search_text url = "http://localhost:8080/app/videos/operation/pause?loop=true&oveSectionId=" + sectionID r = requests.post(url) speak_text = "视频暂停 " + search_text.lower() + ",完成." tts.speak(speak_text=speak_text,language=lang) else: speak_text = "错误的视频操作,请重新命令" tts.speak(speak_text=speak_text,language=lang) elif text == '静音': speak_text = "静音所有视频或者选择某个部分播放" tts.speak(speak_text=speak_text,language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text == '全部静音': url = "http://localhost:8080/app/videos/operation/mute" r = requests.post(url) speak_text = "视频静音 " + search_text.lower() + ",完成." tts.speak(speak_text=speak_text,language=lang) elif search_text.isdigit(): sectionID = search_text url = "http://localhost:8080/app/videos/operation/mute?loop=true&oveSectionId=" + sectionID r = requests.post(url) speak_text = "视频静音 " + search_text.lower() + ",完成." tts.speak(speak_text=speak_text,language=lang) else: speak_text = "错误的视频操作,请重新命令" tts.speak(speak_text=speak_text,language=lang) elif text == '停止': speak_text = "停止所有视频或者选择某个部分播放" tts.speak(speak_text=speak_text,language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text == '全部停止': url = "http://localhost:8080/app/videos/operation/stop" r = requests.post(url) speak_text = "视频停止 " + search_text.lower() + ",完成." tts.speak(speak_text=speak_text,language=lang) elif search_text.isdigit(): sectionID = search_text url = "http://localhost:8080/app/videos/operation/stop?loop=true&oveSectionId=" + sectionID r = requests.post(url) speak_text = "视频停止 " + search_text.lower() + ",完成." tts.speak(speak_text=speak_text,language=lang) else: speak_text = "错误的视频操作,请重新命令" tts.speak(speak_text=speak_text,language=lang) else: speak_text = ""
def ove_demo_func(text, lang): #some urls are not public, please check for authority when use them. #English version url = '' url1 = '' if lang.lower() == 'english': speak_text = 'please choose a demo to load' tts.speak(speak_text=speak_text, language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.lower() == 'blank': url = "http://" + url + "/demo/blank" r = requests.post(url) speak_text = "play demo " + search_text.lower() + ", done." tts.speak(speak_text=speak_text, language=lang) elif search_text.lower() == 'logo': url = "http://" + url + "/demo/logo" r = requests.post(url) speak_text = "play demo " + search_text.lower() + ", done." tts.speak(speak_text=speak_text, language=lang) elif search_text.lower() == 'london': url = "http://" + url + "/demo/londonmap" r = requests.post(url) speak_text = "play demo " + search_text.lower() + ", done." tts.speak(speak_text=speak_text, language=lang) time.sleep(5) try: webbrowser.open(url1) except Exception as e: print("OVE demos open error:", e) elif search_text.lower() == 'bitcoin': url = "http://" + url + "/demo/bitcoin" r = requests.post(url) speak_text = "play demo " + search_text.lower() + ", done." tts.speak(speak_text=speak_text, language=lang) elif search_text.lower() == 'silk road': url = "http://" + url + "/demo/silkroad" r = requests.post(url) speak_text = "play demo " + search_text.lower() + ", done." tts.speak(speak_text=speak_text, language=lang) time.sleep(5) try: webbrowser.open(url1) except Exception as e: print("OVE demos open error:", e) elif search_text.lower() == 'mars': url = "http://" + url + "/demo/marsselfie" r = requests.post(url) speak_text = "play demo " + search_text.lower() + ", done." tts.speak(speak_text=speak_text, language=lang) time.sleep(5) try: webbrowser.open(url1) except Exception as e: print("OVE demos open error:", e) elif search_text.lower() == 'introduction': url = "http://" + url + "/demo/dsiintro" r = requests.post(url) speak_text = "play demo " + search_text.lower() + ", done." tts.speak(speak_text=speak_text, language=lang) else: speak_text = "wrong demos operations, try again." tts.speak(speak_text=speak_text, language=lang) #Chinese version else: speak_text = "请选择一个主题演示" tts.speak(speak_text=speak_text, language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.lower() == '空白': url = "http://" + url + "/demo/blank" r = requests.post(url) speak_text = "播放片段 " + search_text.lower() + ", 完成." tts.speak(speak_text=speak_text, language=lang) elif search_text.lower() == '标志': url = "http://" + url + "/demo/logo" r = requests.post(url) speak_text = "播放片段 " + search_text.lower() + ", 完成." tts.speak(speak_text=speak_text, language=lang) elif search_text.lower() == '伦敦': url = "http://" + url + "/demo/londonmap" r = requests.post(url) speak_text = "播放片段 " + search_text.lower() + ", 完成." tts.speak(speak_text=speak_text, language=lang) time.sleep(5) try: webbrowser.open(url1) except Exception as e: print("OVE demos open error:", e) elif search_text.lower() == '比特币': url = "http://" + url + "/demo/bitcoin" r = requests.post(url) speak_text = "播放片段 " + search_text.lower() + ", 完成." tts.speak(speak_text=speak_text, language=lang) elif search_text.lower() == '丝绸之路': url = "http://" + url + "/demo/silkroad" r = requests.post(url) speak_text = "播放片段 " + search_text.lower() + ", 完成." tts.speak(speak_text=speak_text, language=lang) time.sleep(5) try: webbrowser.open(url1) except Exception as e: print("OVE demos open error:", e) elif search_text.lower() == '火星': url = "http://" + url + "/demo/marsselfie" r = requests.post(url) speak_text = "播放片段 " + search_text.lower() + ", 完成." tts.speak(speak_text=speak_text, language=lang) time.sleep(5) try: webbrowser.open(url1) except Exception as e: print("OVE demos open error:", e) elif search_text.lower() == '介绍片': url = "http://" + url + "/demo/dsiintro" r = requests.post(url) speak_text = "播放片段 " + search_text.lower() + ", 完成." tts.speak(speak_text=speak_text, language=lang) else: speak_text = "错误的演示指令,请重试." tts.speak(speak_text=speak_text, language=lang)
def input_parser(commands_list, selected_lang, command, profile_info): """ Find index number of mathing command. """ index = None # TODO: Make this code less repetitively # Find index number of matching chinese command if selected_lang.lower() == 'chinese': for cmd in commands_list['chinese']: if command in cmd.split(';'): index = commands_list['chinese'].index(cmd) break # Find index number of matching english command else: for cmd in commands_list['english']: if command.lower() in cmd.split(';'): print("match") index = commands_list['english'].index(cmd) break # If command are found then search for task by index number if isinstance(index, int): no_error = True start = time.time() if no_error: if commands_list['task'][index] == 'greeting': greetings.greeting_func(text=command, lang=selected_lang) elif commands_list['task'][index] == 'time': speak_time.time_func(text=command, lang=selected_lang) elif commands_list['task'][index] == 'date': speak_date.date_func(text=command, lang=selected_lang) elif commands_list['task'][index] == 'email': read_email.main(text=command, lang=selected_lang) elif commands_list['task'][index] == 'search email': search_mail.main(text=command, lang=selected_lang) elif commands_list['task'][index] == 'translate': translate.translate_func(lang=selected_lang) elif commands_list['task'][index] == 'current weather': current_weather.current_weather_func(lang=selected_lang) elif commands_list['task'][index] == 'google search': google_search.google_search_func(lang=selected_lang) #Control of OVE elif commands_list['task'][index] == 'control ove': ove_control.ove_launch_func(lang=selected_lang) elif commands_list['task'][index] == 'mode space': ove_control.ove_launch_mode_space_func(text=command, lang=selected_lang) # for image application elif commands_list['task'][index] == 'control image': ove_image.ove_launch_image_func(lang=selected_lang) elif commands_list['task'][index] == 'image operation': ove_image.ove_image_operation_func(text=command, lang=selected_lang) #for video application elif commands_list['task'][index] == 'control video': ove_video.ove_launch_video_func(lang=selected_lang) elif commands_list['task'][index] == 'video operation': ove_video.ove_video_operation_func(text=command, lang=selected_lang) #for delete operations elif commands_list['task'][index] == 'delete': ove_control.ove_delete_func(lang=selected_lang) elif commands_list['task'][index] == 'delete sections': ove_control.ove_delete_sections_func(text=command, lang=selected_lang) #lauch demos elif commands_list['task'][index] == 'launch demos': ove_control.ove_demo_func(text=command, lang=selected_lang) else: tts.speak(speak_text="Sorry! Wrong command", language='english')
def date_func(text, lang): now = datetime.datetime.now() today_date = date_format(now, lang) tts.speak(speak_text=today_date, language=lang)
def ove_image_operation_func(text, lang): url = conf.URL if lang.lower() == 'english': if text.lower() == 'zoom in': speak_text = "which one do you want to zoom in, choose an id" tts.speak(speak_text=speak_text, language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.isdigit(): sectionID = search_text headers = { 'Content-Type': 'application/json', 'accept': 'application/json' } payload = {'zoom': 2, 'pan': {'x': 0, 'y': 0}} url_post = "http://" + conf.URL + "/app/images/instances/" + sectionID + "/state/transform" r = requests.post(url_post, data=json.dumps(payload), headers=headers) url = 'http://' + conf.URL + '/app/images/control.html?oveSectionId=' + sectionID webbrowser.open(url) speak_text = "zoom in imgae " + search_text.lower() + ", done." tts.speak(speak_text=speak_text, language=lang) else: speak_text = "wrong image id, try again." tts.speak(speak_text=speak_text, language=lang) elif text.lower() == 'zoom out': speak_text = "which one do you want to zoom out, choose an id" tts.speak(speak_text=speak_text, language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.isdigit(): sectionID = search_text headers = { 'Content-Type': 'application/json', 'accept': 'application/json' } payload = {'zoom': 0.5, 'pan': {'x': 0, 'y': 0}} url_post = "http://" + conf.URL + "/app/images/instances/" + sectionID + "/state/transform" r = requests.post(url_post, data=json.dumps(payload), headers=headers) url = 'http://' + conf.URL + '/app/images/control.html?oveSectionId=' + sectionID webbrowser.open(url) speak_text = "zoom out imgae " + search_text.lower( ) + ", done." tts.speak(speak_text=speak_text, language=lang) else: speak_text = "wrong image id, try again." tts.speak(speak_text=speak_text, language=lang) else: speak_text = "wrong image operations, try again." tts.speak(speak_text=speak_text, language=lang) else: if text == '放大': speak_text = "您想要放大哪个id控制区" tts.speak(speak_text=speak_text, language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.isdigit(): sectionID = search_text headers = { 'Content-Type': 'application/json', 'accept': 'application/json' } payload = {'zoom': 2, 'pan': {'x': 0, 'y': 0}} url_post = "http://" + conf.URL + "/app/images/instances/" + sectionID + "/state/transform" r = requests.post(url_post, data=json.dumps(payload), headers=headers) url = 'http://' + conf.URL + '/app/images/control.html?oveSectionId=' + sectionID webbrowser.open(url) speak_text = "放大图像 id " + search_text + ", done." tts.speak(speak_text=speak_text, language=lang) else: speak_text = "错误的图像id, 请重试" tts.speak(speak_text=speak_text, language=lang) elif text == '缩小': speak_text = "您想要缩小哪个id控制区" tts.speak(speak_text=speak_text, language=lang) search_text = stt.stt_func(selected_lang=lang) if search_text.isdigit(): sectionID = search_text headers = { 'Content-Type': 'application/json', 'accept': 'application/json' } payload = {'zoom': 0.5, 'pan': {'x': 0, 'y': 0}} url_post = "http://" + conf.URL + "/app/images/instances/" + sectionID + "/state/transform" r = requests.post(url_post, data=json.dumps(payload), headers=headers) url = 'http://' + conf.URL + '/app/images/control.html?oveSectionId=' + sectionID webbrowser.open(url) speak_text = "缩小图像 id " + search_text.lower() + ", 完成." tts.speak(speak_text=speak_text, language=lang) else: speak_text = "错误的图像id, 请重试" tts.speak(speak_text=speak_text, language=lang) else: speak_text = "错误的图像操作, 请重试" tts.speak(speak_text=speak_text, language=lang)
def ove_launch_mode_space_func(text, lang): if lang.lower() == 'english': #change the mode to user's choice if (text.lower() == 'space cluster' or 'choose cluster' or 'open cluster'): #r = requests.post("") conf.SPACE = "DOCluster" speak_text = "Welcome to use DO Cluster mode, please choose an application to load" tts.speak(speak_text=speak_text, language=lang) elif (text.lower() == 'space section' or 'choose cection' or 'open section'): #r = requests.post("") conf.SPACE = "DOSection" speak_text = "Welcome to use DO Section mode, please choose an application to load" tts.speak(speak_text=speak_text, language=lang) else: speak_text = "Wrong choices, please choose mode again" tts.speak(speak_text=speak_text, language=lang) # chinese version else: #change the mode to user's choice if (text == '模式1' or '选择模式1' or '打开模式1'): #r = requests.post("") conf.SPACE = "DOCluster" speak_text = "欢迎来到云屏模式1,请选择加载一个应用" tts.speak(speak_text=speak_text, language=lang) elif (text == '模式2' or '模式二' or '选择模式2' or '打开模式2'): #r = requests.post("") conf.SPACE = "DOSection" speak_text = "欢迎来到云屏模式2,请选择加载一个应用" tts.speak(speak_text=speak_text, language=lang) else: speak_text = "错误的选择,请重新选择模式" tts.speak(speak_text=speak_text, language=lang)
def main(text, lang): """Shows basic usage of the Gmail API. Lists the user's Gmail labels. """ search_email = InputSearchEmailkDialog().input_email() print("Return class", search_email) creds = None # The file token.pickle stores the user's access and refresh tokens, and is # created automatically when the authorization flow completes for the first # time. if os.path.exists('token.pickle'): with open('token.pickle', 'rb') as token: creds = pickle.load(token) # If there are no (valid) credentials available, let the user log in. if not creds or not creds.valid: if creds and creds.expired and creds.refresh_token: creds.refresh(Request()) else: file_path = os.getcwd( ) + '/plugins/client_id.json' # clieent_id.json download from gmail api account flow = InstalledAppFlow.from_client_secrets_file(file_path, SCOPES) creds = flow.run_local_server() # Save the credentials for the next run with open('token.pickle', 'wb') as token: pickle.dump(creds, token) service = build('gmail', 'v1', credentials=creds) # Call the Gmail API # category_personal = service.user().labels.get(userId='me',labelIds='') category_personal = service.users().messages().list( userId='me', includeSpamTrash=False, labelIds=['CATEGORY_PERSONAL'], q='from:{} is:unread'.format(search_email)).execute() category_personal_messages_id = category_personal.get('messages', []) # if there have not any unread message if not category_personal_messages_id: if lang.lower() == 'chinese': speak_text = '已无未读信息' else: speak_text = "There are no unread message" tts.speak(speak_text=speak_text, language=lang) else: total_unread_msg = len(category_personal_messages_id) if lang.lower() == 'chinese': speak_text = "全部未读信息".format(total_unread_msg) asking_text = "如果您想查阅未读信息请说是不然说否" else: speak_text = "Total unread message:{}".format(total_unread_msg) asking_text = "If you want to see unread message then say yes otherwise say no" tts.speak(speak_text=speak_text, language=lang) tts.speak(speak_text=asking_text, language=lang) response = stt.stt_func(selected_lang=lang) if response in ['yes', '是']: personal_message_info = OrderedDict() personal_message_info['snippet'] = [] personal_message_info['from'] = [] personal_message_info['date'] = [] personal_message_info['link'] = [] for msg_id in category_personal_messages_id: msg = service.users().messages().get( userId='me', id=msg_id['id']).execute() msg_headers = msg['payload']['headers'] personal_message_info['snippet'].append(msg['snippet']) from_email = [ header['value'] for header in msg_headers if header['name'] == 'From' ] personal_message_info['from'].append(from_email[0]) msg_date = [ header['value'] for header in msg_headers if header['name'] == 'Date' ] personal_message_info['date'].append(msg_date[0]) msg_link = 'https://mail.google.com/mail/u/0/#inbox/' + msg_id[ 'id'] personal_message_info['link'].append(msg_link) col_size = len(personal_message_info) row_size = len(personal_message_info['snippet']) column_names = list(personal_message_info.keys()) row_values = list(personal_message_info.values()) table_obj = TableWindow(row_values, column_names, row_size, col_size) if table_obj.exec_(): table_obj.quit()
def time_func(text, lang): now = datetime.datetime.now() text = time_format(now) # TODO: Show this into chat box tts.speak(speak_text=text, language=lang)