Browse Source

better handle feedback message

master
David Haukeness 5 years ago
parent
commit
45a9828cc6
No known key found for this signature in database
GPG Key ID: 54F2372DDB7F9462
  1. 6
      commands.go
  2. 4
      handlers.go

6
commands.go

@ -3,6 +3,7 @@ package main @@ -3,6 +3,7 @@ package main
import (
"fmt"
"log"
"strings"
"samhofi.us/x/keybase/types/chat1"
)
@ -20,11 +21,12 @@ func (b *bot) setupMeeting(convid chat1.ConvIDStr, sender string, words []string @@ -20,11 +21,12 @@ func (b *bot) setupMeeting(convid chat1.ConvIDStr, sender string, words []string
b.k.SendMessageByConvID(convid, message)
}
func (b *bot) sendFeedback(convid chat1.ConvIDStr, mesgID chat1.MessageID, sender string, message string) {
func (b *bot) sendFeedback(convid chat1.ConvIDStr, mesgID chat1.MessageID, sender string, words []string) {
b.debug("feedback recieved in %s", convid)
if b.config.FeedbackConvIDStr != "" {
feedback := strings.Join(words[2:], "")
fcID := chat1.ConvIDStr(b.config.FeedbackConvIDStr)
if _, err := b.k.SendMessageByConvID(fcID, "Feedback from @%s:\n```%s```", sender, message); err != nil {
if _, err := b.k.SendMessageByConvID(fcID, "Feedback from @%s:\n```%s```", sender, feedback); err != nil {
b.k.ReplyByConvID(convid, mesgID, "I'm sorry, I was unable to send your feedback because my benevolent overlords have not set a destination for feedback. :sad:")
log.Printf("Unable to send feedback: %s", err)
} else {

4
handlers.go

@ -55,7 +55,7 @@ func (b *bot) chatHandler(m chat1.MsgSummary) { @@ -55,7 +55,7 @@ func (b *bot) chatHandler(m chat1.MsgSummary) {
case "meet":
b.setupMeeting(m.ConvID, m.Sender.Username, words, m.Channel.MembersType)
case "feedback":
b.sendFeedback(m.ConvID, m.Id, m.Sender.Username, m.Content.Text.Body)
b.sendFeedback(m.ConvID, m.Id, m.Sender.Username, words)
}
}
}
@ -71,7 +71,7 @@ func (b *bot) chatHandler(m chat1.MsgSummary) { @@ -71,7 +71,7 @@ func (b *bot) chatHandler(m chat1.MsgSummary) {
case "jitsi":
switch maybeSubCommand {
case "feedback":
b.sendFeedback(m.ConvID, m.Id, m.Sender.Username, m.Content.Text.Body)
b.sendFeedback(m.ConvID, m.Id, m.Sender.Username, words)
default:
b.setupMeeting(m.ConvID, m.Sender.Username, words, m.Channel.MembersType)
}

Loading…
Cancel
Save