Skip to content

Instantly share code, notes, and snippets.

@lgwapnitsky
Created June 6, 2017 13:25
Show Gist options
  • Save lgwapnitsky/a0d2903ee7bc0a99b509b538f17e83e0 to your computer and use it in GitHub Desktop.
Save lgwapnitsky/a0d2903ee7bc0a99b509b538f17e83e0 to your computer and use it in GitHub Desktop.
bot to delete messages in slack - based on demo from slackclient api
from slackeventsapi import SlackEventAdapter
from slackclient import SlackClient
import os
import time
SLACK_VERIFICATION_TOKEN = os.environ["SLACK_VERIFICATION_TOKEN"]
slack_events_adapter = SlackEventAdapter(SLACK_VERIFICATION_TOKEN, "/slack/events")
SLACK_BOT_TOKEN = os.environ["SLACK_BOT_TOKEN"]
CLIENT = SlackClient(SLACK_BOT_TOKEN)
BOT_ID = os.environ.get("BOT_ID")
# Example responder to greetings
@slack_events_adapter.on("message")
def handle_message(event_data):
message = event_data["event"]
# if message.get("subtype") is None and "hi" in message.get('text'):
# channel = message["channel"]
# message = "Hello <@%s>! :tada:" % message["user"]
# CLIENT.api_call("chat.postMessage", channel=channel, text=message)
# if message.get("subtype") is None and "deleteme" in message.get('text'):
if message.get("subtype") is None:
channel = message["channel"]
ts = message["ts"]
time.sleep(1)
CLIENT.api_call("chat.delete", channel=channel, ts=ts, as_user=BOT_ID)
msgDel = "Your message was deleted, <@%s>! :sadfile:" % message["user"]
CLIENT.api_call("chat.postMessage", channel=channel, text=msgDel)
# Example reaction emoji echo
@slack_events_adapter.on("reaction_added")
def reaction_added(event_data):
event = event_data["event"]
emoji = event["reaction"]
channel = event["item"]["channel"]
text = ":%s:" % emoji
CLIENT.api_call("chat.postMessage", channel=channel, text=text)
slack_events_adapter.start(port=3000)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment