Source code for fauxmo.cli

"""cli.py
Argparse based CLI for fauxmo. Helps provide console_script via argparse. Also
initializes logging.
"""

import argparse
import sys
from .fauxmo import main
from . import logger


[docs]def cli(): """Parse command line options, provide entry point for console scripts""" arguments = sys.argv[1:] parser = argparse.ArgumentParser(description="Emulate Belkin Wemo devices " "for use with Amaazon Echo") parser.add_argument("-v", "--verbose", help="increase verbosity (may " "repeat up to -vvv)", action="count", default=0) parser.add_argument("-c", "--config", help="specify alternate config file") args = parser.parse_args(arguments) # args.verbose defaults to 0 # 40 - 10 * 0 = 40 == logging.ERROR verbosity = max(40 - 10 * args.verbose, 10) logger.setLevel(verbosity) main(config_path=args.config, verbosity=verbosity)
if __name__ == "__main__": cli()