Jak odeslat SMS z Node.js
Nejjednodušší způsob, jak odeslat SMS z Node.Js, 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 ve formátu json. SMS brána odešle tuto SMS na cílové telefonní číslo a vrátí HTTP 200 OK odpověď na váš požadavek.
JavaScript kód pro odeslání SMS na mobil
Níže uvedený ukázkový kód JavaScriptu pro SMS demonstruje, jak můžete odesílat SMS pomocí HTTP REST SMS API Ozeki SMS Gateway s využitím knihovny JavaScript Ozeki.Libs.Rest. Tato knihovna je poskytována zdarma a můžete ji používat a upravovat v jakémkoli z vašich projektů.
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());
Jak použít ukázku JavaScriptu pro SMS:
Můžete použít třídu Message k vytvoření SMS a třídu MessageApi 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 SendSms.js
Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: SendSms.js.zip (4.35Kb)
Co obsahuje soubor SendSMS.js.zip?
Soubor SendSms.js.zip obsahuje knihovnu Ozeki.Libs.Rest, která vám poskytuje všechny nástroje potřebné k odesílání a přijímání SMS zpráv. Najdete zde také soubor SendSms.mjs v projektu, který obsahuje ukázkový kód, který ukazuje, jak odeslat SMS. Tento ukázkový kód je uveden níže.
Tento projekt má závislosti, takže před spuštěním musíte nainstalovat balíček node-fetch pomocí následujícího příkazu:
npm install node-fetch
Jak odeslat SMS z Node.Js (Rychlé kroky)
Pro odeslání SMS z Node.Js:
- Nainstalujte Ozeki SMS Gateway
- Připojte Ozeki SMS Gateway k mobilní síti
- Odešlete testovací SMS z Ozeki GUI
- Vytvořte HTTP SMS API uživatele
- Visual Studio Code nebo Windows Notepad
- Stáhněte si výše uvedený ukázkový projekt
- Vytvořte SMS vytvořením nového objektu Message
- Vytvořte API pro odeslání vaší zprávy
- Použijte metodu Send k odeslání vaší zprávy
- Přečtěte si odpověď na konzoli
- Zkontrolujte protokoly v SMS bráně
Instalace Ozeki SMS Gateway a vytvoření HTTP API uživatele
Abyste mohli odesílat SMS z Node.Js, musíte nejprve nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj JavaScriptový kód ve Visual Studio Code nebo jakémkoli jiném editoru kódu. 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 ukázka fungovala bez úprav.
Po nastavení prostředí můžete spustit svůj JavaScriptový kód.
HTTP API URL pro odesílání SMS z Node.Js
Pro odesílání SMS z Node.Js musí váš JavaScript vytvořit HTTP požadavek na SMS bránu. API URL je uvedeno níže. Poznámka: 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ěží JavaScriptová SMS aplikace, může to být 127.0.0.1. Pokud je nainstalována na jiném počítači, měla by být použita IP adresa tohoto počítače.
http://127.0.0.1:9509/api?action=rest
HTTP autentizace pro odesílání SMS z JavaScriptu
Pro ověření SMS klienta v Node.Js je třeba 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 JavaScriptu můžete použít následující kód pro toto kódování:
var usernamePassword = username + ":" + password; return `Basic ${Base64.encode(usernamePassword)}`;
Například, pokud zakódujete uživatelské jméno 'http_user' a heslo 'qwe123', dostanete následující base64 kódovaný řetězec: aHR0cF91c2VyOnF3ZTEyMw==. Pro odeslání
HTTP hlavička požadavku pro odeslání SMS z JavaScriptu
Pro odeslání SMS zpráv je nutné 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 Node.Js
Pro odeslání SMS váš Node.Js aplikace odešle HTTP požadavek podobný tomuto níže. Všimněte si, že tento požadavek obsahuje část HTTP hlavičky a část těla HTTP. Tělo HTTP je řetězec dat zakódovaný v JSON. Obsahuje číslo příjemce a text zprá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 odpověď přijatá v JavaScript příkladu pro SMS
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. Také vrátí strukturu zakódovanou v JSON, která vám poskytne užitečné detaily o odeslání zprá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" } ] } }
Jak odeslat SMS z Node.Js pomocí SMS API (Video návod)
Toto video vám ukáže, jak stáhnout a použít projekt SendSms.js. Jakmile přidáte potřebné soubory do svého projektu, můžete si všimnout, že existuje soubor s názvem Ozeki.Lbis.Rest.js. Tento soubor obsahuje MessageApi a vše, co potřebujete k odeslání SMS pomocí JavaScriptu.
Příklad SMS v Node.Js: SendSms.mjs (v Poznámkovém bloku)
Na tomto obrázku najdete zdrojový kód projektu, otevřený v poznámkovém bloku (Obrázek 3). Jak vidíte, lze jej otevřít v poznámkovém bloku a lze v něm také upravovat. Pokud jste obeznámeni s Node.js, klidně změňte proměnné v kódu a odešlete přizpůsobenou zprávu na vaši adresu.
Příklad SMS v Node.Js: SendSms.mjs (v Visual Studio Code)
Pokud hledáte sofistikovanější způsob otevření zdrojového kódu, zkuste použít Visual Studio Code (Obrázek 4). Nabízí vám barevné kódování, více nápovědy a automatické doplňování. Je to lehké IDE (Integrované vývojové prostředí), které je open-source a zdarma k použití.
Jak zkontrolovat, že SMS byla přijata HTTP uživatelem
Po odeslání SMS je dobré zkontrolovat vaši SMS bránu, abyste viděli, co přijala. Protokol můžete zkontrolovat otevřením detailů HTTP uživatele z konzole pro správu Ozeki SMS brány. Následující video vám ukáže, na co se zaměřit.
Jak zkontrolovat, že SMS byla odeslána do mobilní sítě
Posledním krokem při ověřování postupu je podívat se na protokoly připojení k mobilní síti. Možná budete muset zapnout protokolování v konfiguraci připojení před odesláním zprávy, abyste viděli protokoly. Pokud je protokolování povoleno, uvidíte telefonní číslo a text odeslané zprávy.
Pro zapnutí protokolování v http_user musíte postupovat podle stejných instrukcí.
ZávěrTento průvodce poskytuje všechny potřebné informace o tom, jak odesílat SMS zprávy z Node.js pomocí HTTP uživatele Ozeki SMS Gateway. Musíte nastavit připojení HTTP uživatele v Ozeki SMS Gateway a použít uvedený program pro vaši Node.js aplikaci, takto toto řešení poskytuje velmi spolehlivé připojení a rychlé zasílání zpráv. Použití této služby vám pomůže zefektivnit práci, protože vám umožní přizpůsobit pracovní prostředí podle potřeb vašich zaměstnanců a vás samotných.
Na webových stránkách Ozeki najdete další články, které vám pomohou, proto nezapomeňte pokračovat ve čtení. Dále se naučte Jak odesílat více SMS z Node.js.
Stáhněte si Ozeki SMS Gateway! Jeho nastavení je jednoduché, udělejte to nyní!
More information
- Node js odeslat SMS pomocí HTTP REST API (ukázka kódu)
- Node js odeslat více SMS pomocí HTTP REST API (ukázka kódu)
- Node js naplánovat SMS pomocí HTTP REST API (ukázka kódu)
- Node js přijmout SMS pomocí HTTP REST API (ukázka kódu)
- Node js smazat SMS pomocí HTTP REST API (ukázka kódu)
- Github Node js SMS API
- Node js tutoriál Hello world