from libtuer import ThreadFunction, logger, fire_and_forget, fire_and_forget_cmd
from actor import Actor
-import os, random, time, threading
+import os, random, time, threading, datetime
# logger.{debug,info,warning,error,critical}
logger.error("StateMachine: Unable to list sound files in %s" % (SOUNDS_DIRECTORY+what))
return
soundfile = SOUNDS_DIRECTORY + what + '/' + random.choice(soundfiles)
- fire_and_forget_cmd ([SOUNDS_PLAYER,soundfile], "StateMachine: ")
+ hour = datetime.datetime.time(datetime.datetime.now()).hour
+ volume = 60 if hour >= 22 or hour <= 6 else 95
+ fire_and_forget_cmd ([SOUNDS_PLAYER, "-volume", str(volume), soundfile], "StateMachine: ")
# convert an absolute nervlist to a relative one
def nervlist_abs2rel(nervlist_abs):
# StateAboutToOpen constants
SWITCH_PRAISE_PROBABILITY = 0.5
-ABOUTOPEN_NERVLIST = nervlist_abs2rel([(5, lambda : play_sound("flipswitch")), (10, lambda:play_sound("flipswitch")),\
+ABOUTOPEN_NERVLIST = nervlist_abs2rel([(10, lambda:play_sound("flipswitch")),\
(20, lambda:play_sound("flipswitch")), (30, lambda:play_sound("flipswitch")), (30, lambda:logger.error("Space open but switch not flipped for 30 seconds")),\
(40, lambda:play_sound("flipswitch")), (50, lambda:play_sound("flipswitch")), (60, lambda:play_sound("mail_sent")),
(60, lambda:logger.critical("Space open but switch not flipped for 60 seconds")), (120, lambda:play_sound("mail_sent")),