Removing go files
This commit is contained in:
@@ -1,21 +0,0 @@
|
|||||||
VERSION ?= $(shell git describe --tags 2>/dev/null || echo "dev")
|
|
||||||
COMMIT ?= $(shell git rev-parse --short HEAD)
|
|
||||||
BUILD_TIME ?= $(shell date -u +%Y-%m-%dT%H:%M:%SZ)
|
|
||||||
GO_VERSION ?= $(shell go version | awk '{print $$3}')
|
|
||||||
|
|
||||||
.PHONY: build
|
|
||||||
build:
|
|
||||||
go build -ldflags="\
|
|
||||||
-X 'git.kundeng.us/phoenix/sender/internal/version.Version=$(VERSION)' \
|
|
||||||
-X 'git.kundeng.us/phoenix/sender/internal/version.BuildTime=$(BUILD_TIME)' \
|
|
||||||
-X 'git.kundeng.us/phoenix/sender/internal/version.Commit=$(COMMIT)' \
|
|
||||||
-X 'git.kundeng.us/phoenix/sender/internal/version.GoVersion=$(GO_VERSION)'" \
|
|
||||||
-o sender cmd/sender/main.go
|
|
||||||
|
|
||||||
.PHONY: install
|
|
||||||
install:
|
|
||||||
go install -ldflags="\
|
|
||||||
-X 'git.kundeng.us/phoenix/sender/internal/version.Version=$(VERSION)' \
|
|
||||||
-X 'git.kundeng.us/phoenix/sender/internal/version.BuildTime=$(BUILD_TIME)' \
|
|
||||||
-X 'git.kundeng.us/phoenix/sender/internal/version.Commit=$(COMMIT)' \
|
|
||||||
-X 'git.kundeng.us/phoenix/sender/internal/version.GoVersion=$(GO_VERSION)'"
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# sender
|
|
||||||
sender is a cli program to send text messages.
|
|
||||||
|
|
||||||
## Install twilio
|
|
||||||
```
|
|
||||||
make build
|
|
||||||
```
|
|
||||||
|
|
||||||
## Using
|
|
||||||
```
|
|
||||||
./sender config_path.json numbers_path.json message_path.json
|
|
||||||
```
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
"log"
|
|
||||||
"os"
|
|
||||||
|
|
||||||
"git.kundeng.us/phoenix/sender/internal/config"
|
|
||||||
"git.kundeng.us/phoenix/sender/internal/messaging"
|
|
||||||
"git.kundeng.us/phoenix/sender/internal/util"
|
|
||||||
"git.kundeng.us/phoenix/sender/internal/version"
|
|
||||||
)
|
|
||||||
|
|
||||||
func main() {
|
|
||||||
myArgs := os.Args
|
|
||||||
argCount := len(myArgs)
|
|
||||||
|
|
||||||
if config.IsVersionFlagPresent() {
|
|
||||||
fmt.Println(config.App_Name)
|
|
||||||
fmt.Println(version.String())
|
|
||||||
return
|
|
||||||
} else if argCount < 4 {
|
|
||||||
log.Printf("Argument count: %v\n", argCount)
|
|
||||||
log.Fatal("Provide argument to config file and number file")
|
|
||||||
}
|
|
||||||
|
|
||||||
configPath, numberPath, messagePath := util.GetPaths(myArgs)
|
|
||||||
|
|
||||||
log.Printf("Config file path: %s\n", configPath)
|
|
||||||
log.Println("Numbers file path:", numberPath)
|
|
||||||
log.Println("Message path:", messagePath)
|
|
||||||
|
|
||||||
cfg, _ := config.ParseConfig(configPath)
|
|
||||||
cfg.PrintConfig()
|
|
||||||
|
|
||||||
numbers, err := util.ParseNumbers(numberPath)
|
|
||||||
if err != nil {
|
|
||||||
log.Println("Error:", err)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
prepMessage, err := util.ParseMessage(messagePath)
|
|
||||||
if err != nil {
|
|
||||||
log.Println("Error:", err)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
if len(numbers) == 0 || prepMessage.Content == "" {
|
|
||||||
if len(numbers) == 0 {
|
|
||||||
log.Println("No numbers to send")
|
|
||||||
os.Exit(-1)
|
|
||||||
} else {
|
|
||||||
log.Println("No message to send")
|
|
||||||
os.Exit(-1)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
fmt.Println("")
|
|
||||||
log.Println("Message:", prepMessage.Content)
|
|
||||||
|
|
||||||
messaging.SendMessages(cfg, numbers, *prepMessage, 5)
|
|
||||||
}
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
package config
|
|
||||||
|
|
||||||
import (
|
|
||||||
"encoding/json"
|
|
||||||
"flag"
|
|
||||||
"log"
|
|
||||||
"os"
|
|
||||||
|
|
||||||
axlry "git.kundeng.us/phoenix/textsender-models/tx0/config/auxiliary"
|
|
||||||
)
|
|
||||||
|
|
||||||
const (
|
|
||||||
App_Name = "sender"
|
|
||||||
)
|
|
||||||
|
|
||||||
func IsVersionFlagPresent() bool {
|
|
||||||
versionFlag := flag.Bool("version", false, "Print version information")
|
|
||||||
flag.Parse()
|
|
||||||
|
|
||||||
if *versionFlag {
|
|
||||||
return true
|
|
||||||
} else {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func ParseConfig(filepath string) (config axlry.TwilioConfig, success bool) {
|
|
||||||
content, err := os.ReadFile(filepath)
|
|
||||||
|
|
||||||
log.Println("Reading config file...")
|
|
||||||
log.Println(filepath)
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Println("An error reading the file")
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
err = json.Unmarshal(content, &config)
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Println("An error occurred")
|
|
||||||
return config, false
|
|
||||||
}
|
|
||||||
|
|
||||||
return config, true
|
|
||||||
}
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
package messaging
|
|
||||||
|
|
||||||
import (
|
|
||||||
"encoding/json"
|
|
||||||
"log"
|
|
||||||
"time"
|
|
||||||
|
|
||||||
"git.kundeng.us/phoenix/swoosh/swoop/send"
|
|
||||||
cnfg "git.kundeng.us/phoenix/textsender-models/tx0/config/auxiliary"
|
|
||||||
"git.kundeng.us/phoenix/textsender-models/tx0/contact"
|
|
||||||
msg "git.kundeng.us/phoenix/textsender-models/tx0/message"
|
|
||||||
)
|
|
||||||
|
|
||||||
func SendMessages(config cnfg.TwilioConfig, numbers [](contact.Contact), message msg.Message, secondInterval int) {
|
|
||||||
log.Println("Sending message")
|
|
||||||
|
|
||||||
longSleepLimit := 5
|
|
||||||
count := 0
|
|
||||||
|
|
||||||
var snr send.MessageSender
|
|
||||||
snr.Config = &config
|
|
||||||
|
|
||||||
for _, number := range numbers {
|
|
||||||
numberToSend := number
|
|
||||||
log.Println("Sending to: " + numberToSend.PhoneNumber)
|
|
||||||
|
|
||||||
if resp, _, err := snr.Send(message, number, nil); err != nil {
|
|
||||||
log.Println("Error sending:", err)
|
|
||||||
} else {
|
|
||||||
if response, err := json.Marshal(*resp); err != nil {
|
|
||||||
log.Println("Error parsing:", err)
|
|
||||||
} else {
|
|
||||||
log.Println("Response:", string(response))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
log.Println("Sleeping")
|
|
||||||
if count%longSleepLimit == 0 {
|
|
||||||
// sleep for X seconds
|
|
||||||
tme := 1 * time.Second
|
|
||||||
time.Sleep(tme)
|
|
||||||
} else {
|
|
||||||
time.Sleep(time.Second)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,57 +0,0 @@
|
|||||||
package util
|
|
||||||
|
|
||||||
import (
|
|
||||||
"encoding/json"
|
|
||||||
"log"
|
|
||||||
"os"
|
|
||||||
|
|
||||||
"git.kundeng.us/phoenix/textsender-models/tx0/contact"
|
|
||||||
"git.kundeng.us/phoenix/textsender-models/tx0/message"
|
|
||||||
)
|
|
||||||
|
|
||||||
func GetPaths(args []string) (configPath string, numberPath string, messagePath string) {
|
|
||||||
configPath = args[1]
|
|
||||||
numberPath = args[2]
|
|
||||||
messagePath = args[3]
|
|
||||||
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func ParseNumbers(filepath string) (numbers [](contact.Contact), err error) {
|
|
||||||
var nmbrs []contact.Contact
|
|
||||||
|
|
||||||
content, err := os.ReadFile(filepath)
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Println("An error occurred")
|
|
||||||
return numbers, err
|
|
||||||
} else {
|
|
||||||
if err = json.Unmarshal(content, &nmbrs); err != nil {
|
|
||||||
log.Println("An error occurred:", err)
|
|
||||||
return numbers, err
|
|
||||||
} else {
|
|
||||||
return nmbrs, nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
func ParseMessage(filepath string) (*message.Message, error) {
|
|
||||||
var msg message.Message
|
|
||||||
|
|
||||||
content, err := os.ReadFile(filepath)
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Println("An error occurred")
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
err = json.Unmarshal(content, &msg)
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Println("An error occurred")
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
return &msg, nil
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
package version
|
|
||||||
|
|
||||||
import "fmt"
|
|
||||||
|
|
||||||
var (
|
|
||||||
Version = "dev"
|
|
||||||
BuildTime = "unknown"
|
|
||||||
Commit = "unknown"
|
|
||||||
GoVersion = "unknown"
|
|
||||||
)
|
|
||||||
|
|
||||||
func String() string {
|
|
||||||
return fmt.Sprintf(
|
|
||||||
"Version: %s\nBuild Date: %s\nCommit: %s\nGo Version: %s",
|
|
||||||
Version, BuildTime, Commit, GoVersion,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user