Jak přijímat SMS v C/C++
Nejjednodušší způsob, jak odesílat SMS z C/C++, je použít vestavěné HTTP/Rest SMS API Ozeki SMS Gateway. Když použijete toto API, budete odesílat SMS zprávy vytvořením HTTP Post požadavku na SMS bránu. HTTP Post požadavek bude obsahovat zprávu ve formátu JSON. SMS brána poté odešle tuto SMS příjemci a vrátí HTTP 200 OK odpověď na váš požadavek.
C/C++ kód pro příjem SMS z mobilu
Ukázkový kód v C/C++ níže ukazuje, jak můžete přijímat SMS pomocí HTTP REST SMS API Ozeki SMS Gateway s využitím knihovny C++ Ozeki.Libs.Rest. Tato knihovna je poskytována zdarma a můžete ji používat a upravovat v jakémkoli svém projektu.
ReceiveSms.cpp#include <iostream> #include <string> #include "Ozeki.Libs.Rest.h" using namespace std; int main() { //Funkce pro vytvoření unikátního identifikátoru pro každou zprávu srand((unsigned)time(0)); Configuration configuration; configuration.Username = "http_user"; configuration.Password = "qwe123"; configuration.ApiUrl = "http://127.0.0.1:9509/api"; MessageApi api(configuration); auto result = api.DownloadIncoming(); cout << result << endl; for (Message message : result.Messages) { cout << message << endl; } return 0; }
Jak použít C++ příklad pro SMS:
Tento C++ příklad pro SMS lze použít v jakékoli C nebo C++ aplikaci. Pro použití je nutné přidat knihovnu Ozeki.Libs.Rest jako referenci do vašeho projektu. Po přidání reference do projektu musíte vložit direktivu using Ozeki.Libs.Rest; do hlavičkové části vašeho C/C++ zdrojového kódu. To vám umožní používat třídy poskytované knihovnou Ozeki.Libs.Rest. Třídu MessageApi můžete použít k příjmu SMS z SMS brány. SMS brána vám zprávu přepošle buď přes bezdrátové připojení, nebo přes internet.
Stáhnout Receive-SMS.cs
Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: ReceiveSms.cpp.zip (2.97Mb)
Co obsahuje soubor ReceiveSms.cpp.zip?
Soubor ReceiveSms.cpp.zip obsahuje knihovnu Ozeki.Libs.Rest, která vám poskytuje všechny nástroje potřebné pro odesílání a příjem SMS zpráv. V zipu také najdete projekt ReceiveSms, který obsahuje ukázkový kód, který vám ukáže, jak přijímat SMS. Tento ukázkový kód je uveden níže.
Jak přijímat SMS v C/C++ (Jednoduchý návod)
Pro příjem SMS v C/C++:
- Nastavte Visual Studio Community
- Stáhněte soubor ReceiveSms.cpp.zip
- Extrahujte .zip soubor ze složky Stažené
- Otevřete soubor ReceiveSms.sln v Visual Studiu
- Spusťte Ozeki SMS Gateway
- Klikněte na HTTP uživatele v záložce Uživatelé a aplikace
- Spusťte ReceiveSms.cpp pro příjem SMS v C/C++
- Zkontrolujte doručenou poštu v Ozeki SMS Gateway
Nainstalujte Ozeki SMS Gateway a vytvořte HTTP API uživatele
Abyste mohli odesílat a přijímat SMS z C/C++, musíte nejprve nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj C/C++ kód ve Visual Studiu. Po instalaci je dalším krokem připojení Ozeki SMS Gateway k mobilní síti. Můžete odeslat testovací SMS z Ozeki GUI pro ověření, že vaše mobilní síťové připojení funguje. Posledním krokem k přípravě prostředí je vytvoření HTTP SMS API uživatelského účtu. Vytvořte uživatele s uživatelským jménem "http_user" a heslem "qwe123", aby příklad fungoval bez úprav.
Po nastavení prostředí můžete spustit svůj C/C++ kód.
HTTP API URL pro příjem SMS z C/C++
Pro příjem SMS pomocí C/C++ musí vaše C/C++ aplikace odeslat HTTP požadavek na SMS bránu. API URL je uvedeno níže. Poznámka: IP adresa (127.0.0.1) by měla být nahrazena IP adresou vaší SMS brány. Pokud je Ozeki SMS Gateway nainstalována na stejném počítači, kde běží C/C++ SMS aplikace, může to být 127.0.0.1. Pokud je nainstalována na jiném počítači, měla by být použita IP adresa tohoto počítače.
http://127.0.0.1:9509/api?action=rest
HTTP autentizace pro příjem SMS z C/C++
Pro autentizaci C/C++ SMS klienta je nutné odeslat uživatelské jméno a heslo v base64 kódovaném řetězci na server v HTTP požadavku. Použitý formát je: base64(username+":"+password). V C++ můžete použít následující kód pro toto kódování:
string usernamePassword = username + ":" + password; string usernamePasswordEncoded = base64::encode(usernamePassword); return "Basic " + usernamePasswordEncoded;
Například pokud zakódujete uživatelské jméno 'http_user' a heslo 'qwe123', získáte následující base64 kódovaný řetězec: aHR0cF91c2VyOnF3ZTEyMw==. Pro odeslání
HTTP požadavek pro příjem SMS v C/C++
Pro příjem SMS bude vaše aplikace v C/C++ odesílat HTTP požadavek podobný tomu níže. Všimněte si, že tento požadavek obsahuje část HTTP hlavičky a část HTTP těla. Tělo HTTP je řetězec dat zakódovaný v JSON. Obsahuje číslo příjemce a text zprávy.
GET /api?action=receivemsg&folder=inbox HTTP/1.1 Content-Type: application/json Accept: application/json Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 127.0.0.1:9509
HTTP hlavička požadavku pro příjem SMS z C/C++
Pro odeslání SMS zpráv je třeba do HTTP požadavku zahrnout následující řádky jako hlavičky. Všimněte si, že zahrnujeme typ obsahu a autorizační hlavičku.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
HTTP odpověď přijatá příkladem SMS v C/C++
Jakmile SMS brána obdrží tento požadavek, vygeneruje HTTP odpověď. HTTP odpověď bude obsahovat stavový kód, který indikuje, zda byl požadavek na odeslání SMS úspěšný nebo ne. Vrátí také strukturu zakódovanou v JSON, která vám poskytne užitečné podrobnosti o odeslání zprávy.
HTTP/1.1 200 OK User-Agent: OZEKI 10.3.123 (www.myozeki.com) Content-Type: application/json; charset=utf8 Last-Modified: Tue, 29 Jun 2021 10:59:51 GMT Server: 10/10.3.123 Transfer-Encoding: chunked { "http_code": 200, "response_code": "SUCCESS", "response_msg": "", "data": { "folder": "inbox", "limit": "1000", "data": [ { "message_id": "5d78e707-13d3-49d3-9b7d-66ba0c24b21e", "from_connection": "admin@localhost", "from_address": "", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "http_user", "to_station": "%", "text": "Hello world 3", "create_date": "2021-06-29 11:07:33", "valid_until": "2021-07-06 11:07:33", "time_to_send": "2021-06-29 11:07:33", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [] }, { "message_id": "695acc97-43b6-4cf1-a6ae-c19e3f908c8f", "from_connection": "admin@localhost", "from_address": "", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "http_user", "to_station": "%", "text": "Hello world 2", "create_date": "2021-06-29 11:07:23", "valid_until": "2021-07-06 11:07:23", "time_to_send": "2021-06-29 11:07:23", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [] }, { "message_id": "333f852e-2f8f-464d-9663-831e857819ca", "from_connection": "admin@localhost", "from_address": "", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "http_user", "to_station": "%", "text": "Hello world 1", "create_date": "2021-06-29 11:07:10", "valid_until": "2021-07-06 11:07:10", "time_to_send": "2021-06-29 11:07:10", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [] } ] } }
Stažení a otevření projektu v C/C++ (Video návod)
V následujícím videu vám ukážeme, jak stáhnout a otevřít soubor projektu. Video začíná nalezením odkazu ke stažení a končí projektem připraveným k použití. Toto 1:32 dlouhé video je snadno pochopitelné a velmi podrobné. Nebudete mít problém tento návod pochopit. Používáme programovací prostředí Visual Studio k otevření projektu.
Ukázkový kód níže je součástí řešení Visual Studio Receive-SMS.sln. Řešení Visual Studio může obsahovat více projektů a více souborů. V tomto řešení je pouze jeden projekt: Receive-SMS.csproj a jeden soubor: Program.cs.
Použití projektu (video návod)
Následující video vysvětluje, jak projekt používat. Začíná otevřením Ozeki SMS Gateway a provede vás až k seznamu zpráv v příkazovém řádku. V průběhu uvidíte, jak kód přesouvá zprávy ze složky doručené pošty do projektu C/C++. Video je skvělé, protože obsahuje všechny kroky podrobně a je snadno pochopitelné. Budete potřebovat pouze 34 sekund na jeho shlédnutí a použijete dashboard Ozeki SMS Gateway, který je velmi intuitivní. Nebudete mít problém následovat tento návod.
Abychom to shrnuli
Tato příručka vám ukázala, jak přijímat SMS v C/C++ pomocí HTTP SMS API uživatele Ozeki SMS Gateway. S tímto řešením můžete zajistit, že příchozí zprávy budou přesměrovány SMS API a přijaty vaším programem v Scala. Váš seznam kontaktů a data jsou v bezpečí, protože Ozeki SMS Gateway běží v uzavřeném prostředí, které kontrolujete.
Pokračujte ve čtení o podobných tématech na webových stránkách Ozeki. Podívejte se na Jak smazat SMS v C/C++ a používejte poskytnuté kódy bez omezení.
Začněte pracovat stažením Ozeki SMS Gateway ještě dnes!
More information
- C/Cpp odeslání SMS pomocí HTTP REST API (ukázka kódu)
- C/Cpp odeslání více SMS pomocí HTTP REST API (ukázka kódu)
- C/Cpp naplánování SMS pomocí HTTP REST API (ukázka kódu)
- C/Cpp přijetí SMS pomocí HTTP REST API (ukázka kódu)
- C/Cpp smazání SMS pomocí HTTP REST API (ukázka kódu)
- Jak stáhnout nejnovější knihovnu C/Cpp SMS API z Githubu