Skip to content

dex35/smsru

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Golang клиент для сервиса sms.ru

Build Status

Поддерживаемые методы:

  • sms/send, sms/status, sms/cost, sms/status
  • my/balance, my/limit, my/free, my/senders
  • stoplist/add, stoplist/del, stoplist/get
  • callback/add, callback/del, callback/get

Использование

Установка:

go get github.com/dex35/smsru

Импорт:

import "github.com/dex35/smsru"

Пример использования

package main

import (
	"log"
	"github.com/dex35/smsru"
)

func main() {
	smsClient := smsru.CreateClient("API_KEY")

	// Отправка сообщения
	phone := "номер телеофна в формате 79991112233"
	sms := smsru.CreateSMS(phone, "тестовое сообщение")
	sendedsms, err := smsClient.SmsSend(sms)
	if err != nil {
		log.Panic(err)
	} else {
		log.Printf("Статус запроса: %s, Статус-код выполнения: %d (%s), Баланс: %f", sendedsms.Status, sendedsms.StatusCode, smsru.GetErrorByCode(sendedsms.StatusCode), sendedsms.Balance)
		log.Printf("Сообщение: %s, Статус-код выполнения: %d (%s), Идентификатор: %s, Описание ошибки: %s", sendedsms.Sms[phone].Status, sendedsms.Sms[phone].StatusCode, smsru.GetErrorByCode(sendedsms.StatusCode), sendedsms.Sms[phone].SmsId, sendedsms.Sms[phone].StatusText)
	}

	// Запрос баланса
	balance, err := smsClient.MyBalance()
	if err != nil {
		log.Panic(err)
	} else {
		log.Printf("Статус запроса: %s, Статус-код выполнения: %d (%s), Баланс: %f", balance.Status, balance.StatusCode, smsru.GetErrorByCode(balance.StatusCode), balance.Balance)
	}
}

About

SMS.RU клиент на Go

Resources

License

Stars

Watchers

Forks

Languages