roboluke-tasks/app/main.py

50 lines
1.3 KiB
Python
Raw Permalink Normal View History

"""Main module."""
import sys
2023-04-05 21:57:31 +02:00
from sentry_sdk.integrations.stdlib import StdlibIntegration
2023-04-05 21:57:31 +02:00
from webex_bot.webex_bot import WebexBot
from app.commands.exit import ExitCommand
from app.commands.submit_task import SubmitTaskCommand
from app.utils.config import config
if config.sentry_enabled:
import sentry_sdk
apm = sentry_sdk.init(
dsn=config.sentry_dsn,
enable_tracing=True,
environment=config.environment,
2024-04-21 17:56:27 +02:00
release=config.version,
integrations=[StdlibIntegration()],
spotlight=True,
)
2023-04-05 21:57:31 +02:00
def create_bot() -> WebexBot:
"""Create and return a Webex Bot object."""
2023-04-05 21:57:31 +02:00
webex_bot: WebexBot = WebexBot(
bot_name=config.bot_name,
teams_bot_token=config.webex_token,
approved_domains=config.approved_domains,
approved_rooms=config.approved_rooms,
approved_users=config.approved_users,
2023-04-05 21:57:31 +02:00
)
webex_bot.commands.clear()
webex_bot.add_command(SubmitTaskCommand())
webex_bot.add_command(ExitCommand())
webex_bot.help_command = SubmitTaskCommand()
webex_bot.help_command.delete_previous_message = True
return webex_bot
2023-04-05 21:02:13 +02:00
if __name__ == "__main__":
2023-04-05 21:57:31 +02:00
try:
bot: WebexBot = create_bot()
bot.run()
except KeyboardInterrupt:
print("Shutting down bot...")
sys.exit(0)