Skip to content

Instantly share code, notes, and snippets.

@niski84
Created March 4, 2023 03:08
Show Gist options
  • Save niski84/e1aa7174dc7eb52d33afab87d7e01e8e to your computer and use it in GitHub Desktop.
Save niski84/e1aa7174dc7eb52d33afab87d7e01e8e to your computer and use it in GitHub Desktop.
SLACK get events in channel
package main
import (
"fmt"
"log"
"os"
"github.com/slack-go/slack"
)
func main() {
// Set up a Slack API client
token := os.Getenv("SLACK_TOKEN")
if token == "" {
log.Fatal("SLACK_TOKEN environment variable is not set")
}
client := slack.New(token)
// Set up a message event listener
events := make(chan *slack.MessageEvent)
go func() {
if err := client.GetRTM().IncomingEvents(events); err != nil {
log.Fatal(err)
}
}()
// Wait for a specific message in a Slack channel
channel := "#general"
textToFind := "hello"
for {
select {
case event := <-events:
if event.Channel == channel && event.Text == textToFind {
fmt.Println("Found the text!")
return
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment