diff --git a/omnibot/services/slack/__init__.py b/omnibot/services/slack/__init__.py index 947f359..aff76c7 100644 --- a/omnibot/services/slack/__init__.py +++ b/omnibot/services/slack/__init__.py @@ -473,6 +473,29 @@ def get_user(bot, user_id): return {} +def get_auth(bot): + """ + Get the auth info for the bot. + """ + redis_client = omniredis.get_redis_client() + auth_info = redis_client.hget(f"auth:{bot.team.name}", bot.name) + if auth_info: + return json.loads(auth_info) + auth_info = client(bot).api_call("auth.test") + if auth_info["ok"]: + redis_client.hset(f"auth:{bot.team.name}", bot.name, json.dumps(auth_info)) + return auth_info + else: + logger.warning( + "Failed to get auth info", + extra=merge_logging_context( + _get_failure_context(auth_info), + bot.logging_context, + ), + ) + return {} + + def get_name_from_user(user): profile = user.get("profile", {}) name = profile.get("display_name")