Documentation
¶
Index ¶
- Variables
- type Bot
- func (b *Bot) Excuse(ev *slack.MessageEvent, err error)
- func (b *Bot) HandleCreateMeme(ev *slack.MessageEvent, matches []string)
- func (b *Bot) HandleHelp(ev *slack.MessageEvent, matches []string)
- func (b *Bot) HandleLookup(ev *slack.MessageEvent, matches []string)
- func (b *Bot) HandleSummon(ev *slack.MessageEvent, matches []string)
- func (b *Bot) HandleTestFeedMessage(ev *slack.MessageEvent, matches []string)
- func (b *Bot) HandleUsage(ev *slack.MessageEvent, matches []string)
- func (b *Bot) ProcessIMOpen(ev *slack.IMOpenEvent)
- func (b *Bot) ProcessMessage(ev *slack.MessageEvent)
- type SlackService
- func (s *SlackService) BootRTM()
- func (s *SlackService) FeedPost(storyText string) error
- func (s *SlackService) GetFeedChannel() string
- func (s *SlackService) SimpleImagePost(channelName string, storyText string, imageUrl string, icon messages.Icon, ...)
- func (s *SlackService) SimplePost(channelName string, storyText string, icon messages.Icon, asUser bool)
Constants ¶
This section is empty.
Variables ¶
var ( // ErrMissingFeedChannel is used when the feed channel is not configured. ErrMissingFeedChannel = errors.New("Missing feed channel") )
Functions ¶
This section is empty.
Types ¶
type Bot ¶
type Bot struct {
Slacker *SlackService
Factory *factories.GonduitFactory
// contains filtered or unexported fields
}
Bot represents the state of the bot. It also contains functions related to the interactive portion of Phabulous.
func (*Bot) Excuse ¶
func (b *Bot) Excuse(ev *slack.MessageEvent, err error)
Excuse comes up with an excuse of why something failed.
func (*Bot) HandleCreateMeme ¶
func (b *Bot) HandleCreateMeme(ev *slack.MessageEvent, matches []string)
HandleCreateMeme create a meme and posts it to the channel.
func (*Bot) HandleHelp ¶
func (b *Bot) HandleHelp(ev *slack.MessageEvent, matches []string)
HandleHelp shows help.
func (*Bot) HandleLookup ¶
func (b *Bot) HandleLookup(ev *slack.MessageEvent, matches []string)
HandleLookup looks up information about a Phabricator object.
func (*Bot) HandleSummon ¶
func (b *Bot) HandleSummon(ev *slack.MessageEvent, matches []string)
HandleSummon shows usage tip.
func (*Bot) HandleTestFeedMessage ¶
func (b *Bot) HandleTestFeedMessage(ev *slack.MessageEvent, matches []string)
func (*Bot) HandleUsage ¶
func (b *Bot) HandleUsage(ev *slack.MessageEvent, matches []string)
HandleUsage shows usage tip.
func (*Bot) ProcessIMOpen ¶
func (b *Bot) ProcessIMOpen(ev *slack.IMOpenEvent)
ProcessIMOpen handles IM open events.
func (*Bot) ProcessMessage ¶
func (b *Bot) ProcessMessage(ev *slack.MessageEvent)
ProcessMessage processes incoming messages events and calls the appropriate handlers.
type SlackService ¶
type SlackService struct {
Config *confer.Config `inject:""`
Logger *logrus.Logger `inject:""`
Factory *factories.GonduitFactory `inject:""`
Slack *slack.Client
Bot *Bot
}
SlackService provides access to the Slack service.
func (*SlackService) BootRTM ¶
func (s *SlackService) BootRTM()
BootRTM handles RTM events in Slack.
func (*SlackService) FeedPost ¶
func (s *SlackService) FeedPost(storyText string) error
FeedPost posts a message to Slack on the default bot channel.
func (*SlackService) GetFeedChannel ¶
func (s *SlackService) GetFeedChannel() string
GetFeedChannel returns the default channel for the bot.
func (*SlackService) SimpleImagePost ¶
func (*SlackService) SimplePost ¶
func (s *SlackService) SimplePost( channelName string, storyText string, icon messages.Icon, asUser bool, )
SimplePost posts a simple message to Slack. Most parameters are set to defaults.