From 83fb0aa49efa669aa8cfed6a8751719aa144b2d1 Mon Sep 17 00:00:00 2001 From: phoenix Date: Sun, 16 Nov 2025 01:22:14 +0000 Subject: [PATCH] Changed format (#13) Reviewed-on: https://git.kundeng.us/phoenix/sender/pulls/13 Co-authored-by: phoenix Co-committed-by: phoenix --- main.go | 42 ++++++++-------------- models/twilio_details.go | 36 ------------------- util/util.go | 78 ++++++++-------------------------------- 3 files changed, 29 insertions(+), 127 deletions(-) diff --git a/main.go b/main.go index 66a679b..45b0123 100644 --- a/main.go +++ b/main.go @@ -4,9 +4,6 @@ import ( "fmt" "os" - "git.kundeng.us/phoenix/textsender-models/pkg/contact" - "git.kundeng.us/phoenix/textsender-models/pkg/message" - "git.kundeng.us/phoenix/sender/config" "git.kundeng.us/phoenix/sender/messaging" "git.kundeng.us/phoenix/sender/util" @@ -36,10 +33,19 @@ func main() { cfg, _ := config.ParseConfig(configPath) cfg.PrintConfig() - numbers := util.ParseNumbers(numberPath) - prepMessage := util.ParseMessage(messagePath) + numbers, err := util.ParseNumbers(numberPath) + if err != nil { + fmt.Println("Error:", err) + return + } - if len(numbers) == 0 || prepMessage.IsEmpty() { + prepMessage, err := util.ParseMessage(messagePath) + if err != nil { + fmt.Println("Error:", err) + return + } + + if len(numbers) == 0 || prepMessage.Content == "" { if len(numbers) == 0 { fmt.Println("No numbers to send") os.Exit(-1) @@ -50,27 +56,7 @@ func main() { } fmt.Println("") - prepMessage.Print() + fmt.Println("Message:", prepMessage.Content) - convertedContacts, err := util.Convert(numbers, 1) - if err != nil { - fmt.Println("Error converting numbers: Error:", err) - os.Exit(-1) - } - - convertedMessage, err := util.Convert(prepMessage, 0) - if err != nil { - fmt.Println("Error converting message") - os.Exit(-1) - } - - if contacts, ok := convertedContacts.([]contact.Contact); ok { - if msg, ok := convertedMessage.(message.Message); ok { - messaging.SendMessages(cfg, contacts, msg, 5) - } else { - fmt.Println("Could not convert message") - } - } else { - fmt.Println("Could not convert numbers") - } + messaging.SendMessages(cfg, numbers, *prepMessage, 5) } diff --git a/models/twilio_details.go b/models/twilio_details.go index e7b091c..0953877 100644 --- a/models/twilio_details.go +++ b/models/twilio_details.go @@ -1,45 +1,9 @@ package models import ( - "fmt" - cnfg "git.kundeng.us/phoenix/textsender-models/pkg/config" ) -type Number struct { - PhoneNumber string `json:"number"` -} - -func (nbr Number) IsEmpty() bool { - if nbr.PhoneNumber == "" { - return true - } else { - return false - } -} - -func PrintNumbers(numbers [](Number)) { - for _, element := range numbers { - fmt.Println("Phone number:", element.PhoneNumber) - } -} - -type Message struct { - Text string `json:"text"` -} - -func (msg Message) IsEmpty() bool { - if msg.Text == "" { - return true - } else { - return false - } -} - -func (msg Message) Print() { - fmt.Println("Message:", msg.Text) -} - func Init() cnfg.TwiloConfig { return cnfg.TwiloConfig{} } diff --git a/util/util.go b/util/util.go index fc54905..0495c75 100644 --- a/util/util.go +++ b/util/util.go @@ -4,12 +4,9 @@ import ( "encoding/json" "fmt" "os" - "strings" "git.kundeng.us/phoenix/textsender-models/pkg/contact" "git.kundeng.us/phoenix/textsender-models/pkg/message" - - "git.kundeng.us/phoenix/sender/models" ) func GetPaths(args []string) (configPath string, numberPath string, messagePath string) { @@ -20,86 +17,41 @@ func GetPaths(args []string) (configPath string, numberPath string, messagePath return } -func ParseNumbers(filepath string) (numbers [](models.Number)) { - nmbrs := [](string){} +func ParseNumbers(filepath string) (numbers [](contact.Contact), err error) { + var nmbrs []contact.Contact content, err := os.ReadFile(filepath) if err != nil { fmt.Println("An error occurred") - return numbers + return numbers, err + } else { + if err = json.Unmarshal(content, &nmbrs); err != nil { + fmt.Println("An error occurred:", err) + return numbers, err + } else { + return nmbrs, nil + } } - err = json.Unmarshal(content, &nmbrs) - - if err != nil { - fmt.Println("An error occurred") - return numbers - } - - for _, nbr := range nmbrs { - var number models.Number - number.PhoneNumber = nbr - numbers = append(numbers, number) - } - - return numbers } -func ParseMessage(filepath string) (message models.Message) { - msg := [](string){""} +func ParseMessage(filepath string) (*message.Message, error) { + var msg message.Message content, err := os.ReadFile(filepath) if err != nil { fmt.Println("An error occurred") - return + return nil, err } err = json.Unmarshal(content, &msg) if err != nil { fmt.Println("An error occurred") - return + return nil, err } - message.Text = strings.Join(msg, "") - - return -} - -func Convert(data interface{}, msgOrNumber int) (interface{}, error) { - switch msgOrNumber { - case 0: - { - if msg, ok := data.(models.Message); ok { - return message.Message{Content: msg.Text}, nil - } else { - return nil, fmt.Errorf("Could not resolve value") - } - } - case 1: - { - var items []contact.Contact - - switch nbrs := data.(type) { - case []models.Number: - for _, number := range nbrs { - if !number.IsEmpty() { - items = append(items, contact.Contact{PhoneNumber: number.PhoneNumber}) - } - } - default: - return nil, fmt.Errorf("Unrecognized type") - } - - if len(items) == 0 { - return nil, fmt.Errorf("Failure converting") - } else { - return items, nil - } - } - default: - return nil, fmt.Errorf("Invalid msgOrNumber") - } + return &msg, nil }