Exemple #1
0
def handle(text, mic, profile):

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    mic.say("It is %s right now." % response)
Exemple #2
0
def handle(text, mic, profile):

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    root = Tk()
    root.wm_title("Mirror")
    w, h = root.winfo_screenwidth(), root.winfo_screenheight()
    root.overrideredirect(1)
    root.geometry("%dx%d+0+0" % (w, h))
    root.focus_set()
    root.bind("1", root.quit())
    root.config(background="#000000")

    mainFrame = Frame(root, width=w, height=h)
    mainFrame.grid(row=0, column=0, padx=10, pady=2)
    mainFrame.config(background="#000000")
    customFont = tkFont.Font(family="Helvetica", size=60)

    timeVar = StringVar()
    timeVar.set(response)
    weatherVar = StringVar()
    weatherVar.set("76°")
    timeLabel = Label(mainFrame, textvariable=timeVar, font=customFont, fg="white", bg="black")
    weatherLabel = Label(mainFrame, textvariable=weatherVar, font=customFont, fg="white", bg="black")
    timeLabel.place(relx=1, x=-2, y=2, anchor=NE)
    weatherLabel.place(relx=0, x=-2, y=2, anchor=NW)
    root.mainloop()
Exemple #3
0
def handle_read(text, mic, profile):
    mic.say(random.choice([
        "I am contacting Apple. Please stand by.",
        "Opening that file. Please wait."
    ]))
    api = app_utils.iCloud(profile)
    rem = api.reminders
    listname = find_list(text, profile, rem)
    if not listname:
        mic.say(random.choice([
            "I'm sorry, I couldn't find that list",
            "That list does not seem to be availble. Please check!"
        ]))
        return

    service = DateService()
    ans = random.choice([
        "I've found the following entries: ",
        "Your " + listname + " list contains ",
        "These are the entries of the " + listname + " list "
    ])
    for i in range(len(rem.lists[listname])):
        reminder = rem.lists[listname][i]
        ans += str(i+1) + ') ' + reminder['title']
        if reminder['due']:
            ans += ', due at ' + service.convertTime(reminder['due'])
        ans += '.'

    ans += random.choice([
        "",
        "That's it.",
        "There is nothing else on your list."
    ])
    mic.say(ans)
Exemple #4
0
def handle(text, mic, profile):

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    mic.say("It is %s right now." % response)
Exemple #5
0
def handle(mic):
    c=datetime.datetime.now()
    con = mdb.connect('localhost', 'root', 'whyte', 'jarvis')
    cur=con.cursor()
    cur.execute("select * from notif where date > '"+str(c)+"' order by date limit 5")
    temp=cur.fetchall()
    service = DateService()
    
    for item in temp:
    	time = service.convertTime(item[2])
    	mic.say(str(item[1])+" on "+str(time))
    con.close()
Exemple #6
0
def handle(text, sender, receiver, profile):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone number)
    """

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    sender.say("It is %s right now." % response)
Exemple #7
0
    def handle(self, text, teller, mic, profile):
        """
            Reports the current time based on the user's timezone.

            Arguments:
            text -- user-input, typically transcribed speech
            mic -- used to interact with the user (input)
            profile -- contains information related to the user (e.g., phone number)
        """

        tz = getTimezone(profile)
        now = datetime.datetime.now(tz=tz)
        service = DateService()
        response = service.convertTime(now)
        teller.say("Il est %s." % response)
def handle(text, mic, profile, house):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone number)
    """

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    mic.say("It is %s right now." % response)
Exemple #9
0
def handle(text):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone
                   number)
    """

    tz = utils.getTimezone(cmInstance.getConfig("timezone"))
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    return _("Now it is %s") % response
Exemple #10
0
def handle(text, mic, profile):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone number)
    """

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    #cluetext = " Listen very carefully to the next clue:     The letter P is the start of its name.     The letter R is the end.      It runs at night  but never goes anywhere.     Look inside "
    mic.say("It is %s right now." % response)
Exemple #11
0
def handle(text, mic, profile):
    """
        Reports the current date based on the user's location.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone
                   number)
    """

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    day = (time.strftime("%A")) 
    month = (time.strftime("%B"))   
    num_day = (time.strftime("%d"))  
    message = "It is " + day + "the " + num_day + "today, get over karishma" 
    mic.say(message)
