Jak odeslat více SMS z Go

Nejjednodušší způsob, jak odeslat více SMS z Go, je použít vestavěné HTTP/Rest SMS API Ozeki SMS Gateway. Když použijete toto API, budete odesílat SMS zprávy vytvořením HTTP Post požadavku na SMS bránu. HTTP Post požadavek bude obsahovat zprávu formátovanou ve formátu json. SMS brána odešle tuto SMS na telefon příjemce a vrátí HTTP 200 OK odpověď na váš požadavek.

jak odeslat více sms z go
Obrázek 1 - Jak odeslat více SMS z Go

Go kód pro odeslání více SMS zpráv na mobil

Níže uvedený ukázkový kód Go pro SMS demonstruje, jak můžete odeslat více SMS pomocí http rest sms api Ozeki SMS Gateway s použitím balíčku Go github.com/ozekisms/go_send_sms_http_rest_ozeki. Tento balíček je vám poskytován zdarma a můžete jej používat a upravovat v jakémkoli z vašich projektů.

SendMultipleSms.go
package main

import (
	"fmt"

	ozeki "github.com/ozekisms/go_send_sms_http_rest_ozeki"
)

func main() {
	configuration := ozeki.NewConfiguration(
		"http_user",
		"qwe123",
		"http://127.0.0.1:9509/api",
	)

	msg1 := ozeki.NewMessage()
	msg1.ToAddress = "+36201111111"
	msg1.Text = "Hello world 1"

	msg2 := ozeki.NewMessage()
	msg2.ToAddress = "+36202222222"
	msg2.Text = "Hello world 2"

	msg3 := ozeki.NewMessage()
	msg3.ToAddress = "+36203333333"
	msg3.Text = "Hello world 3"

	api := ozeki.NewMessageApi(configuration)

	result := api.Send([]ozeki.Message{msg1, msg2, msg3})

	fmt.Println(result)
}
	

Kód 1 - SendMultipleSms.go

Jak použít ukázkový kód Go pro SMS:

Tento ukázkový kód Go pro SMS lze použít v jakékoli aplikaci Go. Pro jeho použití je nutné stáhnout balíček github.com/ozekisms/go_send_sms_http_rest_ozeki. Po stažení balíčku je třeba přidat odkaz na něj ve vašem zdrojovém kódu Go. To vám umožní používat třídy poskytované balíčkem github.com/ozekisms/go_send_sms_http_rest_ozeki. Třídu Message můžete použít k vytvoření SMS. Třídu MessageApi můžete použít k odeslání SMS na SMS bránu. SMS brána přepošle vaši zprávu do mobilní sítě buď prostřednictvím bezdrátového připojení nebo přes internet.

Stáhnout SendMultipleSms.go

Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: SendMultipleSms.go.zip (1.08Kb)

Co je v souboru SendMultipleSms.go.zip?

V SendMultipleSms.go.zip najdete soubor SendSms.go, který obsahuje ukázkový kód, který vám ukáže, jak odeslat SMS. Tento ukázkový kód je uveden níže.

Obrázek 2 - Co je uvnitř SendMultipleSms.go.zip

Jak odeslat SMS z Go (Jednoduchý návod)

Pro odeslání SMS z Go:

  1. Nainstalujte HTTP API uživatele
  2. Povolte Logování komunikačních událostí na kartě Pokročilé
  3. Nastavte Visual Studio
  4. Stáhněte a rozbalte soubor SendMultipleSms.go.zip
  5. Spusťte aplikaci Ozeki SMS Gateway
  6. Spusťte Go kód SendMultipleSms.go pomocí příkazového řádku
  7. Zkontrolujte logy, zda byla SMS odeslána

Instalace Ozeki SMS Gateway a vytvoření HTTP API uživatele

Abyste mohli odesílat více SMS zpráv z Go, musíte nejprve nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj Go kód v jakémkoli textovém editoru, například windows notepadu. Po instalaci je dalším krokem připojení Ozeki SMS Gateway k mobilní síti. Můžete odeslat testovací sms z Ozeki GUI a ověřit, že vaše mobilní síťové připojení funguje. Posledním krokem k přípravě vašeho prostředí je vytvoření HTTP sms api uživatele. Vytvořte uživatele s uživatelským jménem "http_user" a heslem "qwe123", aby příklad fungoval bez úprav.

