Added scheduling check

This commit is contained in:
phoenix
2025-11-29 13:46:14 -05:00
parent 6b2907cd69
commit e4b6b191f0
+13 -4
View File
@@ -14,6 +14,7 @@ import (
"git.kundeng.us/phoenix/swoosh/swoop/types"
)
type MessageSender struct {
Config *config.TwiloConfig
}
@@ -33,10 +34,8 @@ func (m *MessageSender) Send(msg message.Message, number contact.Contact, sendTi
params.SetFrom(m.Config.Number)
params.SetMessagingServiceSid(m.Config.ServiceSID)
params.SetBody(msg.Content)
if sendTime != nil {
if sendTime.After(now) {
params.SetSendAt(*sendTime)
}
if sendTime != nil && isSchedulable(now, sendTime) {
params.SetSendAt(*sendTime)
}
if resp, err := client.Api.CreateMessage(params); err != nil {
@@ -49,3 +48,13 @@ func (m *MessageSender) Send(msg message.Message, number contact.Contact, sendTi
}
}
}
func isSchedulable(now *time.Time, scheduled *time.Time) (bool) {
early := now.Add(300 * time.Second)
if scheduled.Before(early) && scheduled.After(now) {
return true
} else {
return false
}
}