Ako poslať 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 vydaní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 pošle túto SMS príjemcovi a vráti HTTP 200 OK odpoveď na vašu požiadavku.
Vzorový kód JavaScript sms nižšie demonštruje, ako môžete poslať SMS pomocou http rest sms api Ozeki SMS Gateway pomocou 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.
SendSms.mjsimport { 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 api = new MessageApi(configuration); var msg = new Message(); msg.ToAddress = "+36201111111"; msg.Text = "Hello world!"; const result = await api.Send(msg); console.log(result.toString());
Ako použiť príklad JavaScript sms:
Môžete použiť triedu Message na vytvorenie SMS a môžete použiť triedu MessageApi na odoslanie SMS do SMS brány. SMS brána prepošle vašu správu do mobilnej siete buď bezdrôtovým pripojením alebo cez internet.
Stiahnuť SendSms.js
Zdrojový kód vysvetlený v tomto článku je možné stiahnuť, použiť a upraviť bezplatne.
Stiahnuť: SendSms.js.zip (4.35Kb)
Súbor SendSms.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 SendSms.mjs v projekte, ktorý obsahuje vzorový kód, ktorý vám ukáže, ako odoslať SMS. Tento vzorový kód je uvedený nižšie.
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
Na odoslanie sms z Node.Js:
- Nainštalujte Ozeki SMS Gateway
- Pripojte Ozeki SMS Gateway k mobilnej sieti
- Odošlite testovaciu sms z Ozeki GUI
- Vytvorte používateľa HTTP sms api
- Visual Studio Code alebo Windows Notepad
- Stiahnite si vyššie uvedený príklad projektu
- Vytvorte SMS vytvorením nového objektu Message
- Vytvorte api na odoslanie vašej správy
- Použite metódu Send na odoslanie vašej správy
- Prečítajte si odpoveď na konzole
- Skontrolujte záznamy v SMS bráne
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 na prípravu vášho prostredia je vytvorenie používateľa HTTP sms api. Vytvorte používateľa s používateľským 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.JsNa odosielanie SMS z Node.Js bude váš JavaScript musieť vydať 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
Na autentifikáciu Node.Js sms klienta musíte odoslať používateľské meno a heslo v base64 kódovanom reťazci na server v HTTP požiadavke. Použitý formát je: 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 JavaScriptuNa odosielanie SMS správ musíte zahrnúť nasledujúce riadky ako hlavičky do HTTP požiadavky. Upozorňujeme, že zaraďujeme content type a Authorization 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 posielať HTTP požiadavku podobnú ako je uvedená nižšie. Všimnite si, že táto požiadavka obsahuje časť HTTP hlavičky a časť HTTP tela. Telo HTTP je reťazec dát zakódovaný v JSON. Obsahuje číslo príjemcu a text správy.
POST /api?action=sendmsg HTTP/1.1 Connection: close Content-Length: 319 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": "faac3935-8358-d465-835c-0919186ddf7b", "to_address": "+36201111111","text":"Hello world!", "create_date": "2021-06-14T11:47:05", "vaild_date": "2021-06-21T11:47:05", "time_to_send": "2021-06-14T11:47:05", "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. Tiež vráti š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": 1, "success_count": 1, "failed_count": 0, "messages": [ { "message_id": "faac3935-8358-d465-835c-0919186ddf7b", "from_station": "%", "to_address": "+36201111111", "to_station": "%", "text": "Hello world!", "create_date": "2021-06-14 11:47:05", "valid_until": "2021-06-21 11:47:05", "time_to_send": "2021-06-14 11:47:05", "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 SendSms.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.
Príklad SMS v Node.Js: SendSms.mjs (v Notepade)
Na tomto obrázku nájdete zdrojový kód projektu, otvorený v poznámkovom bloku (Obrázok 3). Ako vidíte, môže byť otvorený v poznámkovom bloku a môže byť v ňom aj upravovaný. Ak ste oboznámení s Node.js, pokojne zmeňte premenné v kóde a odošlite prispôsobenú správu na vašu adresu.
Príklad SMS v Node.Js: SendSms.mjs (v Visual Studio Code)
Ak hľadáte sofistikovanejší spôsob otvorenia 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.
Ako skontrolovať, že SMS bola prijatá HTTP používateľom
Po odoslaní SMS je dobré skontrolovať vašu SMS bránu, aby ste videli, čo prijala. Protokol môžete skontrolovať otvorením detailov HTTP používateľa v konzole na správu Ozeki SMS brány. Nasledujúce video vám ukáže, čo hľadať.
Ako skontrolovať, že SMS bola odoslaná do mobilnej siete
Posledným krokom pri overovaní postupu je pozrieť sa na protokoly mobilného pripojenia. Možno budete musieť zapnúť protokolovanie v konfigurácii pripojenia pred odoslaním správy, aby ste videli protokoly. Ak je protokolovanie zapnuté, uvidíte telefónne číslo a text správy, ktorú ste odoslali.
Na zapnutie protokolovania v http_user musíte postupovať podľa rovnakých inštrukcií.
Záver
Tento sprievodca poskytuje všetky potrebné informácie o tom, ako posielať SMS správy z Node.js pomocou HTTP používateľa Ozeki SMS Gateway. Musíte nastaviť HTTP používateľské pripojenie v Ozeki SMS Gateway a použiť daný program pre vašu Node.js aplikáciu, takto toto riešenie poskytuje veľmi spoľahlivé pripojenie a rýchle odosielanie správ. Používanie tejto služby vám pomôže urobiť prácu plynulejšou, pretože vám umožňuje prispôsobiť pracovné prostredie podľa potrieb vašich zamestnancov a vás.
Na webovej stránke Ozeki nájdete ďalšie články, ktoré vám pomôžu, takže určite pokračujte v čítaní. Ďalej sa naučte Ako posielať viacero SMS z Node.js.
Stiahnite si Ozeki SMS Gateway! Je jednoduché ho nastaviť, urobte to teraz!
More information
- Node js send SMS with the HTTP rest API (code sample)
- Node js send multiple SMS with the HTTP rest API (code sample)
- Node js schedule SMS with the HTTP rest API (code sample)
- Node js receive SMS with the HTTP rest API (code sample)
- Node js delete SMS with the HTTP rest API (code sample)
- Github Node js SMS API
- Node js tutorial Hello world