Po nastavení prostředí můžete spustit svůj Go kód.

HTTP API url pro odeslání více SMS z Go

Pro odeslání SMS z Go musí vaše aplikace Go vytvořit HTTP požadavek na SMS bránu. API url je uvedena níže. Všimněte si, že IP adresa (127.0.0.1) by měla být nahrazena IP adresou vaší SMS brány. Pokud je Ozeki SMS Gateway nainstalována na stejném počítači, kde běží Go sms aplikace, může to být 127.0.0.1. Pokud je nainstalována na jiném počítači, měla by to být IP adresa tohoto počítače.

http://127.0.0.1:9509/api?action=rest
	

HTTP autentizace pro odeslání SMS z Go

Pro ověření Go sms klienta musíte odeslat uživatelské jméno a heslo v base64 kódovaném řetězci na server v HTTP požadavku. Použitý formát je: base64(username+":"+password). V Go můžete použít následující kód pro toto kódování:

import b64 "encoding/base64"

func (api *MessageApi) createAuthorizationHeader(username string, password string) string {
	var usernamePassword string = username + ":" + password
	var usernamePasswordEncoded string = b64.StdEncoding.EncodeToString([]byte(usernamePassword))
	return "Basic " + usernamePasswordEncoded
}
	

Například, pokud zakódujete uživatelské jméno 'http_user' a heslo 'qwe123', získáte následující base64 kódovaný řetězec: aHR0cF91c2VyOnF3ZTEyMw==. Pro odeslání

HTTP hlavička požadavku pro odeslání SMS z Go

Pro odeslání SMS zpráv je třeba do HTTP požadavku zahrnout následující řádky jako hlavičky. Všimněte si, že zahrnujeme typ obsahu a autorizační hlavičku.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
	

HTTP požadavek pro odeslání SMS z Go

Pro odeslání SMS bude vaše aplikace v Go odesílat HTTP požadavek podobný tomu níže. Všimněte si, že tento požadavek obsahuje část HTTP hlavičky a část HTTP těla. HTTP tělo je řetězec zakódovaný v JSON. Obsahuje čísla příjemců a texty zpráv.

POST /api?action=sendmsg HTTP/1.1
Content-Length: 1277
Content-Type: application/json
Accept-Encoding: gzip
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509
User-Agent: Go-http-client/1.1

{
	"messages":	[
		{
			"message_id": "6e5384bb-e07b-11eb-a3b4-74d4355e997d",
			"from_connection": "",
			"from_address": "",
			"from_station": "",
			"to_connection": "",
			"to_address": "+36201111111",
			"to_station": "",
			"text": "Hello world 1",
			"create_date": "2021-07-09T08:03:50",
			"valid_until": "2021-07-16T08:03:50",
			"time_to_send": "2021-07-09T08:03:50",
			"submit_report_requested": true,
			"view_report_requested": true,
			"delivery_report_requested": true,
			"tags": [],
			"status": ""
		},
		{
			"message_id": "6e622a28-e07b-11eb-a3b4-74d4355e997d",
			"from_connection": "",
			"from_address": "",
			"from_station": "",
			"to_connection": "",
			"to_address": "+36202222222",
			"to_station": "",
			"text": "Hello world 2",
			"create_date": "2021-07-09T08:03:50",
			"valid_until": "2021-07-16T08:03:50",
			"time_to_send": "2021-07-09T08:03:50",
			"submit_report_requested": true,
			"view_report_requested": true,
			"delivery_report_requested": true,
			"tags": [],
			"status": ""
		},
		{
			"message_id": "6e622a28-e07b-11eb-a3b5-74d4355e997d",
			"from_connection": "",
			"from_address": "",
			"from_station": "",
			"to_connection": "",
			"to_address": "+36203333333",
			"to_station": "",
			"text": "Hello world 3",
			"create_date": "2021-07-09T08:03:50",
			"valid_until": "2021-07-16T08:03:50",
			"time_to_send": "2021-07-09T08:03:50",
			"submit_report_requested": true,
			"view_report_requested": true,
			"delivery_report_requested": true,
			"tags": [],
			"status": ""
		}
	]
}
	

