Kako prejeti SMS v Node.js

Najenostavnejši način za pošiljanje SMS-ov iz Node.Js je uporaba vgrajenega HTTP/Rest SMS API-ja Ozeki SMS Gateway. Ko uporabljate ta API, boste pošiljali SMS sporočila z izdajo HTTP Post zahteve proti SMS prehodu. HTTP Post zahteva bo vsebovala sporočilo v json formatu. SMS prehod bo poslal ta SMS prejemniku in vrnil HTTP 200 OK odgovor na vašo zahtevo.

kako prejeti sms sporočila z uporabo node js
Slika 1 - Kako prejeti SMS iz Node.Js

JavaScript koda za prejemanje SMS sporočil

Spodnji JavaScript sms primer kode prikazuje, kako lahko prejemate SMS z uporabo http rest sms api Ozeki SMS Gateway z uporabo knjižnice JavaScript Ozeki.Libs.Rest. Ta knjižnica vam je na voljo brezplačno in jo lahko uporabljate in spreminjate v katerem koli od vaših projektov.

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());
}
	

Kako uporabiti JavaScript sms primer:

Uporabite lahko razred Message za ustvarjanje SMS in razred MessageApi lahko uporabite za pošiljanje SMS-a proti SMS prehodu. SMS prehod bo vaše sporočilo posredoval mobilnemu omrežju prek brezžične povezave ali prek interneta.

Prenesite ReceiveSms.js

Izvorna koda, razložena v tem članku, je na voljo za brezplačen prenos, uporabo in spreminjanje.
Prenos: ReceiveSms.js.zip (4.38Kb)

Kaj je v datoteki ReceiveSms.js.zip?

Datoteka ReceiveSms.js.zip vsebuje knjižnico Ozeki.Libs.Rest, ki vam ponuja vsa orodja, potrebna za pošiljanje, označevanje, brisanje in prejemanje SMS sporočil. V projektu boste našli tudi datoteko ReceiveSms.mjs, ki vsebuje primer kode, ki prikazuje kako prejemati SMS sporočila. Ta primer kode je naveden spodaj.

primer projekta za prejemanje sms z uporabo node js
Slika 2 - ReceiveSms.js mapa

Ta projekt ima odvisnosti, zato morate pred začetkom namestiti paket node-fetch z naslednjim ukazom:

npm install node-fetch
	

Koda 1 - Ukaz za namestitev paketa node-fetch

. Kako prejeti SMS sporočila iz Node.Js (Hitri koraki)

Za prejemanje SMS sporočil iz Node.Js:

  1. Namestite Ozeki SMS Gateway
  2. Povežite Ozeki SMS Gateway z mobilnim omrežjem
  3. Pošljite testni sms iz Ozeki GUI
  4. Ustvarite uporabnika HTTP sms api
  5. Apache NetBeans
  6. Prenesite zgornji primer projekta
  7. Ustvarite SMS z ustvarjanjem novega objekta Message
  8. Ustvarite api za pošiljanje vašega sporočila
  9. Uporabite metodo DownloadIncoming() za prejem vašega(-ih) sporočila(-a)
  10. Preberite odzivno sporočilo na konzoli in izpišite sporočila na konzolo
  11. Preverite dnevnike v SMS prehodu
Namestite Ozeki SMS Gateway in ustvarite uporabnika HTTP API

Da lahko pošiljate SMS iz Node.Js, morate najprej namestiti Ozeki SMS Gateway. SMS prehod je mogoče namestiti na istem računalniku, kjer razvijate svojo JavaScript kodo v Visual Studio Code ali katerem koli drugem urejevalniku kode. Po namestitvi je naslednji korak povezovanje Ozeki SMS Gateway z mobilnim omrežjem. Lahko pošljete testni sms iz Ozeki GUI, da preverite, ali vaša mobilna omrežna povezava deluje. Končni korak za pripravo vašega okolja je ustvarjanje uporabnika HTTP sms api. Ustvarite uporabnika z uporabniškim imenom "http_user" in geslom "qwe123", da primer deluje brez sprememb.

Ko je okolje pripravljeno, lahko zaženete svojo JavaScript kodo.

HTTP API url za prejemanje sms iz Node.Js

Za prejem SMS-a iz Node.Js bo vaša JavaScript morala izdati HTTP zahtevo proti SMS prehodu. API url je prikazan spodaj. Upoštevajte, da je treba IP naslov (127.0.0.1) zamenjati z IP naslovom vašega SMS prehoda. Če je Ozeki SMS Gateway nameščen na istem računalniku, kjer teče JavaScript sms aplikacija, je to lahko 127.0.0.1. Če je nameščen na drugem računalniku, naj bo to IP naslov tega računalnika.

http://127.0.0.1:9509/api?action=rest
	
HTTP avtentikacija za pošiljanje sms iz JavaScript

