Cum să primești un SMS în Node.js

Cea mai simplă metodă de a trimite SMS din Node.Js este să folosești API-ul HTTP/Rest SMS încorporat al Ozeki SMS Gateway. Când folosești acest API, vei trimite mesaje SMS prin emiterea unei cereri HTTP Post către gateway-ul SMS. Cererea HTTP Post va conține un mesaj formatat în format json. Gateway-ul SMS va trimite acest SMS către telefonul destinatar și va returna un răspuns HTTP 200 OK la cererea ta.

cum să primești mesaje SMS folosind node js
Figura 1 - Cum să primești SMS din Node.Js

Cod JavaScript pentru a primi mesaje SMS

Exemplul de cod JavaScript pentru SMS de mai jos demonstrează cum poți primi SMS folosind API-ul http rest sms al Ozeki SMS Gateway cu ajutorul bibliotecii JavaScript Ozeki.Libs.Rest. Această bibliotecă este oferită gratuit și o poți folosi și modifica în oricare dintre proiectele tale.

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

Cum să folosești exemplul JavaScript pentru SMS:

Poți folosi clasa Message pentru a crea SMS-ul și poți folosi clasa MessageApi pentru a trimite SMS-ul către gateway-ul SMS. Gateway-ul SMS va transmite mesajul tău către rețeaua mobilă fie printr-o conexiune wireless fie prin Internet.

Descarcă ReceiveSms.js

Codul sursă explicat în acest articol poate fi descărcat, folosit și modificat gratuit.
Descarcă: ReceiveSms.js.zip (4.38Kb)

Ce conține fișierul ReceiveSms.js.zip?

Fișierul ReceiveSms.js.zip conține biblioteca Ozeki.Libs.Rest, care îți oferă toate instrumentele necesare pentru a trimite, marca, șterge și primi mesaje SMS. Vei găsi de asemenea un fișier ReceiveSms.mjs în proiect, care conține codul exemplu pentru a-ți arăta cum să primești mesaje SMS. Acest cod exemplu este listat mai jos.

exemplu de proiect pentru a primi sms folosind node js
Figura 2 - Directorul ReceiveSms.js

Acest proiect are dependențe, așa că înainte de a începe trebuie să instalezi pachetul node-fetch cu următoarea comandă:

npm install node-fetch
	

Codul 1 - Comanda pentru a instala pachetul node-fetch

. Cum să primești mesaje SMS din Node.Js (Pași rapizi)

Pentru a primi mesaje SMS din Node.Js:

  1. Instalează Ozeki SMS Gateway
  2. Conectează Ozeki SMS Gateway la rețeaua mobilă
  3. Trimite un SMS de test din interfața Ozeki
  4. Creează un utilizator HTTP sms api
  5. Apache NetBeans
  6. Descarcă proiectul exemplu de mai sus
  7. Creează SMS-ul prin crearea unui nou obiect Message
  8. Creează un api pentru a trimite mesajul tău
  9. Folosește metoda DownloadIncoming() pentru a primi mesajul/mesajele tale
  10. Citește mesajul de răspuns în consolă și afișează mesajele în consolă
  11. Verifică jurnalele în gateway-ul SMS
Instalează Ozeki SMS Gateway și creează un utilizator HTTP API

Pentru a putea trimite SMS din Node.Js, mai întâi trebuie să instalezi Ozeki SMS Gateway. Gateway-ul SMS poate fi instalat pe același calculator unde îți dezvolți codul JavaScript în Visual Studio Code sau orice alt editor de cod. După instalare, următorul pas este să conectezi Ozeki SMS Gateway la rețeaua mobilă. Poți trimite un SMS de test din interfața Ozeki pentru a verifica dacă conexiunea ta la rețeaua mobilă funcționează. Ultimul pas pentru a-ți pregăti mediul este să creezi un utilizator HTTP sms api. Creează un utilizator cu numele de utilizator "http_user" și parola "qwe123" pentru a face exemplul să funcționeze fără modificări.

După ce mediul este configurat, poți rula codul tău JavaScript.

URL API HTTP pentru a primi SMS din Node.Js

Pentru a primi un SMS din Node.Js, JavaScript-ul tău va trebui să emită o cerere HTTP către gateway-ul SMS. URL-ul API este afișat mai jos. Reține că adresa IP (127.0.0.1) ar trebui să fie înlocuită cu adresa IP a gateway-ului tău SMS. Dacă Ozeki SMS Gateway este instalat pe același calculator unde rulează aplicația JavaScript pentru SMS, aceasta poate fi 127.0.0.1. Dacă este instalat pe un alt calculator, ar trebui să fie adresa IP a acelui calculator.

http://127.0.0.1:9509/api?action=rest
	
Autentificare HTTP pentru a trimite SMS din JavaScript

