Ako poslať viacero SMS z Node.js

Najjednoduchší spôsob, ako poslať SMS z Node.Js, je použiť vstavané HTTP/Rest SMS API Ozeki SMS Gateway. Keď použijete toto API, budete posielať SMS správy vytvorením HTTP POST požiadavky na SMS bránu. HTTP POST požiadavka bude obsahovať správu formátovanú v json formáte. SMS brána potom pošle túto SMS na príjemcove telefónne číslo a vráti HTTP 200 OK odpoveď na vašu požiadavku.

ako poslať sms správy pomocou node js
Obrázok 1 - Ako poslať viacero SMS z Node.Js

JavaScript kód na odoslanie SMS na mobil

Vzorový JavaScript kód pre SMS nižšie demonštruje, ako môžete poslať SMS pomocou HTTP REST SMS API Ozeki SMS Gateway s použitím knižnice JavaScript Ozeki.Libs.Rest. Táto knižnica je poskytovaná bezplatne a môžete ju použiť a upraviť v akomkoľvek z vašich projektov.

SendMultipleSms.mjs
import { Configuration, Message, MessageApi } from './Ozeki.Libs.Rest.js';


var configuration = new  Configuration();
configuration.Username = "http_user";
configuration.Password = "qwe123";
configuration.ApiUrl = "http://127.0.0.1:9509/api";

var msg1 = new Message();
msg1.ToAddress = "+36201111111";
msg1.Text = "Hello world 1";

var msg2 = new Message();
msg2.ToAddress = "+36202222222";
msg2.Text = "Hello world 2";

var msg3 = new Message();
msg3.ToAddress = "+36203333333";
msg3.Text = "Hello world 3";

var messages = new Array();

messages.push(msg1);
messages.push(msg2);
messages.push(msg3);

var api = new MessageApi(configuration);

const result = await api.Send(messages);

console.log(result.toString());
	

Ako použiť JavaScript príklad pre SMS:

Môžete použiť triedu Message na vytvorenie SMS a triedu MessageApi na odoslanie SMS na SMS bránu. SMS brána potom prepošle vašu správu do mobilnej siete buď bezdrôtovým pripojením alebo cez internet.

Stiahnuť SendMultipleSms.js

Zdrojový kód vysvetlený v tomto článku je možné stiahnuť, použiť a upraviť bezplatne.
Stiahnuť: SendMultipleSms.js.zip (3.62Kb)

Čo obsahuje súbor SendMultipleSms.js.zip?

Súbor SendMultipleSms.js.zip obsahuje knižnicu Ozeki.Libs.Rest, ktorá vám poskytuje všetky potrebné nástroje na odosielanie a prijímanie SMS správ. Nájdete tu aj súbor SendMultipleSms.mjs v projekte, ktorý obsahuje vzorový kód, ktorý vám ukáže, ako odoslať SMS. Tento vzorový kód je uvedený nižšie.

príklad projektu na odoslanie viacerých sms s node js
Obrázok 2 - Adresár SendMultipleSms.js

Tento projekt má závislosti, takže pred začatím musíte nainštalovať balík node-fetch pomocou nasledujúceho príkazu:

npm install node-fetch
	

Kód 1 - Príkaz na inštaláciu balíka node-fetch

. Ako poslať SMS z Node.Js (Rýchle kroky)

Na odoslanie SMS z Node.Js:

  1. Nainštalujte Ozeki SMS Gateway
  2. Pripojte Ozeki SMS Gateway k mobilnej sieti
  3. Odošlite testovaciu SMS z Ozeki GUI
  4. Vytvorte používateľa HTTP SMS API
  5. Apache NetBeans
  6. Stiahnite si vyššie uvedený príklad projektu
  7. Vytvorte SMS vytvorením nového objektu Message
  8. Vytvorte API na odoslanie vašej správy
  9. Použite metódu Send na odoslanie vašej správy
  10. Prečítajte si odpoveď na konzole
  11. Skontrolujte záznamy v SMS bráne
Nainštalujte Ozeki SMS Gateway a vytvorte používateľa HTTP API

Na odosielanie SMS z Node.Js musíte najprv nainštalovať Ozeki SMS Gateway. SMS bránu je možné nainštalovať na rovnakom počítači, kde vyvíjate váš JavaScript kód v Visual Studio Code alebo inom editore kódu. Po inštalácii je ďalším krokom pripojenie Ozeki SMS Gateway k mobilnej sieti. Môžete odoslať testovaciu SMS z Ozeki GUI na overenie, že vaše mobilné pripojenie funguje. Posledným krokom pri príprave vášho prostredia je vytvorenie používateľa HTTP SMS API. Vytvorte používateľa s menom "http_user" a heslom "qwe123", aby príklad fungoval bez úprav.

