Kako zakazati SMS u Visual Basic-u

Najjednostavniji način za slanje SMS-a iz Visual Basic-a je korišćenje ugrađenog HTTP/Rest SMS API-ja Ozeki SMS Gateway-a. Kada koristite ovaj API, slaćete SMS poruke tako što ćete poslati HTTP Post zahtev ka SMS gateway-u. HTTP Post zahtev će sadržati poruku formatiranu u json formatu. SMS gateway će poslati ovaj SMS primaocu na telefon, i vratiće HTTP 200 OK odgovor na vaš zahtev.

zakazivanje sms-a za buduću isporuku u visual basic-u
Slika 1 - Visual Basic zakazivanje SMS-a za buduću isporuku

Visual Basic kod za slanje zakazanog sms-a na mobilni telefon

Visual Basic sms primer koda ispod demonstrira kako možete poslati SMS koristeći http rest sms api Ozeki SMS Gateway-a koristeći Visual Basic Ozeki.Libs.Rest biblioteku. Ova biblioteka vam je dostupna besplatno, i možete je koristiti i modifikovati u bilo kom od vaših projekata.

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 = "Zdravo, svete!"
        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
	

Kako koristiti Visual Basic sms primer:

Ovaj Visual Basic sms primer može se koristiti u bilo kojoj .NET ili .NET core aplikaciji. Da biste ga koristili, morate dodati Ozeki.Libs.Rest dll kao referencu u vaš projekat. Nakon dodavanja reference u projekat, morate staviti using Ozeki.Libs.Rest; direktivu u zaglavlje vašeg Visual Basic izvornog koda. Ovo će vam omogućiti da koristite klase koje pruža Ozeki.Libs.Rest biblioteka. Možete koristiti Message klasu za kreiranje SMS-a. Možete koristiti MessageApi klasu za slanje SMS-a ka SMS gateway-u. SMS gateway će proslediti vašu poruku mobilnoj mreži bilo preko bežične veze ili preko interneta.

Preuzmite SendScheduledSms.vb

Izvorni kod objašnjen u ovom članku može se preuzeti, koristiti i modifikovati besplatno.
Preuzimanje: SendScheduledSms.vb.zip (47.6Kb)

Šta se nalazi u SendScheduledSms.vs fajlu?

SendScheduledSms.cs fajl sadrži Ozeki.Libs.Rest biblioteku, koja vam daje sve alate potrebne za slanje i primanje SMS poruka. Takođe ćete naći SendScheduleSms projekat u zip arhivi, koji sadrži primer koda koji pokazuje kako poslati SMS. Ovaj primer koda je naveden ispod.

Slika 2 - Šta se nalazi u SendScheduledSms.vb.zip

Kako poslati SMS iz Visual Basic-a (Brzi koraci)

Da biste poslali sms iz Visual Basic-a:

  1. Instalirajte Ozeki SMS Gateway
  2. Povežite Ozeki SMS Gateway sa mobilnom mrežom
  3. Pošaljite testni sms iz Ozeki GUI-a
  4. Kreirajte HTTP sms api korisnika
  5. Pokrenite Visual Studio
  6. Kreirajte rešenje pod nazivom SendScheduledSms.sln
  7. Dodajte Visual Basic konzolni projekat: SendScheduledSms.vbproj
  8. Stavite kod u Program.vb ili SendScheduledSms.vb
  9. Kreirajte Visual Basic funkciju pod nazivom Send_SMS
  10. Kreirajte SMS Json podatke
  11. Kreirajte http zahtev za slanje SMS-a
  12. Pročitajte HTTP odgovor
  13. Ispišite odgovor na konzoli
  14. Proverite logove u SMS gateway-u
Instalirajte Ozeki SMS Gateway i kreirajte HTTP API korisnika

Da biste mogli da šaljete SMS iz Visual Basic-a, prvo morate instalirati Ozeki SMS Gateway. SMS gateway može biti instaliran na istom računaru, gde razvijate svoj Visual Basic kod u Visual studio-u. Nakon instalacije, sledeći korak je da povežete Ozeki SMS Gateway sa mobilnom mrežom. Možete poslati testni sms iz Ozeki GUI-a da biste potvrdili, da vaša mobilna mrežna veza radi. Poslednji korak za pripremu vašeg okruženja je da kreirate HTTP sms api korisnika. Kreirajte korisnika sa korisničkim imenom "http_user", i lozinkom "qwe123" kako bi primer radio bez modifikacija.

Nakon što je okruženje postavljeno, možete pokrenuti svoj Visual Basic kod.

HTTP API url za slanje sms-a iz Visual Basic-a

Da biste poslali SMS iz Visual Basic-a, vaš Visual Basic će morati da pošalje HTTP zahtev ka SMS gateway-u. API url je prikazan ispod. Imajte na umu da IP adresa (127.0.0.1) treba da bude zamenjena sa IP adresom vašeg SMS gateway-a. Ako je Ozeki SMS Gateway instaliran na istom računaru gde se pokreće Visual Basic sms aplikacija, ovo može biti 127.0.0.1. Ako je instaliran na drugom računaru, treba da bude IP adresa tog računara.

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

