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)
Пример #2
0
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)
Пример #3
0
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)
Пример #4
0
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)
Пример #5
0
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)
Пример #6
0
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)
Пример #9
0
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)
Пример #11
0
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)
Пример #12
0
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)
Пример #13
0
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)
Пример #14
0
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 = ""
Пример #16
0
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)
Пример #19
0
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)
Пример #20
0
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)
Пример #21
0
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()
Пример #22
0
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)