Exemple #12
0
def handle(text, mic, profile):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone
                   number)
    """

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    d = datetime.datetime.strptime(response, "%I:%M %p")
    response = d.strftime("%H:%M")
    response = re.sub(r'00:', 'minuit ', response)
    response = re.sub(r'12:', 'midi ', response)
    mic.say("Il est %s." % response)
Exemple #13
0
def handle(text, mic, profile):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone
                   number)
    """

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)

    comment = ''
    print("Current hour is " + str(now.hour))
    if now.hour > 19:
        comment = ' It is time to be sleeping.'
    mic.say("It is {0} right now. {1}".format(response, comment) )
Exemple #14
0
def handle(text, mic, profile, wxbot=None):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone
                   number)
        wxBot -- wechat robot
    """

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    if "AM" in response:
        response = u"上午" + response.replace("AM", "")
    elif "PM" in response:
        response = u"下午" + response.replace("PM", "")
    mic.say(u"现在时间是 %s " % response)
Exemple #15
0
def handle(text, mic, profile, wxbot=None):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone
                   number)
        wxBot -- wechat robot
    """

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)
    if "AM" in response:
        response = u"上午" + response.replace("AM", "")
    elif "PM" in response:
        response = u"下午" + response.replace("PM", "")
    mic.say(u"现在时间是 %s " % response)
