33 lines
689 B
Python
33 lines
689 B
Python
import logging
|
|
import signal
|
|
import sys
|
|
|
|
from xiaozhi.services.audio.setup import setup_opus
|
|
from xiaozhi.utils.logging_config import setup_logging
|
|
from xiaozhi.xiaoai import XiaoAi
|
|
from xiaozhi.xiaozhi import XiaoZhi
|
|
|
|
logger = logging.getLogger("Main")
|
|
|
|
|
|
def main():
|
|
setup_opus()
|
|
logger.info("应用程序已启动,按Ctrl+C退出")
|
|
XiaoZhi.instance().run()
|
|
return 0
|
|
|
|
|
|
def setup_graceful_shutdown():
|
|
def signal_handler(_sig, _frame):
|
|
XiaoZhi.instance().shutdown()
|
|
sys.exit(0)
|
|
|
|
signal.signal(signal.SIGINT, signal_handler)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
XiaoAi.setup_mode()
|
|
setup_logging()
|
|
setup_graceful_shutdown()
|
|
sys.exit(main())
|