Kako poslati SMS iz Visual Basica
Najjednostavniji način za slanje SMS-a iz Visual Basica je korištenje ugrađenog HTTP/Rest SMS API-ja Ozeki SMS Gatewaya. Kada koristite ovaj API, slanje SMS poruka vršite putem HTTP Post zahtjeva prema SMS gatewayu. HTTP Post zahtjev će sadržavati poruku formatiranu u json formatu. SMS gateway će poslati ovaj SMS na telefonski broj primatelja i vratit će HTTP 200 OK odgovor na vaš zahtjev.
Primjer koda za slanje SMS-a u Visual Basicu
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 = "Hello, World!" Dim api = New MessageApi(configuration) Dim result = api.Send(msg) Console.WriteLine(result) Console.ReadKey() End Sub End Module
Preuzmite SendSms.vb
Izvorni kod objašnjen u ovom članku može se besplatno preuzeti, koristiti i modificirati.
Preuzimanje: SendSms.vb.zip (48.6Kb)
Što se nalazi u SendSms.vb.zip datoteci?
SendSms.vb.zip datoteka sadrži Ozeki.Libs.Rest biblioteku, koja vam daje sve potrebne alate za slanje i primanje SMS poruka. Također ćete pronaći SendSms projekt u zip datoteci, koji sadrži primjer koda koji pokazuje kako poslati SMS. Ovaj primjer koda je naveden ispod.
Kako poslati SMS iz Visual Basica (Brzi koraci)
Za slanje SMS-a iz Visual Basica:
- Instalirajte Ozeki SMS Gateway
- Povežite Ozeki SMS Gateway s mobilnom mrežom
- Pošaljite testni SMS iz Ozeki GUI-a
- Kreirajte HTTP SMS API korisnika
- Pokrenite Visual Studio
- Kreirajte rješenje pod nazivom Send-SMS.sln
- Dodajte Visual Basic konzolni projekt: 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 zahtjev za slanje SMS-a
- Pročitajte HTTP odgovor
- Ispišite odgovor na konzolu
- Provjerite zapisnike u SMS gatewayu
Instalirajte Ozeki SMS Gateway i kreirajte HTTP API korisnika
Da biste mogli slati SMS iz Visual Basica, prvo morate instalirati Ozeki SMS Gateway. SMS gateway se može instalirati na istom računalu gdje razvijate svoj Visual Basic kod u Visual studiju. Nakon instalacije, sljedeći korak je povezivanje Ozeki SMS Gatewaya s mobilnom mrežom. Možete poslati testni SMS iz Ozeki GUI-a kako biste potvrdili da vaša mobilna mrežna veza radi. Završni korak za pripremu vašeg okruženja je kreiranje HTTP SMS API korisničkog računa. Kreirajte korisnika s korisničkim imenom "http_user" i lozinkom "qwe123" kako bi primjer 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 Basica
Za slanje SMS-a iz Visual Basica, vaš Visual Basic će morati poslati HTTP zahtjev prema SMS gatewayu. API URL je prikazan ispod. Imajte na umu da IP adresa (127.0.0.1) treba biti zamijenjena IP adresom vašeg SMS gatewaya. Ako je Ozeki SMS Gateway instaliran na istom računalu gdje se pokreće Visual Basic SMS aplikacija, ovo može biti 127.0.0.1. Ako je instaliran na drugom računalu, treba biti IP adresa tog računala.
http://127.0.0.1:9509/api?action=rest
HTTP autentifikacija za slanje SMS-a iz Visual Basica
Za autentifikaciju Visual Basic SMS klijenta, potrebno je poslati korisničko ime i lozinku u base64 kodiranom stringu prema poslužitelju u HTTP zahtjevu. Korišteni format je: base64(korisničko_ime+":"+lozinka). U C# možete koristiti sljedeći kod za ovu kodiranje:
var encoding = Encoding.GetEncoding("iso-8859-1"); var usernamePassword = username + ":" + password; var usernamePasswordEncoded = Convert.ToBase64String(encoding.GetBytes(usernamePassword));
Na primjer, ako kodirate korisničko ime 'http_user' i lozinku 'qwe123', dobit ćete sljedeći base64 kodirani string: aHR0cF91c2VyOnF3ZTEyMw==. Za slanje
HTTP zaglavlje zahtjeva za slanje SMS-a iz Visual Basica
Za slanje SMS poruka, potrebno je uključiti sljedeće retke kao zaglavlja u HTTP zahtjevu. Imajte na umu da uključujemo content type i Authorization zaglavlje.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP zahtjev za slanje SMS-a iz Visual Basica
Za slanje SMS-a, vaša Visual Basic aplikacija će poslati HTTP zahtjev sličan onome ispod. Imajte na umu da ovaj zahtjev sadrži HTTP zaglavlje i HTTP tijelo. HTTP tijelo je JSON kodirani niz podataka. Sadrži broj primatelja 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": "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 odgovor primljen u Visual Basic SMS primjeru
Nakon što SMS gateway primi ovaj zahtjev, generirat će HTTP odgovor. HTTP odgovor će sadržavati statusni kod kako bi pokazao je li zahtjev za slanje SMS-a uspješan ili ne. Također ć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": "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 Basica (Video tutorial)
Ovaj video vam pokazuje kako kreirati novi .Net core konzolni projekt u Visual Studiju, kako ga nazvati Send-SMS.sln. Nakon što je rješenje kreirano, možete primijetiti da je Send-SMS.vbproj dodan u rješenje, a po defaultu se otvara Program.cs datoteka. Možete preimenovati Program.vb u Send-SMS.vb ako želite. Također ćete vidjeti u videu kako se primjer koda ispod može kopirati u Send-SMS.vb datoteku, te kako se može kompajlirati i izvršiti.
SendSms.sln
Primjer koda ispod je dio SendSms.sln Visual Studio rješenja. Visual studio rješenje može sadržavati više projekata i više datoteka. U ovom rješenju postoje samo dva projekta: SendSms.vbproj, Ozeki.Libs.Rest.csproj, i jedna datoteka: Program.vb.
Kako provjeriti je li SMS prihvaćen od strane HTTP korisnika
Nakon što je SMS poslan, dobro je provjeriti vaš SMS gateway, kako biste vidjeli što je primio. Dnevnik možete provjeriti otvaranjem detalja HTTP korisnika iz Ozeki SMS Gateway upravljačke konzole. Sljedeći video vam pokazuje što trebate tražiti.
Kako provjeriti je li SMS poslan na mobilnu mrežu
Zadnji korak u provjeri procedure je pogledati dnevnike veze s mobilnom mrežom. Možda ćete morati uključiti bilježenje u konfiguraciji veze prije nego što pošaljete poruku kako biste vidjeli dnevnike. Ako je bilježenje uključeno, vidjet ćete broj telefona i tekst poruke koju ste poslali.
Pokretanje Visual Basic SMS primjera na Windowsu
Kada koristite Windows za pokretanje ovog SMS primjera napisanog u Visual Basicu, primijetit ćete da dobivate nešto bolju performansu nego kada ga pokrećete na Linuxu. Da biste razumjeli zašto se to događa, morate imati na umu da Visual Basic koristi .NET framework za izvršavanje koda. To je zato što je .NET implementacija na Windowsu optimizirana za performanse, dok mono, .NET implementacija na Linuxu, još uvijek treba nadoknaditi u tom području.
SažetakGornji vodič objasnio je korake slanja SMS-a iz Visual Basica. Ozeki pruža sve znanje i alate kako bi vam olakšao rad. Ako su koraci pažljivo slijedeni, razmjena poruka s mobilnim korisnicima iz VB-a uz pomoć Ozeki SMS Gatewaya ne bi trebala biti komplicirana. Visoka performansa Ozeki SMS Gatewaya omogućuje vam slanje do 1000 SMS-ova u sekundi.
Svakako nastavite čitati na Ozekijevoj stranici s tutorijalima, gdje se nalaze informacije o sličnim temama, poput primanja u VB-u.
Sljedeće što trebate učiniti je preuzeti Ozeki SMS Gateway i početi raditi!
More information
- VB pošalji SMS s HTTP REST API-jem (primjer koda)
- VB pošalji više SMS-ova s HTTP REST API-jem (primjer koda)
- VB zakazani SMS s HTTP REST API-jem (primjer koda)
- VB primi SMS s HTTP REST API-jem (primjer koda)
- VB obriši SMS s HTTP REST API-jem (primjer koda)
- Github: VB SMS API
- SMS NuGet biblioteka za Visual Basic (VB)