【学習golangシリーズ】slack APIを使う2
前回のポストに引き続き、チャンネル一覧の取得。 前回に引き続き、こちらのライブラリを使った。 nlopes/slack
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
package main import ( "github.com/nlopes/slack" "fmt" ) var token = "Slack Token" var api = slack.New(token) // Slackにチャンネルを指定してポストする関数 func PostMessage(channel string, message string) { params := slack.PostMessageParameters{ Username: "umentu_botter", IconURL: "アイコンのURL", } api.PostMessage(channel, message, params) } // チャンネル名のリストを取得する関数 func getChannelNameList() ([]string, error) { channels, err := api.GetChannels(false) channel_name_list := []string{} if err != nil { return nil, err } for _, channel := range channels{ channel_name_list = append(channel_name_list, channel.Name) } return channel_name_list, nil } func main(){ //PostMessage("golang", "Golang Test") // チャンネル名を取得 channel_name_list, err := getChannelNameList() if err != nil { fmt.Println(err) return } for _, channel_name := range channel_name_list{ fmt.Println(channel_name) } } |
実行結果 次回はWebhook使っ […]