Exemple #16
0
def handle(self, text, mic, profile):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone
                   number)
    """

    tz = getTimezone(profile)
    now = datetime.datetime.now(tz=tz)
    service = DateService()
    response = service.convertTime(now)

    self.blittxt(response, 150, white, black)


    
    mic.say("It is %s right now master." % response)
    time.sleep(1)    
Exemple #17
0
    def handleHourNotifications(self, nextHour):
        """Announces the time of day
        At each hour annoice the time of day.   
        We need ensure Nexthour occurs at a given hour interval.
        Then test for the next hour change within one hour of last date.
        get the hour now
        determine if time now matches the next hour
        if it is then put a notification onto the queue
        set the next hour increase by one or if 23 then set to 24.
        """
        # get the current time
        tz = getTimezone(self.profile)
        now = datetime.datetime.now(tz=tz)

        #	test to see if this is the first time running the program
        if nextHour == None:
            # set the next hour
            min = now.minute
            sec = now.second
            mic = now.microsecond
            nextHour = now + datetime.timedelta(
                hours=1, seconds=-sec, minutes=-min, microseconds=-mic)

        if now > nextHour:
            service = DateService()
            response = service.convertTime(nextHour)
            styleHour = "It is " + response + " right now."
            self.q.put(styleHour)
            # reset the next hour
            min = now.minute
            sec = now.second
            mic = now.microsecond
            nextHour = now + datetime.timedelta(
                hours=1, seconds=-sec, minutes=-min, microseconds=-mic)

        print(nextHour)
        print("inside the Hour Notification routine")
        return nextHour
Exemple #18
0
def handle(mic):
    
    now = datetime.datetime.now()
    service = DateService()
    response = service.convertTime(now)
    mic.say("It is %s right now." % response)
Exemple #19
0
class GUI(threading.Thread):

  def __init__(self):

    self.profile_path = jasperpath.config('profile.yml')
    if os.path.exists(self.profile_path):
      with open(self.profile_path, 'r') as f:
        self.profile = yaml.safe_load(f)

    threading.Thread.__init__(self)
    self.start()

  def callback(self):
    self.root.quit()

  def task(self):
    self.tz = getTimezone(self.profile)
    self.now = datetime.datetime.now(tz=self.tz)
    self.service = DateService()
    self.response = self.service.convertTime(self.now)
    self.timeVar.set(self.response)
    self.numFiles = len([name for name in os.listdir(self.directory) if os.path.isfile(os.path.join(self.directory, name))])
    if self.numFiles > self.numFileHolder:
      self.showPicture()
      print ("OLD: " + str(self.numFileHolder) + "NEW: " + str(self.numFiles))
      self.numFileHolder = self.numFiles
    self.forecast = None
    if 'wmo_id' in self.profile:
      self.forecast = get_forcast_by_wmo_id(str(self.profile['wmo_id']))
    elif 'location' in self.profile:
      self.forecast = get_forecast_by_name(str(self.profile['location']))

    self.temp = self.forecast[0]['summary_detail']['value'][13:17] + unichr(176)
    self.weatherVar.set(self.temp) 
    self.root.after(2000, self.task)
  def showPicture(self):
    self.newest = max(glob.iglob('Pictures/*.jpg'), key = os.path.getctime)
    print ("NEWEST: " + self.newest)
    self.photo = ImageTk.PhotoImage(Image.open(self.newest))
    self.x = self.canvas.create_image(self.w/2, self.h/2, image=self.photo)
    self.canvas.itemconfigure(self.x, state=NORMAL)
    self.canvas.update_idletasks()
    time.sleep(3)
    self.canvas.itemconfigure(self.x, state=HIDDEN)
  def run(self):

    self.root = Tk()
    self.root.protocol("WM_DELETE_WINDOW", self.callback)
    self.w, self.h = self.root.winfo_screenwidth(), self.root.winfo_screenheight()
    #self.w, self.h = 500, 500
    self.root.overrideredirect(1)
    self.root.geometry("%dx%d+0+0" % (self.w, self.h))
    self.root.focus_set()
    self.root.bind("1", self.root.quit())
    self.root.config(background = "#000000")

    mainFrame = Frame(self.root, width=self.w, height=self.h)
    mainFrame.grid(row=0, column=0, padx=10, pady=2)
    mainFrame.config(background= "#000000")
    customFont = tkFont.Font(family="Helvetica", size=60)
    self.timeVar = StringVar()
    self.weatherVar = StringVar()
    self.canvas = Canvas(mainFrame, width=1080, height=1920, highlightthickness=0)
    timeLabel = Label(mainFrame, textvariable=self.timeVar, font=customFont, fg="white", bg="black")
    weatherLabel = Label(mainFrame, textvariable=self.weatherVar, font=customFont, fg="white", bg="black")
 
    self.canvas.config(background="#000000")
    self.canvas.place(relx=0.5, rely=0.5, anchor=CENTER)
    self.directory = '/home/pi/jasper/Pictures'
    self.numFileHolder = len([name for name in os.listdir(self.directory) if os.path.isfile(os.path.join(self.directory, name))])
    print "NUMFILEHOLDER: " + str(self.numFileHolder)
    timeLabel.place(relx=1, x=-2, y=2, anchor=NE)
    weatherLabel.place(relx=0, x=-2, y=2, anchor=NW)
    self.root.after(2000, self.task)
    self.root.mainloop()
Exemple #20
0
def handle(mic):

    now = datetime.datetime.now()
    service = DateService()
    response = service.convertTime(now)
    mic.say("It is %s right now." % response)
def handle(self, text, mic, profile):
    """
        Reports the current time based on the user's timezone.

        Arguments:
        text -- user-input, typically transcribed speech
        mic -- used to interact with the user (for both input and output)
        profile -- contains information related to the user (e.g., phone
                   number)
    """

    mic.say("clock mode on")
    done = False
    while done == False:

        t = (time.strftime("%m/%d/%Y"))
        a, b, c = t.split('/')

        if a == '01':
            a = 'January'

        if a == '02':
            a = 'February'

        if a == '03':
            a = 'March'

        if a == '04':
            a = 'April'

        if a == '05':
            a = 'May'

        if a == '06':
            a = 'June'

        if a == '07':
            a = 'July'

        if a == '08':
            a = 'August'

        if a == '09':
            a = 'September'

        if a == '10':
            a = 'October'

        if a == '11':
            a = 'November'

        if a == '12':
            a = 'December'

        d, e = b
        if d == '0':
            b = e

        date = ('%s %s %s' % (a, b, c))

        self.background.fill(black)
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                done = True
            if event.type == pygame.MOUSEBUTTONDOWN:
                done = True
        tz = getTimezone(profile)
        now = datetime.datetime.now(tz=tz)
        service = DateService()
        response = service.convertTime(now)
        self.pygm.blitjtxt(response, 150, 0, 240, 160, white)
        self.pygm.blitjtxt(date, 40, 0, 240, 220, white)

        pygame.display.flip()
        time.sleep(1)