Kako poslati SMS iz Visual Basic-a
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 na telefon primaoca, i vratiće HTTP 200 OK odgovor na vaš zahtev.
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!" Dim api = New MessageApi(configuration) Dim result = api.Send(msg) Console.WriteLine(result) Console.ReadKey() End Sub End Module
Izvorni kod objašnjen u ovom članku može se besplatno preuzeti, koristiti i modifikovati.
Preuzmi: SendSms.vb.zip (48.6Kb)
SendSms.vb.zip fajl sadrži Ozeki.Libs.Rest biblioteku, koja vam daje sve potrebne alate za slanje i primanje SMS poruka. Takođe ćete naći SendSms projekat u zip fajlu, 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 test SMS iz Ozeki GUI-a
- Kreirajte HTTP SMS API korisnika
- Pokrenite Visual Studio
- Kreirajte rešenje pod nazivom Send-SMS.sln
- Dodajte Visual Basic konzolni projekat: Send-SMS.vbproj
- Ubacite kod u Program.vb ili Send-SMS.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 konzolu
- 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 povezivanje Ozeki SMS Gateway-a sa mobilnom mrežom. Možete poslati test SMS iz Ozeki GUI-a da potvrdite da vaša mobilna mrežna veza radi. Poslednji korak za pripremu vašeg okruženja je kreiranje 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
Da biste autentifikovali Visual Basic SMS klijent, morate poslati korisničko ime i lozinku u base64 kodiranom stringu ka serveru u HTTP zahtevu. Format koji se koristi je: base64(korisničko_ime+":"+lozinka). U C# možete koristiti sledeći kod za ovo kodiranje:
var encoding = Encoding.GetEncoding("iso-8859-1"); var usernamePassword = username + ":" + password; var usernamePasswordEncoded = Convert.ToBase64String(encoding.GetBytes(usernamePassword));
Na primer, ako kodirate korisničko ime 'http_user' i lozinku 'qwe123', dobićete sledeći base64 kodirani string: aHR0cF91c2VyOnF3ZTEyMw==. Da biste poslali
HTTP zaglavlje zahteva za slanje SMS-a iz Visual Basic-aDa biste poslali SMS poruke, morate uključiti sledeće linije kao zaglavlja u HTTP zahtevu. Imajte na umu da uključujemo content type i Authorization zaglavlje.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP zahtev za slanje SMS-a iz Visual Basic-a
Da biste poslali SMS, vaša Visual Basic aplikacija će poslati HTTP zahtev sličan onome ispod. Imajte na umu da ovaj zahtev sadrži HTTP zaglavlje i HTTP telo. Telo HTTP-a je JSON kodirani niz podataka. Sadrži broj primaoca i tekst poruke.
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": "Zdravo, svete!", "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 odgovor primljen od Visual Basic SMS primera
Nakon što SMS gateway primi ovaj zahtev, generisaće HTTP odgovor. HTTP odgovor će sadržati statusni kod, kako bi naznačio da li je zahtev za slanje SMS-a bio uspešan ili ne. Takođe će vratiti JSON kodiranu strukturu koja vam pruža korisne detalje o slanju poruke.
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": "Poruke su stavljene u red za slanje.", "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": "Zdravo, svete!", "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-a (Video tutorijal)
Ovaj video vam pokazuje kako da kreirate novi .Net core konzolni projekat u Visual Studio-u, kako da ga nazovete Send-SMS.sln. Nakon što je rešenje kreirano, možete primetiti da je Send-SMS.vbproj dodat u rešenje, i podrazumevano se otvara Program.cs fajl. Možete preimenovati Program.vb u Send-SMS.vb ako želite. Takođe ćete videti u videu kako se primer koda ispod može kopirati u Send-SMS.vb fajl, i kako se može kompajlirati i izvršiti.
SendSms.sln
Primer koda ispod je deo SendSms.sln Visual Studio rešenja. Visual studio rešenje može sadržati više projekata i više fajlova. U ovom rešenju postoje samo dva projekta: SendSms.vbproj, Ozeki.Libs.Rest.csproj, i jedan fajl: Program.vb.
Kako proveriti da je SMS prihvaćen od strane HTTP korisnika
Nakon što je SMS poslat, dobro je proveriti vaš SMS gateway, da vidite šta je primio. Možete proveriti log tako što ćete otvoriti detalje HTTP korisnika iz Ozeki SMS Gateway konzole za upravljanje. Sledeći video vam pokazuje šta treba tražiti.
Kako proveriti da je SMS poslat na mobilnu mrežu
Poslednji korak u proveri procedure je da pogledate logove mobilne mrežne veze. Možda ćete morati da uključite logovanje u konfiguraciji veze pre nego što pošaljete poruku da biste videli logove. Ako je logovanje omogućeno, videćete broj telefona i tekst poruke koju ste poslali.
Pokretanje Visual Basic SMS primera na Windows-u
Kada koristite Windows za pokretanje ovog SMS primera napisanog u Visual Basic-u, primetićete da dobijate malo bolje performanse nego kada ga pokrenete na Linux-u. Da biste razumeli zašto se ovo dešava, morate imati na umu da Visual Basic koristi .NET framework za izvršavanje koda. Ovo je zato što je .NET implementacija na Windows-u optimizovana za performanse, dok mono, .NET implementacija na Linux-u, ima još nešto da dostigne u ovom polju.
Sažetak
Gore navedeni vodič objasnio je korake slanja SMS poruka iz Visual Basic-a. Ozeki pruža sve potrebno znanje i alate kako bi vam olakšao posao. Ako su koraci pažljivo praćeni, slanje poruka mobilnim korisnicima iz VB uz pomoć Ozeki SMS Gateway-a ne bi trebalo da bude komplikovano. Visoke performanse Ozeki SMS Gateway-a omogućavaju vam slanje do 1000 SMS poruka u sekundi.
Obavezno nastavite sa čitanjem na Ozeki-ovoj stranici sa tutorijalima, gde možete pronaći informacije o sličnim temama, kao što su prijem SMS poruka u VB-u.
Sledeća stvar koju treba da uradite je da preuzmete Ozeki SMS Gateway i počnete da radite!
More information