HTTP odpověď přijatá příkladem SMS v Go

Jakmile SMS brána obdrží tento požadavek, vygeneruje HTTP odpověď. HTTP odpověď bude obsahovat stavový kód, který indikuje, zda byl požadavek na odeslání SMS úspěšný nebo ne. Vrátí také strukturu zakódovanou v JSON, která vám poskytne užitečné informace o odeslání zprávy.

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.123 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Fri, 09 Jul 2021 07:59:56 GMT
Server: 10/10.3.123
Transfer-Encoding: chunked

{
	"http_code": 200,
	"response_code": "SUCCESS",
	"response_msg": "Zprávy zařazeny k doručení.",
	"data": {
	  "total_count": 3,
	  "success_count": 3,
	  "failed_count": 0,
	  "messages": [
	    {
	      "message_id": "6e5384bb-e07b-11eb-a3b4-74d4355e997d",
	      "from_station": "%",
	      "to_address": "+36201111111",
	      "to_station": "%",
	      "text": "Hello world 1",
	      "create_date": "2021-07-09 08:03:50",
	      "valid_until": "2021-07-16 08:03:50",
	      "time_to_send": "2021-07-09 08:03:50",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": false,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ],
	      "status": "SUCCESS"
	    },
	    {
	      "message_id": "6e622a28-e07b-11eb-a3b4-74d4355e997d",
	      "from_station": "%",
	      "to_address": "+36202222222",
	      "to_station": "%",
	      "text": "Hello world 2",
	      "create_date": "2021-07-09 08:03:50",
	      "valid_until": "2021-07-16 08:03:50",
	      "time_to_send": "2021-07-09 08:03:50",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": false,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ],
	      "status": "SUCCESS"
	    },
	    {
	      "message_id": "6e622a28-e07b-11eb-a3b5-74d4355e997d",
	      "from_station": "%",
	      "to_address": "+36203333333",
	      "to_station": "%",
	      "text": "Hello world 3",
	      "create_date": "2021-07-09 08:03:50",
	      "valid_until": "2021-07-16 08:03:50",
	      "time_to_send": "2021-07-09 08:03:50",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": false,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ],
	      "status": "SUCCESS"
	    }
	  ]
	}
}
	

Jak odeslat více SMS zpráv z Go pomocí Go SMS API (Video návod)

Toto video vám ukáže, jak stáhnout soubor SendMultipleSms.go.zip z této stránky. Pokud se podíváte na video, všimnete si, že obsah souboru SendMultipleSms.go.zip je umístěn na ploše Windows. Uvidíte také, že spouštíme příkazový řádek pro odeslání SMS.

Příklad SMS v Go: SendMultipleSms.go

Níže uvedený příklad kódu je součástí souboru SendMultipleSms.go.

Obrázek 3 - Soubor SendMultipleSms.go

Jak zkontrolovat, že SMS byla přijata HTTP uživatelem

Po odeslání SMS je vhodné zkontrolovat vaši SMS bránu, abyste viděli, co přijala. Protokol můžete zkontrolovat otevřením detailů HTTP uživatele v konzoli pro správu Ozeki SMS Gateway. Následující video vám ukáže, na co se zaměřit.

Video 2 - Jak zkontrolovat, že SMS byla přijata HTTP uživatelem (Návodné video)

Shrnutí

Tento průvodce měl za cíl vysvětlit odesílání více SMS v jazyce Go s pomocí Ozeki SMS Gateway. S tímto řešením je oslovení více zákazníků najednou rychlé a jednoduché. Použitím této technologie lze ušetřit spoustu času a energie, protože odesílání více SMS výrazně usnadňuje práci. Ozeki SMS Gateway pracuje s vysokým výkonem, což znamená, že dokáže odeslat až 1000 SMS za sekundu.

Nezapomeňte pokračovat ve čtení na stránce s návody Ozeki, kde najdete více informací o tématech jako mazání SMS v jazyce Go.

Jediné, co teď zbývá, je stáhnout Ozeki SMS Gateway a začít pracovat!

More information