/
message.go
41 lines (36 loc) · 1.46 KB
/
message.go
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
package models
import "time"
type MessageType string
const (
MessageTypeSMS = MessageType("sms")
MessageTypeEmail = MessageType("email")
MessageTypeSlack = MessageType("slack")
MessageTypeUiNotify = MessageType("ui_notify")
MessageTypeTelegramNotify = MessageType("telegram_notify")
)
type Message struct {
Id int64 `json:"id"`
Type MessageType `json:"type"`
EmailFrom *string `json:"email_from"`
EmailSubject *string `json:"email_subject"`
EmailBody *string `json:"email_body"`
SmsText *string `json:"sms_text"`
UiText *string `json:"ui_text"`
TelegramText *string `json:"telegram_text"`
SlackText *string `json:"slack_text"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type NewNotifrMessage struct {
Type string `json:"type"`
BodyType string `json:"body_type"`
EmailFrom *string `json:"email_from"`
EmailSubject *string `json:"email_subject"`
EmailBody *string `json:"email_body"`
Template *string `json:"template"`
SmsText *string `json:"sms_text"`
SlackText *string `json:"slack_text"`
TelegramText *string `json:"telegram_text"`
Params map[string]interface{} `json:"params"`
Address string `json:"address"`
}