Po nastavení prostredia môžete spustiť svoj JavaScript kód.

HTTP API URL na odoslanie SMS z Node.Js

Na odoslanie SMS z Node.Js bude váš JavaScript musieť vytvoriť HTTP požiadavku na SMS bránu. API URL je uvedené nižšie. Upozorňujeme, že IP adresa (127.0.0.1) by mala byť nahradená IP adresou vašej SMS brány. Ak je Ozeki SMS Gateway nainštalovaná na rovnakom počítači, kde beží JavaScript SMS aplikácia, môže to byť 127.0.0.1. Ak je nainštalovaná na inom počítači, mala by to byť IP adresa tohto počítača.

http://127.0.0.1:9509/api?action=rest
	
HTTP autentifikácia na odoslanie SMS z JavaScriptu

Na autentifikáciu SMS klienta v Node.Js musíte odoslať používateľské meno a heslo v base64 kódovanom reťazci na server v HTTP požiadavke. Používa sa formát: base64(používateľské meno+":"+heslo). V JavaScripte môžete použiť nasledujúci kód na toto kódovanie:

var usernamePassword = username + ":" + password;
return `Basic ${Base64.encode(usernamePassword)}`;
	

Napríklad, ak zakódujete používateľské meno 'http_user' a heslo 'qwe123', dostanete nasledujúci base64 kódovaný reťazec: aHR0cF91c2VyOnF3ZTEyMw==. Na odoslanie

HTTP hlavička požiadavky na odoslanie SMS z JavaScriptu

Na odoslanie SMS správ musíte do hlavičky HTTP požiadavky zahrnúť nasledujúce riadky. Upozorňujeme, že obsahujeme hlavičku typu obsahu a autorizačnú hlavičku.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
	
HTTP požiadavka na odoslanie SMS z Node.Js

Na odoslanie SMS bude vaša aplikácia Node.Js odosielať HTTP požiadavku podobnú nižšie uvedenej. Upozorňujeme, že táto požiadavka obsahuje časť HTTP hlavičky a časť tela HTTP. Telo HTTP je reťazec údajov zakódovaný v JSON. Obsahuje číslo príjemcu a text správy.

