Cum să programezi un SMS în Visual Basic

Cea mai simplă metodă de a trimite SMS din Visual Basic este utilizarea API-ului HTTP/Rest SMS integrat al Ozeki SMS Gateway. Când folosești acest API, vei trimite mesaje SMS prin efectuarea 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 numărul de telefon al destinatarului și va returna un răspuns HTTP 200 OK la cererea ta.

programează sms pentru livrare viitoare în visual basic
Figura 1 - Programează SMS pentru livrare viitoare în Visual Basic

Cod Visual Basic pentru a trimite SMS programat pe mobil

Exemplul de cod Visual Basic pentru SMS de mai jos demonstrează cum poți trimite SMS folosind API-ul http rest sms al Ozeki SMS Gateway utilizând biblioteca Visual Basic Ozeki.Libs.Rest. Această bibliotecă este oferită gratuit și o poți folosi și modifica în oricare dintre proiectele tale.

Program.vb
Imports Ozeki.Libs.Rest

Module Program
    Sub Main(args As String())

        Dim configuration As New Configuration
        configuration.Username = "http_user"
        configuration.Password = "qwe123"
        configuration.ApiUrl = "http://127.0.0.1:9509/api"

        Dim msg As New Message
        msg.ToAddress = "+36201111111"
        msg.Text = "Bună, lume!"
        msg.TimeToSend = DateTime.Parse("2021-06-11 14:46:00")

        Dim api = New MessageApi(configuration)

        Dim result = api.Send(msg)

        Console.WriteLine(result)
        Console.ReadKey()

    End Sub
End Module
	

Cum să folosești exemplul de SMS în Visual Basic:

Acest exemplu de SMS în Visual Basic poate fi folosit în orice aplicație .NET sau .NET core. Pentru a-l folosi, trebuie să adaugi DLL-ul Ozeki.Libs.Rest ca referință în proiectul tău. După ce referința este adăugată, trebuie să incluzi directiva using Ozeki.Libs.Rest; în secțiunea de antet a codului sursă Visual Basic. Acest lucru îți va permite să folosești clasele furnizate de biblioteca Ozeki.Libs.Rest. Poți folosi clasa Message pentru a crea SMS-ul. 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 prin conexiune wireless fie prin Internet.

Descarcă SendScheduledSms.vb

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

Ce conține fișierul SendScheduledSms.vs?

Fișierul SendScheduledSms.cs conține biblioteca Ozeki.Libs.Rest, care îți oferă toate instrumentele necesare pentru a trimite și primi mesaje SMS. Vei găsi de asemenea proiectul SendScheduleSms în arhivă, care conține codul exemplu pentru a-ți arăta cum să trimiți un SMS. Acest cod exemplu este listat mai jos.

Figura 2 - Ce conține SendScheduledSms.vb.zip

Cum să trimiți SMS din Visual Basic (Pași rapizi)

Pentru a trimite SMS din Visual Basic:

  1. Instalează Ozeki SMS Gateway
  2. Conectează Ozeki SMS Gateway la rețeaua mobilă
  3. Trimite un SMS test din interfața Ozeki
  4. Creează un utilizator API HTTP pentru SMS
  5. Pornește Visual Studio
  6. Creează un soluție numită SendScheduledSms.sln
  7. Adaugă un proiect consolă Visual Basic: SendScheduledSms.vbproj
  8. Introdu codul în Program.vb sau SendScheduledSms.vb
  9. Creează o funcție Visual Basic numită Send_SMS
  10. Creează datele JSON pentru SMS
  11. Creează o cerere HTTP pentru a trimite SMS-ul
  12. Citește răspunsul HTTP
  13. Scrie răspunsul pe consolă
  14. Verifică jurnalele din gateway-ul SMS
Instalează Ozeki SMS Gateway și creează un utilizator API HTTP

Pentru a putea trimite SMS din Visual Basic, mai întâi trebuie să instalezi Ozeki SMS Gateway. Gateway-ul SMS poate fi instalat pe același computer pe care îți dezvolți codul Visual Basic în Visual Studio. După instalare, următorul pas este să conectezi Ozeki SMS Gateway la rețeaua mobilă. Poți trimite un SMS 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 API HTTP pentru SMS. 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 Visual Basic.

URL API HTTP pentru a trimite SMS din Visual Basic

Pentru a trimite SMS din Visual Basic, aplicația ta Visual Basic va trebui să efectueze 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 computer pe care rulează aplicația ta Visual Basic pentru SMS, aceasta poate fi 127.0.0.1. Dacă este instalat pe un computer diferit, ar trebui să fie adresa IP a acelui computer.

http://127.0.0.1:9509/api?action=rest

Autentificare HTTP pentru a trimite SMS din Visual Basic

Pentru a autentifica clientul SMS în Visual Basic, trebuie să trimiteți numele de utilizator și parola într-un șir codat base64 către server într-o cerere HTTP. Formatul utilizat este: base64(nume_utilizator+":"+parolă). În C# puteți utiliza următorul cod pentru a face această codare:

var encoding = Encoding.GetEncoding("iso-8859-1");
var usernamePassword = username + ":" + password;
var usernamePasswordEncoded = Convert.ToBase64String(encoding.GetBytes(usernamePassword));
	

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

Antet cerere HTTP pentru a trimite SMS din F#

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==
	
Cerere HTTP pentru a trimite SMS programat din Visual Basic

