Jak přijímat SMS v Node.js

Nejjednodušší způsob, jak odesílat 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 formátovanou ve formátu json. SMS brána odešle tuto SMS příjemci a vrátí HTTP 200 OK odpověď na váš požadavek.

jak přijímat sms zprávy pomocí node js
Obrázek 1 - Jak přijímat SMS z Node.Js

JavaScript kód pro přijímání SMS zpráv

Níže uvedený JavaScript sms kód ukazuje, jak můžete přijímat 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ů.

ReceiveSms.mjs
import { Configuration, 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);

const result = await api.DownloadIncoming();

console.log(result.toString());

for (let i = 0; i < result.MessageCount; i++) {
    console.log(result.Messages[i].toString());
}
	

Jak použít JavaScript sms příklad:

Můžete použít třídu Message k vytvoření SMS a můžete použít 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ď přes bezdrátové připojení nebo přes internet.

Stáhnout ReceiveSms.js

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

Co je v souboru ReceiveSms.js.zip?

Soubor ReceiveSms.js.zip obsahuje knihovnu Ozeki.Libs.Rest, která vám poskytuje všechny nástroje potřebné k odesílání, označování, mazání a přijímání SMS zpráv. Najdete zde také soubor ReceiveSms.mjs v projektu, který obsahuje ukázkový kód, který ukazuje, jak přijímat SMS zprávy. Tento ukázkový kód je uveden níže.

ukázkový projekt pro přijímání sms pomocí node js
Obrázek 2 - Adresář ReceiveSms.js

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
	

Kód 1 - Příkaz k instalaci balíčku node-fetch

.

Jak přijímat SMS zprávy z Node.Js (Rychlé kroky)

Pro přijímání SMS zpráv z Node.Js:

  1. Nainstalujte Ozeki SMS Gateway
  2. Připojte Ozeki SMS Gateway k mobilní síti
  3. Odešlete testovací sms z Ozeki GUI
  4. Vytvořte HTTP sms api uživatele
  5. Apache NetBeans
  6. Stáhněte si výše uvedený ukázkový projekt
  7. Vytvořte SMS vytvořením nového objektu Message
  8. Vytvořte api pro odeslání vaší zprávy
  9. Použijte metodu DownloadIncoming() k přijetí vaší(zpráv)
  10. Přečtěte si odpověď na konzoli a vytiskněte zprávy na konzoli
  11. 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 JavaScript kód v 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 příklad fungoval bez úprav.

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

HTTP API url pro přijímání SMS z Node.Js

Pro přijetí SMS z Node.Js bude váš JavaScript muset odeslat 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ěží JavaScript 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í Node.Js 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 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 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 Node.Js

Pro odeslání SMS váš Node.Js aplikace odešle 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 číslo příjemce a text zprávy.

GET /api?action=receivemsg&folder=inbox HTTP/1.1
Connection: close
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)
	

HTTP odpověď přijatá v JavaScript příkladu 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": "",
	"data": {
	  "folder": "inbox",
	  "limit": "1000",
	  "data": [
	    {
	      "message_id": "02ccc4d5-4aeb-7f64-b980-9aa262ef86fb",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36201111111",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "to_station": "%",
	      "text": "Hello world 1",
	      "create_date": "2021-06-14 12:00:14",
	      "valid_until": "2021-06-21 12:00:14",
	      "time_to_send": "2021-06-14 12:00:14",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    },
	    {
	      "message_id": "bb663f6c-fcf2-df32-bd33-1778e8578f23",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36202222222",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "to_station": "%",
	      "text": "Hello world 2",
	      "create_date": "2021-06-14 12:00:14",
	      "valid_until": "2021-06-21 12:00:14",
	      "time_to_send": "2021-06-14 12:00:14",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    },
	    {
	      "message_id": "ca555a52-2f5a-285a-b6e2-6aa1fa3353f8",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36203333333",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "to_station": "%",
	      "text": "Hello world 3",
	      "create_date": "2021-06-14 12:00:14",
	      "valid_until": "2021-06-21 12:00:14",
	      "time_to_send": "2021-06-14 12:00:14",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    }
	  ]
	}
}
	

Jak přijímat SMS z Node.Js pomocí SMS API (Video návod)

Toto video vám ukáže, jak stáhnout a použít projekt ReceiveSms.js. Jakmile přidáte potřebné soubory do svého projektu, můžete si všimnout, že tam je soubor Ozeki.Lbis.Rest.js. Tento soubor obsahuje MessageApi a vše, co potřebujete k odeslání SMS pomocí JavaScriptu.

Video 1 - Jak stáhnout Ozeki.Libs.Rest a nastavit váš projekt (Video návod)

Příklad SMS v Node.Js: ReceiveSms.mjs (v Notepadu)

Na následujícím obrázku můžete vidět zdrojový kód ReceiveSMS.mjs otevřený (Obrázek 3). V tomto případě jsme použili Notepad k otevření zdrojového kódu, který lze také použít k jeho úpravám. Jak vidíte, kód obsahuje přednastavené proměnné uživatelského jména a hesla. Pokud jste obeznámeni s programovacím jazykem Node.js, klidně změňte hodnoty proměnných tak, aby odpovídaly vašim přihlašovacím údajům HTTP uživatele.

javascript příklad pro přijímání SMS zpráv
Obrázek 3 - ReceiveSms.mjs v Notepadu

Příklad SMS v Node.Js: ReceiveSms.mjs (v Visual Studio Code)

Pokud chcete používat IDE s vestavěným barevným kódováním, užitečnou dokumentací a rozšířeními, použijte Visual Studio Code. Je to lehké a zdarma dostupné programovací prostředí, které můžete použít k úpravám kódu v mnoha různých jazycích. Jak vidíte, příklad uživatelského jména a hesla jsme zakódovali přímo do zdrojového kódu. Pokud jste obeznámeni s programovacím jazykem Node.js, klidně je upravte tak, aby odpovídaly vašemu HTTP uživateli.

javascript příklad pro přijímání SMS zpráv
Obrázek 4 - ReceiveSms.mjs v Visual Studio Code

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

Po odeslání požadavku 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 z konzole pro správu Ozeki SMS Gateway. Následující video vám ukáže, na co se zaměřit.

Video 2 - Jak přijímat SMS zprávy pomocí výše uvedeného JavaScriptového kódu (Návod ve videu)

Shrnutí

Tento průvodce vysvětlil, jak nastavit toto SMS API pro přijímání SMS pomocí programu Node.js využívajícího HTTP uživatele Ozeki SMS Gateway. Toto řešení vám pomůže organizovat příchozí zprávy přesunutím ze složky Doručené do vaší Node.js aplikace. Použití tohoto programu vám umožní udržovat váš systém zasílání zpráv organizovaný a nechat důležité informace proudit k vám.

Vsadím se, že se chcete dozvědět více o efektivní správě zpráv, vše, co potřebujete, najdete na webové stránce Ozeki. Hodně pomůže, pokud zprávy roztřídíte a ponecháte si jen to, co potřebujete, takže si přečtěte další článek o Jak smazat SMS v Node.js.

Nastavte si Ozeki SMS Gateway nyní a využijte to, co jste se naučili!

More information