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.
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.vbImports 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)
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.
Da biste poslali sms iz Visual Basic-a:
- Instalirajte Ozeki SMS Gateway
- Povežite Ozeki SMS Gateway sa mobilnom mrežom
- Pošaljite testni sms iz Ozeki GUI-a
- Kreirajte HTTP sms api korisnika
- Pokrenite Visual Studio
- Kreirajte rešenje pod nazivom SendScheduledSms.sln
- Dodajte Visual Basic konzolni projekat: SendScheduledSms.vbproj
- Stavite kod u Program.vb ili SendScheduledSms.vb
- Kreirajte Visual Basic funkciju pod nazivom Send_SMS
- Kreirajte SMS Json podatke
- Kreirajte http zahtev za slanje SMS-a
- Pročitajte HTTP odgovor
- Ispišite odgovor na konzoli
- Proverite logove u SMS gateway-u
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-aDa 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==
Да бисте послали 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": [] } ] }
Када 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" } ] } }
Како преузети пример пројекта (Видео туторијал)
У овом видеу, научићете како да преузмете и покренете пример пројекта SendScheduledSms.sln. Видео ће почети са страницом за преузимање и завршиће се са отвореним едитором кода. Научићете како да преузмете и како да отворите Visual Basic пример кода. Овај веома детаљан видео траје само 1 минут и лако га је разумети. Не брините, нећете имати проблема да га пратите.
Пример кода испод је део SendScheduledSms.sln Visual Studio решења. Visual studio решење може садржати више пројеката и више фајлова. У овом решењу постоји само један пројекат: SendScheduledSms.vbproj, и један фајл: Program.vb.
У следећем видеу, научићете како да покренете пример кода и како да проверите лог процеса. Почеће са покретањем Ozeki SMS Gateway-а и водиће вас све до листе одложених порука. Научићете како да проверите лог и како да покренете пројекат за слање заказаних порука. Видео траје само 1:22 минут тако да нећете имати проблема да га разумете. Користимо Ozeki SMS Gateway софтвер за логовање и слање SMS-ова. То је моћан, али лако савладиви gateway софтвер.
Покретање 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