Za avtentikacijo Node.Js sms odjemalca morate poslati uporabniško ime in geslo v base64 kodiranem nizu na strežnik v HTTP zahtevi. Uporabljen format je: base64(uporabniško_ime+":"+geslo). V JavaScript lahko uporabite naslednjo kodo za to kodiranje:

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

Na primer, če kodirate uporabniško ime 'http_user' in geslo 'qwe123', boste dobili naslednji base64 kodiran niz: aHR0cF91c2VyOnF3ZTEyMw==. Za pošiljanje

HTTP zahteva glava za pošiljanje SMS-ov iz JavaScripta

Za pošiljanje SMS sporočil morate vključiti naslednje vrstice kot glave v HTTP zahtevo. Upoštevajte, da vključujemo vrsto vsebine in glavo za avtorizacijo.

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

HTTP zahteva za pošiljanje SMS-ov iz Node.Js

Za oddajo SMS-a bo vaša Node.Js aplikacija poslala HTTP zahtevo, podobno spodnji. Upoštevajte, da ta zahteva vsebuje del HTTP glave in del HTTP telesa. HTTP telo je niz podatkov, kodiran v JSON. Vsebuje prejemnikovo številko in besedilo sporočila.

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 odziv, prejet v JavaScript primeru SMS-a

Ko SMS prehod prejme to zahtevo, bo ustvaril HTTP odziv. HTTP odziv bo vseboval statusno kodo, ki označuje, ali je bila zahteva za oddajo SMS-a uspešna ali ne. Prav tako bo vrnil strukturo, kodirano v JSON, ki vam bo zagotovila koristne podrobnosti o oddaji sporočila.

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"
	        }
	      ]
	    }
	  ]
	}
}
	

Kako prejemati SMS-e iz Node.Js z uporabo SMS API-ja (Video vadnica)

Ta video vam pokaže, kako prenesti in uporabiti projekt ReceiveSms.js. Ko dodate potrebne datoteke v vaš projekt, boste morda opazili, da obstaja datoteka z imenom Ozeki.Lbis.Rest.js. To je datoteka, ki vsebuje MessageApi in vse, kar potrebujete za pošiljanje SMS-a z uporabo JavaScripta.

Video 1 - Kako prenesti Ozeki.Libs.Rest in nastaviti vaš projekt (Video vadnica)

Primer SMS-a v Node.Js: ReceiveSms.mjs (v Notepad-u)

Na naslednji sliki lahko vidite izvorno kodo ReceiveSMS.mjs odprto (Slika 3). V tem primeru smo uporabili Notepad za odpiranje izvorne kode, ki jo lahko uporabite tudi za urejanje. Kot lahko vidite, koda vsebuje vnaprej nastavljene spremenljivke za uporabniško ime in geslo. Če ste seznanjeni z programskim jezikom Node.js, lahko spremenite vrednosti spremenljivk, da ustrezajo vašim prijavnim podatkom HTTP uporabnika.

javascript primer za prejemanje sms sporočil
Slika 3 - ReceiveSms.mjs v Notepad-u

Primer SMS-a v Node.Js: ReceiveSms.mjs (v Visual Studio Code)

Če želite uporabiti IDE z vgrajeno barvno označbo, koristno dokumentacijo in razširitvami, uporabite Visual Studio Code. To je lahko in brezplačno programsko okolje, ki ga lahko uporabite za urejanje kode v številnih različnih jezikih. Kot lahko vidite, smo primer uporabniškega imena in gesla kodirali v izvorno kodo. Če ste seznanjeni z programskim jezikom Node.js, jih lahko spremenite, da ustrezajo vašemu HTTP uporabniku.

javascript primer za prejemanje sms sporočil
Slika 4 - ReceiveSms.mjs v Visual Studio Code

Kako preveriti, ali je SMS sprejel HTTP uporabnik

Po oddaji zahteve je priporočljivo preveriti vaš SMS prehod, da vidite, kaj je prejel. Dnevnik lahko preverite tako, da odprete podrobnosti HTTP uporabnika v upravljalski konzoli Ozeki SMS Gateway. Naslednji video vam pokaže, kaj morate iskati.

Video 2 - Kako sprejeti SMS sporočila z JavaScript kodo zgoraj (Video vadnica)

Povzetek

Vodnik je razložil, kako nastaviti to SMS API za sprejemanje SMS-ov z Node.js programom z uporabo HTTP uporabnika Ozeki SMS Gateway. Ta rešitev vam pomaga organizirati vaša dohodna sporočila tako, da jih premaknete iz mape »Prejeto« v vašo Node.js aplikacijo. Uporaba tega programa vam omogoča, da ohranite vaš sistem za sporočanje organiziran in pomembne informacije usmerite k sebi.

Stavim, da želite izvedeti več o učinkovitem upravljanju sporočil, kar potrebujete, boste našli na spletni strani Ozeki. Veliko pomaga, če sporočila razvrstite in obdržite le tisto, kar potrebujete, zato preberite naslednji članek o Kako izbrisati SMS v Node.js.

Nastavite Ozeki SMS Gateway zdaj in uporabite, kar ste se naučili!

More information