POST /api?action=sendmsg HTTP/1.1
Connection: close
Content-Length: 932
Content-Type: application/json
Accept: */*
Accept-Encoding: gzip,deflate
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509
User-Agent: node-fetch/1.0 (+https://github.com/bitinn/node-fetch)

{
	"messages":	[
		{
			"message_id":	"bda3e52a-6081-4c7e-954a-e3baf41d68bd",
			"to_address":	"+36201111111",
			"text":	"Hello world 1",
			"create_date":	"2021-06-14T09:45:52",
			"vaild_date":	"2021-06-21T09:45:52",
			"time_to_send":	"2021-06-14T09:45:52",
			"submit_report_requested":	true,
			"delivery_report_requested":	true,
			"view_report_requested":	true
		},
		{
			"message_id":	"50147a56-d453-50ba-b0ba-567c789cb539",
			"to_address":	"+36202222222",
			"text":	"Hello world 2",
			"create_date":	"2021-06-14T09:45:52",
			"vaild_date":	"2021-06-21T09:45:52",
			"time_to_send":	"2021-06-14T09:45:52",
			"submit_report_requested":	true,
			"delivery_report_requested":	true,
			"view_report_requested":	true
		},
		{
			"message_id":	"f05671e8-7664-d1c0-82da-0934464e2978",
			"to_address":	"+36203333333",
			"text":	"Hello world 3",
			"create_date":	"2021-06-14T09:45:52",
			"vaild_date":	"2021-06-21T09:45:52",
			"time_to_send":	"2021-06-14T09:45:52",
			"submit_report_requested":	true,
			"delivery_report_requested":	true,
			"view_report_requested":	true
		}
	]
}
	
HTTP odpoveď prijatá príkladom SMS v JavaScripte

Keď SMS brána prijme túto požiadavku, vygeneruje HTTP odpoveď. HTTP odpoveď bude obsahovať stavový kód, ktorý indikuje, či bola požiadavka na odoslanie SMS úspešná alebo nie. Vráti tiež štruktúru zakódovanú v JSON, ktorá vám poskytne užitočné informácie o odoslaní správy.

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.120 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Mon, 14 Jun 2021 09:12:00 GMT
Server: 10/10.3.120
Transfer-Encoding: chunked
{
	"http_code": 200,
	"response_code": "SUCCESS",
	"response_msg": "Messages queued for delivery.",
	"data": {
	  "total_count": 3,
	  "success_count": 3,
	  "failed_count": 0,
	  "messages": [
	    {
	      "message_id": "bda3e52a-6081-4c7e-954a-e3baf41d68bd",
	      "from_station": "%",
	      "to_address": "+36201111111",
	      "to_station": "%",
	      "text": "Hello world 1",
	      "create_date": "2021-06-14 09:45:52",
	      "valid_until": "2021-06-21 09:45:52",
	      "time_to_send": "2021-06-14 09:45:52",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": false,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ],
	      "status": "SUCCESS"
	    },
	    {
	      "message_id": "50147a56-d453-50ba-b0ba-567c789cb539",
	      "from_station": "%",
	      "to_address": "+36202222222",
	      "to_station": "%",
	      "text": "Hello world 2",
	      "create_date": "2021-06-14 09:45:52",
	      "valid_until": "2021-06-21 09:45:52",
	      "time_to_send": "2021-06-14 09:45:52",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": false,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ],
	      "status": "SUCCESS"
	    },
	    {
	      "message_id": "f05671e8-7664-d1c0-82da-0934464e2978",
	      "from_station": "%",
	      "to_address": "+36203333333",
	      "to_station": "%",
	      "text": "Hello world 3",
	      "create_date": "2021-06-14 09:45:52",
	      "valid_until": "2021-06-21 09:45:52",
	      "time_to_send": "2021-06-14 09:45:52",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": false,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ],
	      "status": "SUCCESS"
	    }
	  ]
	}
}
	
Ako odoslať SMS z Node.Js pomocou SMS API (Video návod)

Toto video vám ukáže, ako stiahnuť a použiť projekt SendMultipleSms.js. Keď pridáte potrebné súbory do svojho projektu, môžete si všimnúť, že existuje súbor s názvom Ozeki.Lbis.Rest.js. Toto je súbor, ktorý obsahuje MessageApi a všetko, čo potrebujete na odoslanie SMS pomocou JavaScriptu.

Video 1 - Ako stiahnuť Ozeki.Libs.Rest a nastaviť váš projekt (Video návod)

Príklad SMS v Node.Js: SendMultipleSms.mjs (v poznámkovom bloku)

Na tomto obrázku (Obrázok 3) nájdete zdrojový kód projektu otvorený v poznámkovom bloku. Môžete ho upravovať aj v poznámkovom bloku. Ak poznáte Node.js, neváhajte zmeniť premenné v kóde a odoslať prispôsobenú správu na adresu podľa vášho výberu.

javascript príklad na odoslanie viacerých SMS
Obrázok 3 - SendMultipleSms.mjs v poznámkovom bloku

Ak hľadáte jednoduchší spôsob otvorenia a úpravy zdrojového kódu, skúste použiť Visual Studio Code (Obrázok 4). Ponúka farebné zvýrazňovanie syntaxe, viac pomoci a automatické dopĺňanie. Je to ľahké IDE (Integrované vývojové prostredie), ktoré je open-source a zadarmo.

príklad v javascripte na odoslanie viacerých SMS
Obrázok 4 - SendMultipleSms.mjs v Visual Studio Code

Ako skontrolovať, že SMS bola prijatá HTTP používateľom

Po odoslaní SMS je dobré skontrolovať svoju SMS bránu, aby ste videli, čo prijala. Log môžete skontrolovať otvorením detailov HTTP používateľa v konzole na správu Ozeki SMS Gateway. Nasledujúce video vám ukáže, čo hľadať.

Video 2 - Ako odoslať viacero SMS správ s vyššie uvedeným JavaScript kódom (Video návod)

Ako skontrolovať, že SMS bola odoslaná do mobilnej siete

Posledným krokom pri overovaní postupu je pozrieť sa na logy mobilného sieťového pripojenia. Možno budete musieť zapnúť logovanie v konfigurácii pripojenia pred odoslaním správy, aby ste videli logy. Ak je logovanie zapnuté, uvidíte telefónne číslo a text správy, ktorú ste odoslali.

Záverečné myšlienky

Tento sprievodca obsahuje všetky základné informácie pre naučenie sa, ako odosielať viaceré SMS správy z Node.js aplikácie s HTTP používateľom Ozeki SMS Gateway. Toto riešenie ponúka univerzálne použitie, pretože Node.js SMS API funguje aj s Android SMS Gateway, ktorý vám umožňuje odosielať SMS bezdrôtovo, čo je výhodné. Použitie tejto služby robí vaše správovanie efektívnejším a dynamickejším, pretože môžete doručiť cenné informácie a dôležité upozornenia na viacero mobilných telefónov naraz.

Na webovej stránke Ozeki nájdete mnoho ďalších článkov o funkcionalitách Node.js SMS API. Choďte, naučte sa viac, pokračujte s Ako naplánovať SMS v Node.js.

Poďme do práce, v prvom rade si stiahnite Ozeki SMS Gateway!

More information