Pentru a trimite SMS-ul, aplicația dvs. Visual Basic 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 codat JSON. Acesta conține numărul destinatarului și textul mesajului.

POST /api?action=sendmsg HTTP/1.1
Connection: Keep-Alive
Content-Length: 336
Content-Type: application/json
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509

{
  "messages": [
    {
      "message_id": "9f79a6bd-5264-4ebe-a04c-4f1353c54657",
      "to_address": "+36201111111",
      "text": "Bună, lume!",
      "create_date": "2021-06-11 14:34:41",
      "valid_until": "2021-06-18 14:34:41",
      "time_to_send": "2021-06-11 14:46:00",
      "submit_report_requested": true,
      "delivery_report_requested": true,
      "view_report_requested": true,
      "tags": []
    }
  ]
}
	
Răspuns HTTP primit de exemplul de SMS în Visual Basic

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ă codată JSON pentru a vă oferi detalii utile despre trimiterea mesajului.

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.118 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Fri, 11 Jun 2021 08:44:45 GMT
Server: 10/10.3.118
Transfer-Encoding: chunked

{
  "http_code": 200,
  "response_code": "SUCCESS",
  "response_msg": "Mesaje în așteptare pentru livrare.",
  "data": {
    "total_count": 1,
    "success_count": 1,
    "failed_count": 0,
    "messages": [
      {
        "message_id": "ca824cbe-784c-44f9-b657-1c04f711f529",
        "from_station": "%",
        "to_address": "+36201111111",
        "to_station": "%",
        "text": "Bună, lume!",
        "create_date": "2021-06-11 14:34:41",
        "valid_until": "2021-06-18 14:34:41",
        "time_to_send": "2021-06-11 14:46:00",
        "submit_report_requested": true,
        "delivery_report_requested": true,
        "view_report_requested": false,
        "tags": [
          {
            "name": "Tip",
            "value": "SMS:TEXT"
          }
        ],
        "status": "SUCCESS"
      }
    ]
  }
}
	
Exemplu de SMS în Visual Basic: SendScheduledSms.sln
Cum să descărcați proiectul exemplu (Tutorial video)

În acest videoclip, veți învăța cum să descărcați și să rulați proiectul exemplu SendScheduledSms.sln. Videoclipul va începe cu pagina de descărcare și se va încheia cu editorul de cod deschis. Veți învăța cum să descărcați și cum să deschideți codul exemplu în Visual Basic. Acest videoclip foarte detaliat durează doar 1 minut și este ușor de înțeles. Nu vă faceți griji, nu veți avea probleme în a-l urmări.

Video 1 - Cum să descărcați și să rulați proiectul exemplu de mai sus (Tutorial video)

Codul exemplu de mai jos face parte din Soluția Visual Studio SendScheduledSms.sln. O soluție Visual Studio poate conține mai multe proiecte și mai multe fișiere. În această soluție există un singur proiect: SendScheduledSms.vbproj și un singur fișier: Program.vb.

cum să trimiteți sms programat cu visual basic
Figura 3 - SendScheduledSms.sln

Cum să utilizați proiectul exemplu

În următorul videoclip, veți învăța cum să rulați codul exemplu și cum să verificați jurnalul procesului. Acesta va începe cu lansarea Ozeki SMS Gateway și vă va duce până la lista de mesaje amânate. Veți învăța cum să verificați jurnalul și cum să lansați proiectul pentru a trimite mesajele programate. Videoclipul durează doar 1:22 minut, așa că nu veți avea probleme în a-l înțelege. Folosim software-ul Ozeki SMS Gateway pentru înregistrare și trimitere de SMS. Este un software gateway puternic, dar ușor de învățat.

Video 2 - Cum să utilizați soluția SendScheduledSms.vb (Tutorial video)

Rularea exemplului de SMS în Visual Basic pe Windows

Când utilizați Windows pentru a rula acest exemplu de SMS scris în Visual Basic, veți observa că obțineți o performanță ușor mai bună decât atunci când îl rulați pe Linux. Pentru a înțelege de ce se întâmplă acest lucru, trebuie să țineți cont de faptul că Visual Basic utilizează cadrul .NET pentru execuția codului. Acest lucru se datorează faptului că implementarea .NET pe Windows este optimizată pentru performanță, în timp ce mono, implementarea .NET pe Linux, mai are de recuperat în acest domeniu.

Concluzie

Scopul acestui articol a fost să prezinte pașii de programare a SMS-urilor în VB cu ajutorul Ozeki SMS Gateway. Instrumentele și explicațiile sunt furnizate de Ozeki. Dacă ai citit totul cu atenție și ai urmat toți pașii, ar trebui să fii capabil să programezi mesajele în Visual Basic.

Ozeki SMS Gateway poate fi descărcat de pe site-ul Ozeki și poate fi utilizat într-o perioadă de încercare, care este complet gratuită. Programarea mesajelor îți permite să trimiți SMS către utilizatorii de telefonie mobilă atunci când aceștia nu sunt ocupați, ceea ce înseamnă că poți lucra cu o eficiență mai mare.

Asigură-te că nu îți închei lectura aici, verifică pagina de tutoriale Ozeki unde există mai multe informații despre subiecte similare, cum ar fi recepționarea în VB.

Următorul lucru pe care trebuie să-l faci este să descărci Ozeki SMS Gateway și să începi lucrul!

More information