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)
    }
}