summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYusuke Nemoto <kaakaa@users.noreply.github.com>2016-11-17 23:19:11 +0900
committerChristopher Speller <crspeller@gmail.com>2016-11-17 09:19:11 -0500
commitbe74ec22414a9a34f458a0fb30ea14e2d02dcd3f (patch)
tree02e51253cb11d70f99611599ea204cb786bd38d7
parent11b0f64c6087578aada5a359439491e4592c47e9 (diff)
downloadchat-be74ec22414a9a34f458a0fb30ea14e2d02dcd3f.tar.gz
chat-be74ec22414a9a34f458a0fb30ea14e2d02dcd3f.tar.bz2
chat-be74ec22414a9a34f458a0fb30ea14e2d02dcd3f.zip
plt-2610 allow slash command to override username/icon_url (#4378)
-rw-r--r--api/command.go4
-rw-r--r--model/command_response.go2
2 files changed, 6 insertions, 0 deletions
diff --git a/api/command.go b/api/command.go
index ff0f72149..3ae379819 100644
--- a/api/command.go
+++ b/api/command.go
@@ -231,6 +231,8 @@ func handleResponse(c *Context, w http.ResponseWriter, response *model.CommandRe
if utils.Cfg.ServiceSettings.EnablePostUsernameOverride {
if len(cmd.Username) != 0 {
post.AddProp("override_username", cmd.Username)
+ } else if len(response.Username) != 0 {
+ post.AddProp("override_username", response.Username)
} else {
post.AddProp("override_username", model.DEFAULT_WEBHOOK_USERNAME)
}
@@ -239,6 +241,8 @@ func handleResponse(c *Context, w http.ResponseWriter, response *model.CommandRe
if utils.Cfg.ServiceSettings.EnablePostIconOverride {
if len(cmd.IconURL) != 0 {
post.AddProp("override_icon_url", cmd.IconURL)
+ } else if len(response.IconURL) != 0 {
+ post.AddProp("override_icon_url", response.IconURL)
} else {
post.AddProp("override_icon_url", "")
}
diff --git a/model/command_response.go b/model/command_response.go
index 9314f38ef..bbb70418e 100644
--- a/model/command_response.go
+++ b/model/command_response.go
@@ -16,6 +16,8 @@ const (
type CommandResponse struct {
ResponseType string `json:"response_type"`
Text string `json:"text"`
+ Username string `json:"username"`
+ IconURL string `json:"icon_url"`
GotoLocation string `json:"goto_location"`
Attachments interface{} `json:"attachments"`
}