summaryrefslogtreecommitdiffstats
path: root/model
diff options
context:
space:
mode:
authorCorey Hulen <corey@hulen.com>2015-10-26 22:06:49 -0700
committerCorey Hulen <corey@hulen.com>2015-10-26 22:06:49 -0700
commit28847c6b4b864d747bbfdf5c53354dcb24e5f895 (patch)
treea429200e3ddde63e7ba6fd90c49303c58a204ce9 /model
parent2b198a8cfc6733049d26bcb73c3f443afcea9e82 (diff)
parent12399dd43c0ba57a879e4383f13a0fd4ed3350ae (diff)
downloadchat-28847c6b4b864d747bbfdf5c53354dcb24e5f895.tar.gz
chat-28847c6b4b864d747bbfdf5c53354dcb24e5f895.tar.bz2
chat-28847c6b4b864d747bbfdf5c53354dcb24e5f895.zip
Merge pull request #1194 from mattermost/webhook-request
Parse incoming webhook requests into model instead of string map
Diffstat (limited to 'model')
-rw-r--r--model/incoming_webhook.go18
1 files changed, 18 insertions, 0 deletions
diff --git a/model/incoming_webhook.go b/model/incoming_webhook.go
index 9b9969b96..be1984244 100644
--- a/model/incoming_webhook.go
+++ b/model/incoming_webhook.go
@@ -23,6 +23,13 @@ type IncomingWebhook struct {
TeamId string `json:"team_id"`
}
+type IncomingWebhookRequest struct {
+ Text string `json:"text"`
+ Username string `json:"username"`
+ IconURL string `json:"icon_url"`
+ ChannelName string `json:"channel"`
+}
+
func (o *IncomingWebhook) ToJson() string {
b, err := json.Marshal(o)
if err != nil {
@@ -104,3 +111,14 @@ func (o *IncomingWebhook) PreSave() {
func (o *IncomingWebhook) PreUpdate() {
o.UpdateAt = GetMillis()
}
+
+func IncomingWebhookRequestFromJson(data io.Reader) *IncomingWebhookRequest {
+ decoder := json.NewDecoder(data)
+ var o IncomingWebhookRequest
+ err := decoder.Decode(&o)
+ if err == nil {
+ return &o
+ } else {
+ return nil
+ }
+}