Compare commits
6
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
da53b1a913 | ||
|
|
14ddd3bc9c | ||
|
|
fbaa9a48f3 | ||
|
|
3ab81c2b6d | ||
|
|
5bfcb8e74b | ||
|
|
28b29802b9 |
@@ -18,14 +18,14 @@ jobs:
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v6
|
||||
with:
|
||||
go-version: '1.25.3'
|
||||
go-version: '1.25.4'
|
||||
|
||||
- name: Create version
|
||||
id: version
|
||||
run: |
|
||||
echo "Creating version"
|
||||
|
||||
VERSION="0.0.5"
|
||||
VERSION="0.0.11"
|
||||
PROJECT_COMMIT_HASH=$(git rev-parse HEAD | cut -c 1-10)
|
||||
BRANCH_REF="${{ gitea.ref }}"
|
||||
BRANCH_NAME=$(echo "$BRANCH_REF" | cut -d '/' -f 3)
|
||||
|
||||
@@ -11,13 +11,13 @@ jobs:
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v4
|
||||
uses: actions/setup-go@v6
|
||||
with:
|
||||
go-version: '1.25.3'
|
||||
go-version: '1.25.4'
|
||||
- name: Configure Git for SSH
|
||||
run: |
|
||||
git config --global url."git@git.kundeng.us:".insteadOf "https://git.kundeng.us/"
|
||||
go env -w GOPRIVATE=git.kundeng.us/phoenix/*
|
||||
git config --global url."git@${{ secrets.GIT_HOST_ROOT }}:".insteadOf "https://${{ secrets.GIT_HOST_ROOT }}/"
|
||||
go env -w GOPRIVATE=${{ secrets.GIT_HOST_ROOT }}/phoenix/*
|
||||
|
||||
- name: Download dependencies
|
||||
run: |
|
||||
@@ -25,9 +25,3 @@ jobs:
|
||||
|
||||
- name: Run tests
|
||||
run: go test -v ./... # Runs all tests in the project
|
||||
|
||||
- name: Run linter
|
||||
uses: https://github.com/golangci/golangci-lint-action@v8
|
||||
with:
|
||||
go-version: '1.25.3'
|
||||
version: latest
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
module git.kundeng.us/phoenix/textsender-models
|
||||
|
||||
go 1.25.3
|
||||
go 1.25.4
|
||||
|
||||
require (
|
||||
github.com/golang-jwt/jwt/v5 v5.3.0
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
package scheduling
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/google/uuid"
|
||||
)
|
||||
|
||||
|
||||
type ScheduledMessage struct {
|
||||
Id uuid.UUID `json:"id"`
|
||||
Scheduled time.Time `json:"scheduled"`
|
||||
Created time.Time `json:"created"`
|
||||
Status string `json:"status"`
|
||||
UserId uuid.UUID `json:"user_id"`
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
package scheduling
|
||||
|
||||
|
||||
const (
|
||||
Ready = "READY"
|
||||
Pending = "PENDING"
|
||||
Processing = "PROCESSING"
|
||||
Done = "DONE"
|
||||
)
|
||||
@@ -0,0 +1,21 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
)
|
||||
|
||||
type TwiloConfig struct {
|
||||
AccountSID string `json:"auth_sid"`
|
||||
ServiceSID string `json:"service_sid"`
|
||||
URI string `json:"uri"`
|
||||
AuthToken string `json:"auth_token"`
|
||||
Number string `json:"phone_number"`
|
||||
}
|
||||
|
||||
func (config *TwiloConfig) PrintConfig() {
|
||||
fmt.Printf("Account SID: %s\n", config.AccountSID)
|
||||
fmt.Printf("Service SID: %s\n", config.ServiceSID)
|
||||
fmt.Println("URI:", config.URI)
|
||||
fmt.Printf("Auth Token: %s\n", config.AuthToken)
|
||||
fmt.Printf("Number: %s\n", config.Number)
|
||||
}
|
||||
@@ -6,6 +6,6 @@ import (
|
||||
|
||||
type Message struct {
|
||||
Id uuid.UUID `json:"id"`
|
||||
Content string `json:"content"`
|
||||
Content string `json:"content,omitempty"`
|
||||
UserId uuid.UUID `json:"user_id"`
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package message
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/google/uuid"
|
||||
|
||||
"git.kundeng.us/phoenix/textsender-models/tx0/types"
|
||||
)
|
||||
|
||||
type MessageEventResponse struct {
|
||||
Id uuid.UUID `json:"id,omitempty"`
|
||||
ScheduledMessageEventId uuid.UUID `json:"scheduled_message_event_id,omitempty"`
|
||||
Response types.JSONB `json:"response"`
|
||||
UserId uuid.UUID `json:"user_id,omitempty"`
|
||||
Sent time.Time `json:"sent"`
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package scheduling
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/google/uuid"
|
||||
)
|
||||
|
||||
type ScheduledMessageEvent struct {
|
||||
Id uuid.UUID `json:"id"`
|
||||
RecipientId uuid.UUID `json:"recipient_id"`
|
||||
MessageId uuid.UUID `json:"message_id"`
|
||||
ScheduledMessageId uuid.UUID `json:"scheduled_message_id"`
|
||||
Created time.Time `json:"created"`
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package scheduling
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/google/uuid"
|
||||
)
|
||||
|
||||
type ScheduledMessage struct {
|
||||
Id uuid.UUID `json:"id"`
|
||||
Scheduled time.Time `json:"scheduled"`
|
||||
Created time.Time `json:"created"`
|
||||
Status string `json:"status"`
|
||||
UserId uuid.UUID `json:"user_id"`
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
package scheduling
|
||||
|
||||
const (
|
||||
Ready = "READY"
|
||||
Pending = "PENDING"
|
||||
Processing = "PROCESSING"
|
||||
Done = "DONE"
|
||||
)
|
||||
@@ -0,0 +1,41 @@
|
||||
package types
|
||||
|
||||
import (
|
||||
"database/sql/driver"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
)
|
||||
|
||||
type JSONB json.RawMessage
|
||||
|
||||
// Scan implements sql.Scanner
|
||||
func (j *JSONB) Scan(value interface{}) error {
|
||||
if value == nil {
|
||||
*j = nil
|
||||
return nil
|
||||
}
|
||||
|
||||
var data []byte
|
||||
switch v := value.(type) {
|
||||
case []byte:
|
||||
// pgx may pass data as []byte in binary format
|
||||
data = v
|
||||
case string:
|
||||
// pgx may pass data as string in text format
|
||||
data = []byte(v)
|
||||
default:
|
||||
return fmt.Errorf("unsupported type: %T", v)
|
||||
}
|
||||
|
||||
*j = JSONB(data)
|
||||
return nil
|
||||
}
|
||||
|
||||
// Value implements driver.Valuer
|
||||
func (j JSONB) Value() (driver.Value, error) {
|
||||
if j == nil {
|
||||
return nil, nil
|
||||
} else {
|
||||
return []byte(j), nil
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package user
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/google/uuid"
|
||||
)
|
||||
|
||||
type ServiceUser struct {
|
||||
Id uuid.UUID `json:"id"`
|
||||
Username string `json:"username,omitempty"`
|
||||
Passphrase string `json:"passphrase,omitempty"`
|
||||
Created *time.Time `json:"date_created,omitempty"`
|
||||
}
|
||||
@@ -10,4 +10,3 @@ type User struct {
|
||||
Username string `json:"username"`
|
||||
Password string `json:"password"`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user