main.py 1021 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #!/usr/bin/env python
  2. # -*- encoding: utf-8 -*-
  3. '''
  4. @Contact : liuyuqi.gov@msn.cn
  5. @Time : 2023/01/30 09:47:22
  6. @License : Copyright © 2017-2022 liuyuqi. All Rights Reserved.
  7. @Desc : enter point
  8. '''
  9. from receive_email.smtpx import CrazySrvHandler
  10. from receive_email.web import web_start
  11. from aiosmtpd.controller import Controller
  12. from aiosmtpd.smtp import SMTP
  13. import configparser
  14. if __name__ == "__main__":
  15. cf = configparser.ConfigParser()
  16. cf.read("conf/cfg.ini")
  17. smtpd_host = cf.get("smtpd", "host")
  18. smtpd_port = cf.getint("smtpd", "port")
  19. rest_host = smtpd_host
  20. rest_port = cf.getint("rest", "port")
  21. handler = CrazySrvHandler()
  22. # 邮件控制器
  23. controller = Controller(handler, hostname=smtpd_host, port=smtpd_port)
  24. controller.factory = lambda: SMTP(handler, enable_SMTPUTF8=True)
  25. try:
  26. controller.start()
  27. web_start(rest_host, rest_port)
  28. except KeyboardInterrupt:
  29. print("Shutting down")
  30. finally:
  31. controller.stop()