summaryrefslogtreecommitdiff
path: root/adapters/messaging/db.go
diff options
context:
space:
mode:
authorElizabeth Hunt <elizabeth.hunt@simponic.xyz>2025-01-05 15:16:26 -0800
committerElizabeth Hunt <elizabeth.hunt@simponic.xyz>2025-01-05 15:29:23 -0800
commit2984a715b830410b6d6ce2a8aaa1fc8a2388ee99 (patch)
tree09dc00606931885e8b345791cd1a301335dd494c /adapters/messaging/db.go
parentd86746bb0ddcb7dcfc6225f9fe37f6034c958913 (diff)
downloadphoneof-2984a715b830410b6d6ce2a8aaa1fc8a2388ee99.tar.gz
phoneof-2984a715b830410b6d6ce2a8aaa1fc8a2388ee99.zip
add ntfy integration
Diffstat (limited to 'adapters/messaging/db.go')
-rw-r--r--adapters/messaging/db.go29
1 files changed, 29 insertions, 0 deletions
diff --git a/adapters/messaging/db.go b/adapters/messaging/db.go
new file mode 100644
index 0000000..4cad3e2
--- /dev/null
+++ b/adapters/messaging/db.go
@@ -0,0 +1,29 @@
+package messaging
+
+import (
+ "database/sql"
+ "log"
+ "time"
+
+ "git.simponic.xyz/simponic/phoneof/database"
+)
+
+func PersistMessageContinuation(dbConn *sql.DB, frenId string, messageId string, sentAt time.Time, frenSent bool) Continuation {
+ return func(message Message) ContinuationChain {
+ log.Printf("persisting message %v %s %s %s %v", message, frenId, messageId, sentAt, frenSent)
+ return func(success Continuation, failure Continuation) ContinuationChain {
+ _, err := database.SaveMessage(dbConn, &database.Message{
+ Id: messageId,
+ FrenId: frenId,
+ Message: message.Message,
+ Time: sentAt,
+ FrenSent: frenSent,
+ })
+ if err != nil {
+ log.Printf("err when saving message %s", err)
+ return failure(message)
+ }
+ return success(message)
+ }
+ }
+}