Deleted files: api/compliance.go, api/debug.go, rmo/compliance.go, rmo/email.go, rmo/mock.go, platform/publicreport/address.go Removed unused functions/types from: api/api.go, api/configuration.go, api/district.go, api/publicreport.go, api/sudo.go, api/types.go, comms/text/twilio.go, comms/text/voipms.go, h3utils/h3.go, html/embed.go, html/form.go, middleware/terminal.go, minio/client.go, platform/csv/csv.go, platform/csv/flyover.go, platform/file/base.go, platform/file/upload.go, platform/geocode/address.go, platform/types/service_request.go
33 lines
952 B
Go
33 lines
952 B
Go
package text
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
|
|
"github.com/Gleipnir-Technology/nidus-sync/config"
|
|
"github.com/rs/zerolog/log"
|
|
"github.com/twilio/twilio-go"
|
|
twilioApi "github.com/twilio/twilio-go/rest/api/v2010"
|
|
)
|
|
|
|
func sendTextTwilio(ctx context.Context, source string, destination string, message string) (string, error) {
|
|
client := twilio.NewRestClient()
|
|
|
|
params := &twilioApi.CreateMessageParams{}
|
|
params.SetMessagingServiceSid(config.TwilioMessagingServiceSID)
|
|
|
|
params.SetBody(message)
|
|
params.SetTo(destination)
|
|
resp, err := client.Api.CreateMessage(params)
|
|
|
|
if err != nil {
|
|
return "", fmt.Errorf("Failed to create message to %s: %w", destination, err)
|
|
}
|
|
if resp.Sid == nil {
|
|
log.Warn().Str("src", source).Str("dst", destination).Msg("Text message sid is nil")
|
|
return "", nil
|
|
}
|
|
log.Info().Str("src", source).Str("dst", destination).Str("message", message).Str("sid", *resp.Sid).Msg("Created text message")
|
|
return *resp.Sid, nil
|
|
}
|
|
|