Pentru a autentifica clientul SMS Node.Js, trebuie să trimiți numele de utilizator și parola într-un șir codificat base64 către server într-o cerere HTTP. Formatul folosit este: base64(nume_utilizator+":"+parolă). În JavaScript poți folosi următorul cod pentru a face această codificare:

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

De exemplu, dacă codezi numele de utilizator 'http_user' și parola 'qwe123', vei obține următorul șir codificat base64: aHR0cF91c2VyOnF3ZTEyMw==. Pentru a trimite

Antetul cererii HTTP pentru a trimite SMS din JavaScript

Pentru a trimite mesajele SMS, trebuie să includeți următoarele linii ca antete în cererea HTTP. Rețineți că includem un tip de conținut și un antet de Autorizare.

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

Cererea HTTP pentru a trimite SMS din Node.Js

Pentru a trimite SMS-ul, aplicația dvs. Node.Js va trimite o cerere HTTP similară cu cea de mai jos. Rețineți că această cerere conține o parte de antet HTTP și o parte de corp HTTP. Corpul HTTP este un șir de date codificat JSON. Acesta conține numărul destinatarului și textul mesajului.

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)
	

Răspunsul HTTP primit de exemplul JavaScript pentru SMS

Odată ce gateway-ul SMS primește această cerere, va genera un răspuns HTTP. Răspunsul HTTP va conține un cod de stare, pentru a indica dacă cererea de trimitere a SMS-ului a fost reușită sau nu. De asemenea, va returna o structură codificată JSON pentru a vă oferi detalii utile despre trimiterea mesajului.

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

Cum să primești SMS din Node.Js folosind API-ul SMS (Tutorial video)

Acest videoclip vă arată cum să descărcați și să utilizați proiectul ReceiveSms.js. Odată ce ați adăugat fișierele necesare în proiectul dvs., s-ar putea să observați că există un fișier numit Ozeki.Lbis.Rest.js. Acesta este fișierul care conține MessageApi și toate elementele necesare pentru a trimite un SMS folosind JavaScript.

Video 1 - Cum să descarci Ozeki.Libs.Rest și să îți configurezi proiectul (Tutorial video)

Exemplu Node.Js pentru SMS: ReceiveSms.mjs (în Notepad)

În imaginea următoare, puteți vedea codul sursă ReceiveSMS.mjs deschis (Figura 3). În acest caz, am folosit Notepad pentru a deschide codul sursă, care poate fi folosit și pentru a-l edita. După cum puteți vedea, codul conține variabile predefinite pentru nume de utilizator și parolă. Dacă sunteți familiarizat cu limbajul de programare Node.js, nu ezitați să modificați valorile variabilelor pentru a se potrivi cu datele de autentificare ale utilizatorului HTTP.

exemplu javascript pentru a primi mesaje sms
Figura 3 - ReceiveSms.mjs în Notepad

Exemplu Node.Js pentru SMS: ReceiveSms.mjs (în Visual Studio Code)

Dacă doriți să utilizați un IDE cu colorare încorporată, documentație utilă și extensii, folosiți Visual Studio Code. Acesta este un mediu de programare ușor și gratuit pe care îl puteți folosi pentru a edita cod în mai multe limbaje diferite. După cum puteți vedea, am codat exemplul de nume de utilizator și parolă în codul sursă. Dacă sunteți familiarizat cu limbajul de programare Node.js, nu ezitați să le editați pentru a se potrivi cu utilizatorul HTTP.

exemplu javascript pentru a primi mesaje sms
Figura 4 - ReceiveSms.mjs în Visual Studio Code

Cum să verifici dacă SMS-ul a fost acceptat de utilizatorul HTTP

După ce cererea a fost trimisă, este bine să verifici gateway-ul tău SMS, pentru a vedea ce a primit. Poți verifica jurnalul deschizând detaliile utilizatorului HTTP din consola de management Ozeki SMS Gateway. Următorul videoclip îți arată ce să cauți.

Video 2 - Cum să primești mesaje SMS cu codul JavaScript de mai sus (Tutorial video)

Rezumat

Acest ghid a explicat cum să configurezi acest API SMS pentru a primi SMS cu programul Node.js folosind utilizatorul HTTP al Ozeki SMS Gateway. Această soluție te ajută să-ți organizezi mesajele primite mutându-le din dosarul Inbox în aplicația ta Node.js. Aplicând acest program, vei putea să-ți menții sistemul de mesagerie organizat și să lași informațiile importante să ajungă la tine.

Sunt sigur că vrei să înveți mai multe despre gestionarea eficientă a mesajelor, vei găsi ce ai nevoie pe pagina Ozeki. Ajută foarte mult dacă sortezi mesajele și păstrezi doar ceea ce ai nevoie, așa că citește următorul articol despre Cum să ștergi un SMS în Node.js.

Configurează acum Ozeki SMS Gateway și folosește ceea ce ai învățat!

More information