Kako poslati SMS iz Visual Basica

Najenostavnejši način za pošiljanje SMS-ov iz Visual Basica je uporaba vgrajenega HTTP/Rest SMS API-ja Ozeki SMS Gateway. Ko uporabljate ta API, boste SMS sporočila pošiljali z izdajo HTTP Post zahteve do SMS prehoda. 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 poslati sms iz visual basica
Slika 1 - Kako poslati SMS iz Visual Basica

Primer kode za pošiljanje SMS-ov iz Visual Basica 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 = "Pozdravljen, svet!"

        Dim api = New MessageApi(configuration)

        Dim result = api.Send(msg)

        Console.WriteLine(result)
        Console.ReadKey()

    End Sub
End Module
	
Prenesite SendSms.vb

Izvorna koda, razložena v tem članku, je na voljo za brezplačen prenos, uporabo in spreminjanje.
Prenos: SendSms.vb.zip (48,6 Kb)

Kaj je v datoteki SendSms.vb.zip?

Datoteka SendSms.vb.zip vsebuje knjižnico Ozeki.Libs.Rest, ki vam omogoča vse potrebno orodje za pošiljanje in prejemanje SMS sporočil. V zip datoteki boste našli tudi projekt SendSms, ki vsebuje primer kode, ki prikazuje kako poslati SMS. Ta primer kode je naveden spodaj.

Slika 2 - Kaj je v SendSms.vb.zip

Kako poslati SMS iz Visual Basica (Hitri koraki)

Za pošiljanje SMS-ov iz Visual Basica:

  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. Zaženite Visual Studio
  6. Ustvarite rešitev z imenom Send-SMS.sln
  7. Dodajte Visual Basic konzolni projekt: Send-SMS.vbproj
  8. Vstavite kodo v Program.vb ali Send-SMS.vb
  9. Ustvarite Visual Basic funkcijo z imenom Send_SMS
  10. Ustvarite SMS Json podatke
  11. Ustvarite HTTP zahtevo za pošiljanje SMS-a
  12. Preberite HTTP odgovor
  13. Izpišite odgovor na konzolo
  14. Preverite dnevnike v SMS prehodu
Namestite Ozeki SMS Gateway in ustvarite uporabnika HTTP API

Da lahko pošiljate SMS-e iz Visual Basica, morate najprej namestiti Ozeki SMS Gateway. SMS prehod lahko namestite na isti računalnik, kjer razvijate svojo Visual Basic kodo v Visual Studiu. Po namestitvi je naslednji korak povezati 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. Zadnji korak za pripravo vašega okolja je ustvariti 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 Visual Basic kodo.

URL HTTP API-ja za pošiljanje SMS-ov iz Visual Basica

Za pošiljanje SMS-ov iz Visual Basica bo vaš Visual Basic moral izdati HTTP zahtevo do SMS prehoda. URL API-ja 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 Visual Basic SMS aplikacija, je to lahko 127.0.0.1. Če je nameščen na drugem računalniku, mora biti to IP naslov tega računalnika.

http://127.0.0.1:9509/api?action=rest
HTTP avtentikacija za pošiljanje SMS-ov iz Visual Basica

Za avtentikacijo Visual Basic 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 C# lahko za to kodiranje uporabite naslednjo kodo:

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

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

