2019-01-15 21:40:44 +01:00
from hugvey . client import Hugvey
2019-04-10 11:13:42 +02:00
import logging
import logging . handlers
import coloredlogs
2019-01-15 21:40:44 +01:00
import argparse
2019-04-11 12:00:11 +02:00
from urllib . parse import urlparse
2019-01-15 21:40:44 +01:00
if __name__ == ' __main__ ' :
argParser = argparse . ArgumentParser ( description = ' Start up a Hugvey pillow. Mic stream becomes available on TCP Socket, and starts listening + emitting events ' )
2019-01-15 23:34:59 +01:00
argParser . add_argument (
' --config ' ,
' -c ' ,
required = True ,
type = str ,
help = ' The yaml config file to load '
)
2019-01-15 21:40:44 +01:00
argParser . add_argument (
' --verbose ' ,
' -v ' ,
action = " store_true " ,
)
2019-03-07 21:34:50 +01:00
argParser . add_argument (
' --id ' ,
type = int ,
default = None ,
help = " Force the given id to be used. Must be integer "
)
2019-04-11 12:00:11 +02:00
argParser . add_argument (
' --log ' ,
action = ' store_true ' ,
help = " If given, logs are send to cutelog on the central command, if cutelog is not started this could significantly slow down the Hugvey "
)
2019-01-15 21:40:44 +01:00
args = argParser . parse_args ( )
coloredlogs . install (
level = logging . DEBUG if args . verbose else logging . INFO ,
)
2019-04-10 11:13:42 +02:00
logger = logging . getLogger ( " hugvey " )
# logger.setLevel(1) # to send all records to cutelog
2019-04-11 12:00:11 +02:00
2019-01-15 21:40:44 +01:00
2019-03-07 21:34:50 +01:00
hv = Hugvey ( args . id )
2019-01-15 23:34:59 +01:00
hv . loadConfig ( args . config )
2019-04-11 12:00:11 +02:00
if args . log :
host = urlparse ( hv . config [ ' events ' ] [ ' cmd_address ' ] ) . hostname
logger . info ( " Connect to logger on {} " . format ( host ) )
socket_handler = logging . handlers . SocketHandler ( host , 19996 ) # default listening address
logger . addHandler ( socket_handler ) ;
2019-01-15 21:40:44 +01:00
hv . start ( )