Move NewPollRequestMessage

This commit is contained in:
binwiederhier
2026-02-21 18:01:36 -05:00
parent 4b6979aa89
commit b1eb90addc
5 changed files with 10 additions and 10 deletions

View File

@@ -146,6 +146,13 @@ func NewActionMessage(event, topic, sequenceID string) *Message {
return m
}
// NewPollRequestMessage is a convenience method to create a poll request message
func NewPollRequestMessage(topic, pollID string) *Message {
m := NewMessage(PollRequestEvent, topic, "New message")
m.PollID = pollID
return m
}
// ValidMessageID returns true if the given string is a valid message ID
func ValidMessageID(s string) bool {
return util.ValidRandomString(s, MessageIDLength)

View File

@@ -859,7 +859,7 @@ func (s *Server) handlePublishInternal(r *http.Request, v *visitor) (*model.Mess
}
}
if m.PollID != "" {
m = newPollRequestMessage(t.ID, m.PollID)
m = model.NewPollRequestMessage(t.ID, m.PollID)
}
m.Sender = v.IP()
m.User = v.MaybeUserID()

View File

@@ -298,7 +298,7 @@ func maybeTruncateAPNSBodyMessage(s string) string {
// This empties all the fields that are not needed for a poll request and just sets the required fields,
// most importantly, the PollID.
func toPollRequest(m *model.Message) *model.Message {
pr := newPollRequestMessage(m.Topic, m.ID)
pr := model.NewPollRequestMessage(m.Topic, m.ID)
pr.ID = m.ID
pr.Time = m.Time
pr.Priority = m.Priority // Keep priority

View File

@@ -251,7 +251,7 @@ func TestToFirebaseMessage_Message_Normal_Not_Allowed(t *testing.T) {
}
func TestToFirebaseMessage_PollRequest(t *testing.T) {
m := newPollRequestMessage("mytopic", "fOv6k1QbCzo6")
m := model.NewPollRequestMessage("mytopic", "fOv6k1QbCzo6")
fbm, err := toFirebaseMessage(m, nil)
require.Nil(t, err)
require.Equal(t, "mytopic", fbm.Topic)

View File

@@ -8,13 +8,6 @@ import (
"heckel.io/ntfy/v2/util"
)
// newPollRequestMessage is a convenience method to create a poll request message
func newPollRequestMessage(topic, pollID string) *model.Message {
m := model.NewMessage(model.PollRequestEvent, topic, newMessageBody)
m.PollID = pollID
return m
}
// publishMessage is used as input when publishing as JSON
type publishMessage struct {
Topic string `json:"topic"`