Skip to content

Commit

Permalink
feat: keep compatible with ServerChan (close #63)
Browse files Browse the repository at this point in the history
  • Loading branch information
songquanpeng committed May 6, 2023
1 parent 581d9d6 commit 39da3f9
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 13 deletions.
33 changes: 21 additions & 12 deletions controller/message.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,19 @@ import (
"time"
)

func keepCompatible(message *model.Message) {
// Keep compatible with ServerChan: https://sct.ftqq.com/sendkey
if message.Description == "" {
message.Description = message.Short
}
if message.Content == "" {
message.Content = message.Desp
}
if message.To == "" {
message.To = message.OpenId
}
}

func GetPushMessage(c *gin.Context) {
message := model.Message{
Title: c.Query("title"),
Expand All @@ -22,15 +35,11 @@ func GetPushMessage(c *gin.Context) {
Channel: c.Query("channel"),
Token: c.Query("token"),
To: c.Query("to"),
Desp: c.Query("desp"),
Short: c.Query("short"),
OpenId: c.Query("openid"),
}
if message.Description == "" {
// Keep compatible with ServerChan
message.Description = c.Query("desp")
}
if message.Channel == "" {
// Keep compatible with old version
message.Channel = c.Query("type")
}
keepCompatible(&message)
pushMessageHelper(c, &message)
}

Expand All @@ -42,8 +51,10 @@ func PostPushMessage(c *gin.Context) {
URL: c.PostForm("url"),
Channel: c.PostForm("channel"),
Token: c.PostForm("token"),
Desp: c.PostForm("desp"),
To: c.PostForm("to"),
Desp: c.PostForm("desp"),
Short: c.PostForm("short"),
OpenId: c.PostForm("openid"),
}
if message == (model.Message{}) {
// Looks like the user is using JSON
Expand All @@ -56,9 +67,7 @@ func PostPushMessage(c *gin.Context) {
return
}
}
if message.Description == "" {
message.Description = message.Desp
}
keepCompatible(&message)
pushMessageHelper(c, &message)
}

Expand Down
4 changes: 3 additions & 1 deletion model/message.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ type Message struct {
UserId int `json:"user_id" gorm:"index"`
Title string `json:"title"`
Description string `json:"description"`
Desp string `json:"desp" gorm:"-:all"` // alias for description
Content string `json:"content"`
URL string `json:"url" gorm:"column:url"`
Channel string `json:"channel"`
Expand All @@ -21,6 +20,9 @@ type Message struct {
Link string `json:"link" gorm:"unique;index"`
To string `json:"to" gorm:"column:to"` // if specified, will send to this user(s)
Status int `json:"status" gorm:"default:0"` // pending, sent, failed
OpenId string `json:"openid" gorm:"-:all"` // alias for to
Desp string `json:"desp" gorm:"-:all"` // alias for content
Short string `json:"short" gorm:"-:all"` // alias for description
}

func GetMessageById(id int, userId int) (*Message, error) {
Expand Down

0 comments on commit 39da3f9

Please sign in to comment.