SDK de Unimatrix para Go
Instalación
El SDK de Unimatrix para Golang utiliza Go Modules, disponible en el repositorio público de Github.
Ejecuta el siguiente comando para añadir uni-go-sdk
como una dependencia en tu proyecto:
go get github.com/unimtx/uni-go-sdk
Uso
El siguiente ejemplo muestra cómo usar el SDK de Go de Unimatrix para interactuar con los servicios de Unimatrix.
Inicializar un cliente
package main
import (
"fmt"
"github.com/unimtx/uni-go-sdk"
)
func main() {
client := uni.NewClient("tu id de clave de acceso", "tu secreto de clave de acceso") // si usas el modo de autenticación simple, solo pasa el primer parámetro
}
o puedes configurar tus credenciales mediante variables de entorno:
export UNIMTX_ACCESS_KEY_ID=tu_id_de_clave_de_acceso
export UNIMTX_ACCESS_KEY_SECRET=tu_secreto_de_clave_de_acceso
Enviar SMS
Envía un mensaje de texto a un único destinatario.
package main
import (
"fmt"
"github.com/unimtx/uni-go-sdk"
)
func main() {
client := uni.NewClient()
res, err := client.Messages.Send(&uni.MessageSendParams{
To: "+1206880xxxx", // en formato E.164
Text: "Tu código de verificación es 2048.",
})
if err != nil {
fmt.Println(err)
} else {
fmt.Println(res)
}
}
Envía un mensaje utilizando una plantilla con variables.
client.Messages.Send(&uni.MessageSendParams{
To: "+1650253xxxx",
Signature: "Unimatrix",
TemplateId: "pub_otp_es",
TemplateData: map[string]string {"code": "2048"},
})
Enviar OTP
Envía un código de paso único (OTP) a un destinatario. El siguiente ejemplo enviará un código de verificación generado automáticamente al usuario.
package main
import (
"fmt"
"github.com/unimtx/uni-go-sdk"
)
func main() {
client := uni.NewClient()
res, err := client.Otp.Send(&uni.OtpSendParams{
To: "+1206880xxxx",
})
if err != nil {
fmt.Println(err)
} else {
fmt.Println(res)
}
}
Verificar OTP
Verifica el código de paso único (OTP) que un usuario proporcionó. El siguiente ejemplo verificará si el código de verificación proporcionado por el usuario es correcto.
package main
import (
"fmt"
"github.com/unimtx/uni-go-sdk"
)
func main() {
client := uni.NewClient()
res, err := client.Otp.Verify(&uni.OtpVerifyParams{
To: "+1206880xxxx",
Code: "123456", // el código proporcionado por el usuario
})
if err != nil {
fmt.Println(err)
} else {
fmt.Println(res.Valid)
}
}