Glava HTTP zahteve za pošiljanje SMS-ov iz Visual Basica

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 iz Visual Basic

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

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": "4b486234-1dde-4975-b233-47267e988287",
      "to_address": "+36201111111",
      "text": "Hello, World!",
      "create_date": "2021-06-11 14:19:47",
      "valid_until": "2021-06-18 14:19:47",
      "time_to_send": "2021-06-11 14:19:47",
      "submit_report_requested": true,
      "delivery_report_requested": true,
      "view_report_requested": true,
      "tags": []
    }
  ]
}
HTTP odziv, prejet s primerom SMS v Visual Basic

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 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.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": "Messages queued for delivery.",
  "data": {
    "total_count": 1,
    "success_count": 1,
    "failed_count": 0,
    "messages": [
      {
        "message_id": "7e4fa89b-df8a-4267-afe3-da348bf200ef",
        "from_station": "%",
        "to_address": "+36201111111",
        "to_station": "%",
        "text": "Hello, World!",
        "create_date": "2021-06-11 14:19:47",
        "valid_until": "2021-06-18 14:19:47",
        "time_to_send": "2021-06-11 14:19:47",
        "submit_report_requested": true,
        "delivery_report_requested": true,
        "view_report_requested": false,
        "tags": [
          {
            "name": "Type",
            "value": "SMS:TEXT"
          }
        ],
        "status": "SUCCESS"
      }
    ]
  }
}
Kako poslati SMS iz Visual Basic (Video vadnica)

Ta video prikazuje, kako ustvariti nov projekt .Net core konzole v Visual Studio, kako ga poimenovati v Send-SMS.sln. Ko je rešitev ustvarjena, lahko opazite, da je Send-SMS.vbproj dodan v rešitev in privzeto je odprta datoteka Program.cs. Lahko preimenujete Program.vb v Send-SMS.vb, če želite. V videu boste videli tudi, kako lahko spodnji primer kode kopirate v datoteko Send-SMS.vb in kako jo lahko prevedete in izvedete.

Video 1 - Kako prenesti in odpreti rešitev (Video vadnica)

SendSms.sln

Spodnja primer kode je del rešitve Visual Studio SendSms.sln. Visual studio rešitev lahko vsebuje več projektov in več datotek. V tej rešitvi sta samo dva projekta: SendSms.vbproj, Ozeki.Libs.Rest.csproj, in ena datoteka: Program.vb.

Slika 3 - SendSms.sln

Kako preveriti, ali je SMS sprejel HTTP uporabnik

Po oddaji SMS je dobro preveriti vaš SMS prehod, da vidite, kaj je prejel. Dnevnik lahko preverite tako, da odprete podrobnosti HTTP uporabnika iz upravljalne konzole Ozeki SMS Gateway. Naslednji video vam pokaže, kaj morate iskati.

Video 2 - Kako poslati SMS s kodo Visual Basic zgoraj (Video vadnica)

Kako preveriti, ali je SMS poslan v mobilno omrežje

Zadnji korak pri preverjanju postopka je pogled v dnevnike povezave z mobilnim omrežjem. Morda boste morali vklopiti beleženje v nastavitvah povezave, preden pošljete sporočilo, da boste videli dnevnike. Če je beleženje omogočeno, boste videli telefonsko številko in besedilo sporočila, ki ste ga poslali.

Video 3 - Kako vklopiti beleženje v Ozeki SMS Gateway (Video vadnica)

Zagon primera SMS v Visual Basic na Windows

Ko uporabljate Windows za zagon tega primera SMS, napisanega v Visual Basic, boste opazili, da dobite nekoliko boljšo zmogljivost kot pri zagonu na Linuxu. Da bi razumeli, zakaj se to zgodi, morate upoštevati, da Visual Basic uporablja ogrodje .NET za izvajanje kode. To je zato, ker je izvedba .NET na Windows optimizirana za zmogljivost, medtem ko ima mono, izvedba .NET na Linuxu, na tem področju še nekaj za ujeti.

Zgornji vodnik je razložil korake za pošiljanje SMS-ov iz Visual Basic. Ozeki ponuja vse znanje in orodja, da vam olajša delo. Če ste skrbno sledili korakom, sporazumevanje z mobilnimi strankami iz VB s pomočjo Ozeki SMS Gateway ne bi smelo biti zapleteno. Visoka zmogljivost Ozeki SMS Gateway vam omogoča pošiljanje do 1000 SMS-ov na sekundo.

Prepričajte se, da nadaljujete z branjem na Ozekijevi strani z vadnicami, kjer so informacije o podobnih tematikah, kot sta prejemanje v VB.

Naslednja stvar, ki jo morate storiti, je prenos Ozeki SMS Gateway in začnite delati!

More information