HTTP аутентификација за слање SMS-а из Visual Basic-а

Да бисте аутентификовали Visual Basic SMS клијент, потребно је да пошаљете корисничко име и лозинку у base64 кодираном стрингу на сервер у HTTP захтеву. Коришћени формат је: base64(username+":"+password). У C#-у можете користити следећи код за ово кодирање:

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

На пример, ако кодирате корисничко име 'http_user' и лозинку 'qwe123', добићете следећи base64 кодирани стринг: aHR0cF91c2VyOnF3ZTEyMw==. За слање

HTTP заглавље захтева за слање SMS-а из F#-а

Да бисте послали SMS поруке, потребно је да укључите следеће редове као заглавља у HTTP захтев. Обратите пажњу да укључујемо Content-Type и Authorization заглавље.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
	
HTTP захтев за слање заказаног SMS-а из Visual Basic-а

Да бисте послали SMS, ваша Visual Basic апликација ће послати HTTP захтев сличан овом испод. Обратите пажњу да овај захтев садржи део са HTTP заглављима и део са HTTP телом. HTTP тело је JSON кодирани стринг података. Садржи примаочев број и текст поруке.

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": "Hello, World!",
      "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": []
    }
  ]
}
	
HTTP одговор примљен од стране Visual Basic SMS примера

Када SMS gateway прими овај захтев, генерисаће HTTP одговор. HTTP одговор ће садржати статусни код, да укаже да ли је захтев за слање SMS-а био успешан или не. Такође ће вратити JSON кодирану структуру која вам пружа корисне детаље о слању поруке.

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": "ca824cbe-784c-44f9-b657-1c04f711f529",
        "from_station": "%",
        "to_address": "+36201111111",
        "to_station": "%",
        "text": "Hello, World!",
        "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": "Type",
            "value": "SMS:TEXT"
          }
        ],
        "status": "SUCCESS"
      }
    ]
  }
}
	
Visual Basic SMS пример: SendScheduledSms.sln
Како преузети пример пројекта (Видео туторијал)

У овом видеу, научићете како да преузмете и покренете пример пројекта SendScheduledSms.sln. Видео ће почети са страницом за преузимање и завршиће се са отвореним едитором кода. Научићете како да преузмете и како да отворите Visual Basic пример кода. Овај веома детаљан видео траје само 1 минут и лако га је разумети. Не брините, нећете имати проблема да га пратите.

Видео 1 - Како преузети и покренети пример пројекта изнад (Видео туторијал)

Пример кода испод је део SendScheduledSms.sln Visual Studio решења. Visual studio решење може садржати више пројеката и више фајлова. У овом решењу постоји само један пројекат: SendScheduledSms.vbproj, и један фајл: Program.vb.

како послати заказани SMS са visual basic-ом
Слика 3 - SendScheduledSms.sln

Како користити пример пројекта

У следећем видеу, научићете како да покренете пример кода и како да проверите лог процеса. Почеће са покретањем Ozeki SMS Gateway-а и водиће вас све до листе одложених порука. Научићете како да проверите лог и како да покренете пројекат за слање заказаних порука. Видео траје само 1:22 минут тако да нећете имати проблема да га разумете. Користимо Ozeki SMS Gateway софтвер за логовање и слање SMS-ова. То је моћан, али лако савладиви gateway софтвер.

Видео 2 - Како користити SendScheduledSms.vb решење (Видео туторијал)

Покретање Visual Basic SMS примера на Windows-у

Када користите Windows за покретање овог SMS примера написаног у Visual Basic-у, приметићете да добијате нешто боље перформансе него када га покренете на Linux-у. Да бисте разумели зашто се то дешава, морате имати на уму да Visual Basic користи .NET framework за извршавање кода. То је зато што је .NET имплементација на Windows-у оптимизована за перформансе, док mono, .NET имплементација на Linux-у, има још мало посла у том пољу.

Zaključak

Svrha ovog članka bila je da prikaže korake za zakazivanje SMS poruka u VB uz pomoć Ozeki SMS Gateway-a. Alati i objašnjenja su obezbeđeni od strane Ozeki-ja. Ako ste pažljivo pročitali sve i uradili sve korake, trebali biste moći da zakazujete poruke u Visual Basic-u.

Ozeki SMS Gateway se može preuzeti sa Ozeki-jevog sajta i može se koristiti tokom probnog perioda, koji je potpuno besplatan. Zakazivanje poruka vam omogućava da šaljete SMS korisnicima kada nisu zauzeti, što znači da možete raditi sa većom efikasnošću.

Ne zaboravite da ne završite čitanje ovde, pogledajte Ozeki-jev tutorijal gde možete pronaći više informacija o sličnim temama, kao što su prijem u VB-u.

Sledeća stvar koju treba da uradite je da preuzmete Ozeki SMS Gateway i neka rad počne!

More information