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)
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()
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)
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)
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()
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)
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)
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
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)
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)
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)
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) )
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)
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)
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)
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
def handle(mic): now = datetime.datetime.now() service = DateService() response = service.convertTime(now) mic.say("It is %s right now." % response)
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()
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)