diff --git a/.github/workflows/go.yaml b/.github/workflows/go.yaml deleted file mode 100644 index d3a58cf..0000000 --- a/.github/workflows/go.yaml +++ /dev/null @@ -1,45 +0,0 @@ -name: Go - -on: - push: - branches: [ main, master ] - pull_request: - branches: [ main, master ] - -jobs: - build: - runs-on: ubuntu-24.04 # You can change this to macos-latest or windows-latest if needed - - steps: - - uses: actions/checkout@v5 - - - name: Set up Go - uses: actions/setup-go@v6 - with: - go-version: '1.26.2' # You can specify a specific version or 'stable' - - - name: Build - run: | - echo "Initializing config" - mkdir -p ~/.ssh - echo "${{ secrets.MYREPO_TOKEN }}" > ~/.ssh/textsender_models_deploy_key - chmod 600 ~/.ssh/textsender_models_deploy_key - ssh-keyscan ${{ secrets.MY_HOST }} >> ~/.ssh/known_hosts - - eval $(ssh-agent -s) - ssh-add -v ~/.ssh/textsender_models_deploy_key - - go env -w GOPRIVATE='${{ secrets.GIT_HOST_ROOT }}' - - echo "Creating local .gitconfig" - touch ~/.gitconfig - cat > ~/.gitconfig << "EOF" - [url "ssh://git@${{ secrets.GIT_HOST_ROOT }}"] - insteadOf = https://${{ secrets.GIT_HOST_ROOT }} - EOF - - echo "Building binary" - make build - - - name: Test - run: go test -v ./... diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 613fc93..0000000 --- a/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -/sender -/messages -/numbers -/config.json -/vendor diff --git a/Makefile b/Makefile deleted file mode 100644 index cf2e15e..0000000 --- a/Makefile +++ /dev/null @@ -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)'" diff --git a/README.md b/README.md deleted file mode 100644 index fa6405d..0000000 --- a/README.md +++ /dev/null @@ -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 -``` diff --git a/cmd/sender/main.go b/cmd/sender/main.go deleted file mode 100644 index 735501c..0000000 --- a/cmd/sender/main.go +++ /dev/null @@ -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) -} diff --git a/config.sample.json b/config.sample.json deleted file mode 100644 index b99bdf1..0000000 --- a/config.sample.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "auth_sid": "somethingspecial243324", - "service_sid": "FEWJ93982N3FD9JV3F8", - "auth_token": "sdfdsmfoi3299823je98d29jd", - "phone_number": "+10123456789" -} diff --git a/go.mod b/go.mod deleted file mode 100644 index 5d70182..0000000 --- a/go.mod +++ /dev/null @@ -1,16 +0,0 @@ -module git.kundeng.us/phoenix/sender - -go 1.26.2 - -require ( - git.kundeng.us/phoenix/swoosh v0.2.1 - git.kundeng.us/phoenix/textsender-models v0.2.1 -) - -require ( - github.com/golang-jwt/jwt/v5 v5.3.1 // indirect - github.com/golang/mock v1.6.0 // indirect - github.com/google/uuid v1.6.0 // indirect - github.com/pkg/errors v0.9.1 // indirect - github.com/twilio/twilio-go v1.30.5 // indirect -) diff --git a/go.sum b/go.sum deleted file mode 100644 index 7e8405c..0000000 --- a/go.sum +++ /dev/null @@ -1,47 +0,0 @@ -git.kundeng.us/phoenix/swoosh v0.2.1 h1:mJ/zXBOqzi0YTrSm5kxvahzp2WH7lx4R3iIO0s9VFFI= -git.kundeng.us/phoenix/swoosh v0.2.1/go.mod h1:81XNzmTmDPuDPmXMUmKTLErNSKKBM+hsW5U60Lm78ww= -git.kundeng.us/phoenix/textsender-models v0.2.1 h1:21br4NF58aUFuCx8laKxC5RvZMl4GsSIaMX4bvf5plw= -git.kundeng.us/phoenix/textsender-models v0.2.1/go.mod h1:nu5QWy9o+spx/t9NFipaGmF5qiBJS/0QhxyCjoi3Z3E= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= -github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/golang-jwt/jwt/v5 v5.3.1 h1:kYf81DTWFe7t+1VvL7eS+jKFVWaUnK9cB1qbwn63YCY= -github.com/golang-jwt/jwt/v5 v5.3.1/go.mod h1:fxCRLWMO43lRc8nhHWY6LGqRcf+1gQWArsqaEUEa5bE= -github.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc= -github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= -github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= -github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/localtunnel/go-localtunnel v0.0.0-20170326223115-8a804488f275 h1:IZycmTpoUtQK3PD60UYBwjaCUHUP7cML494ao9/O8+Q= -github.com/localtunnel/go-localtunnel v0.0.0-20170326223115-8a804488f275/go.mod h1:zt6UU74K6Z6oMOYJbJzYpYucqdcQwSMPBEdSvGiaUMw= -github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY= -github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/twilio/twilio-go v1.30.5 h1:hi6+2kMte29zrFBsw7VSSNtbF30GPMGz/4LRIUgXng8= -github.com/twilio/twilio-go v1.30.5/go.mod h1:QbitvbvtkV77Jn4BABAKVmxabYSjMyQG4tHey9gfPqg= -github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= -gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/internal/config/config.go b/internal/config/config.go deleted file mode 100644 index 5201eea..0000000 --- a/internal/config/config.go +++ /dev/null @@ -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 -} diff --git a/internal/messaging/messaging.go b/internal/messaging/messaging.go deleted file mode 100644 index 1aac02c..0000000 --- a/internal/messaging/messaging.go +++ /dev/null @@ -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) - } - } -} diff --git a/internal/util/util.go b/internal/util/util.go deleted file mode 100644 index cd92780..0000000 --- a/internal/util/util.go +++ /dev/null @@ -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 -} diff --git a/internal/version/version.go b/internal/version/version.go deleted file mode 100644 index 91e3782..0000000 --- a/internal/version/version.go +++ /dev/null @@ -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, - ) -}