Jak smazat SMS v JavaScriptu

Nejjednodušší způsob, jak smazat SMS z JavaScriptu, je použít vestavěné HTTP/Rest SMS API Ozeki SMS Gateway. Když použijete toto API, smažete SMS zprávy odesláním HTTP POST požadavku na SMS bránu. HTTP POST požadavek vrátí odpověď HTTP 200 OK na váš požadavek a ID zprávy(y), která byla smazána.

jak smazat sms v javascriptu
Obrázek 1 - Jak smazat SMS v JavaScriptu

JavaScript kód pro smazání SMS do mobilu

Ukázka JavaScript kódu pro SMS níže ukazuje, jak můžete smazat SMS zprávy pomocí HTTP REST SMS API Ozeki SMS Gateway s využitím knihovny JavaScript Ozeki.Libs.Rest. Tato knihovna je poskytována zdarma a můžete ji používat a upravovat v jakémkoli z vašich projektů.

DeleteSms.php
<?php
    header("Access-Control-Allow-Origin: *");
    header('Access-Control-Allow-Credentials: true');
    header('Access-Control-Max-Age: 86400');
    header("Access-Control-Allow-Headers: Authorization, Accept, Content-Type");
    header("Access-Control-Allow-Methods: GET, POST, OPTIONS"); 
?>

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Smazání SMS pomocí Ozeki SMS Gateway</title>
        <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
        <link rel="stylesheet" href="DeleteSms.css">
    </head>
    <body>

        <div class="form-container">
            <b>ID:</b>
            <input class="form-control" type="text" id="ID" placeholder="fcfaf789-1bb9-bad2-9486-f68be5e1d065">
            <b>Složka:</b>
            <select class="form-select" id="folder">
                <option value="inbox">Doručené</option>
                <option value="outbox">Odchozí</option>
                <option value="sent">Odeslané</option>
                <option value="notsent">Neodeslané</option>
                <option value="deleted">Smazané</option>
            </select>
            <button class="btn btn-primary" id="btnDelete">
                <b>SMAZAT</b>
            </button>
        </div>

        <div class="card log-container">
            <ul class="log" id="container">
                <li class="list-group-item"><b>Protokoly:</b></li>
            </ul> 
        </div>

        <script type="module">
            import { Configuration, Message, MessageApi, Folder } from "./Ozeki.Libs.Rest.js";

            var btnDelete = document.getElementById("btnDelete");
                        
            var configuration = new Configuration();
            configuration.Username = 'http_user';
            configuration.Password = 'qwe123';
            configuration.ApiUrl = 'http://127.0.0.1:9509/api';

            var api = new MessageApi(configuration);

            btnDelete.addEventListener("click", async function() {
                if (document.getElementById("ID").value != '') {
                    var msg = new Message();
                    msg.ID = document.getElementById("ID").value;
                    
                    var folder;

                    var folderName = document.getElementById('folder').value;

                    if (folderName == 'inbox') {
                        folder = Folder.Inbox;
                    } else if (folderName == 'outbox') {
                        folder = Folder.Outbox;
                    } else if (folderName == 'sent') {
                        folder = Folder.Sent;
                    } else if (folderName == 'notsent') {
                        folder = Folder.NotSent;
                    } else {
                        folder = Folder.Deleted;
                    }

                    let result = await api.Delete(folder, msg);

                    document.getElementById('ID').value = '';
                    document.getElementById('folder').value = 'inbox';

                    document.getElementById('container').innerHTML += `<li class="list-group-item">${result}</li>`;
                }
            });
        </script>
    </body>
</html>
	

Jak použít ukázku JavaScript SMS:

Tato ukázka JavaScript SMS může být použita v jakékoli webové aplikaci. Pro použití je nutné přidat Ozeki.Libs.Rest.js do vašeho projektu. Poté, co je přidána do vašeho projektu, musíte vložit direktivu import {MessageApi, Configuration} from './Ozeki.Libs.Rest.js'; do hlavičkové části vašeho zdrojového kódu JavaScript. To vám umožní používat třídy poskytované knihovnou Ozeki.Libs.Rest. Třídu Message můžete použít k vytvoření SMS. Třídu MessageApi můžete použít k odeslání SMS na SMS bránu. SMS brána přepošle vaši zprávu do mobilní sítě buď prostřednictvím bezdrátového připojení nebo přes internet.

Stáhnout DeleteSms.js

Zdrojový kód vysvětlený v tomto článku lze stáhnout, použít a upravit zdarma.
Stáhnout: DeleteSms.js.zip (5.52Kb)

Co je v souboru DeleteSms.js.zip?

Soubor DeleteSms.js.zip obsahuje knihovnu Ozeki.Libs.Rest, která vám poskytuje všechny nástroje potřebné pro odesílání a přijímání SMS zpráv. Najdete zde také projekt DeleteSms, který obsahuje ukázkový kód, který vám ukáže, jak odeslat SMS. Tento ukázkový kód je uveden níže.

složka s delete sms js
Obrázek 2 - Co je uvnitř DeleteSms.js.zip

Jak smazat SMS z JavaScriptu (Jednoduchý návod)

Pro smazání SMS z JavaScriptu:

  1. Nainstalujte HTTP API uživatele
  2. Povolte Logování komunikačních událostí na kartě Pokročilé
  3. Nastavte WampServer
  4. Stáhněte a rozbalte soubor DeleteSms.js.zip
  5. Vložte obsah zip souboru do složky \www\ wampserveru: C:\wamp64\www
  6. Spusťte aplikaci Ozeki SMS Gateway
  7. Otevřete webovou stránku zadáním http://localhost/DeleteSms.php do prohlížeče
  8. Po otevření webové stránky můžete odeslat SMS kliknutím na tlačítko DownloadIncoming
  9. Zkontrolujte logy, zda byla SMS odeslána

Instalace Ozeki SMS Gateway a vytvoření HTTP API uživatele

Pro odesílání SMS z JavaScriptu je nejprve nutné nainstalovat Ozeki SMS Gateway. SMS bránu lze nainstalovat na stejný počítač, kde vyvíjíte svůj JavaScriptový 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 připojení k mobilní síti funguje. Posledním krokem k přípravě prostředí je vytvoření HTTP SMS API uživatele. 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 JavaScriptový kód.

HTTP API URL pro smazání SMS z JavaScriptu

Pro odesílání SMS z JavaScriptu musí váš JavaScript 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án na stejném počítači, kde běží JavaScriptová SMS aplikace, může to být 127.0.0.1. Pokud je nainstalován na jiném počítači, měla by to být IP adresa tohoto počítače.

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

HTTP autentizace pro smazání SMS z JavaScriptu

Pro ověření JavaScriptového 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 JavaScriptu můžete pro toto kódování použít následující kód:

// Base64 enkodér najdete v souboru Ozeki.Libs.Rest.js 
var usernamePassword = username + ":" + password;
return `Basic ${Base64.encode(usernamePassword)}`;
	

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 hlavička požadavku pro smazání SMS z JavaScriptu

Pro odeslání SMS zpráv je nutné do HTTP požadavku zahrnout následující řádky jako hlavičky. Poznámka: zahrnujeme hlavičku Content-Type a Authorization.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
	

HTTP požadavek pro odeslání SMS z JavaScriptu

Pro odeslání SMS vaše JavaScriptová aplikace odešle HTTP požadavek podobný tomuto níže. Poznámka: tento požadavek obsahuje část HTTP hlavičky a část těla. Část těla obsahuje složku, která obsahuje naši zprávu(y), a ID(y) zprávy(y) v JSON řetězci.

POST /api?action=deletemsg HTTP/1.1
Connection: Keep-Alive
Content-Length: 73
Content-Type: application/json
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509
  
{
    "folder":  "inbox",
    "message_ids": [
        "3a922414-458f-4866-a8ee-f053d1132a6b"
    ]
}
	

HTTP odpověď přijatá JavaScriptovým SMS příkladem

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é JSON kódovanou strukturu s užitečnými detaily o odeslání zprávy.

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.116 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Mon, 07 Jun 2021 14:10:25 GMT
Server: 10/10.3.116
Transfer-Encoding: chunked
{
    "http_code": 200,
    "response_code": "SUCCESS",
    "response_msg": "",
    "data": {
        "folder": "inbox",
        "message_ids": [
            "3a922414-458f-4866-a8ee-f053d1132a6b"
        ]
    }
}
	

Jak smazat SMS z JavaScriptu pomocí JavaScriptové SMS API (Video návod)

Toto video vám ukáže, jak stáhnout soubor DeleteSms.js.zip z této stránky. Pokud se podíváte na video, všimnete si, že obsah DeleteSms.js zipu je umístěn do složky \www\ WampServeru. Uvidíte také, že spouštíme WampServer dvojitým kliknutím na jeho ikonu, a poté zadáme http://localhost:8080/DeleteSms.php do webového prohlížeče.

Níže uvedený ukázkový kód je součástí souboru PHP DeleteSms.php. Kromě toho uvidíte další dva soubory s názvem DeleteSms.css a Ozeki.Libs.Rest.js.

  • Soubor Ozeki.Libs.Rest.js obsahuje všechny potřebné nástroje pro odesílání, mazání, označování a příjem SMS zpráv.
  • DeleteSms.php obsahuje kód JavaScriptu a některé hlavičky, které nám umožní odesílat HTTP požadavky bez chyb CORS.
  • DeleteSms.css obsahuje stylopisy pro webovou stránku.

jak smazat SMS pomocí JavaScriptu
Obrázek 3 - DeleteSms.php

Jak ověřit, že SMS byla přijata HTTP uživatelem (Video návod)

Po odeslání SMS je dobré zkontrolovat vaši SMS bránu, abyste viděli, co přijala. Protokol můžete zkontrolovat otevřením detailů HTTP uživatele v konzoli pro správu Ozeki SMS Gateway. Následující video vám ukáže, na co se zaměřit. Video začne otevřeným kódem a skončí detaily odeslané zprávy. Dozvíte se, jak projekt spustit, jak projekt vypadá při běhu a jak vypadá soubor protokolu po jeho dokončení. Video je dlouhé pouze 42 sekund a je snadno srozumitelné. Nebudete mít problém jej sledovat.

Video 2 - Jak smazat SMS pomocí výše uvedeného kódu JavaScriptu (Video návod)

Závěrečné myšlenky

Výše uvedený článek ukazuje kroky pro mazání SMS zpráv v programu JavaScript pomocí HTTP uživatele Ozeki SMS Gateway. Udržování vyváženého a čistého úložiště zpráv je důležité, pokud musíte denně pracovat s velkým množstvím SMS zpráv a chcete zůstat profesionální. Správa Ozeki SMS Gateway je jednoduchá s kódy JavaScriptu a nabízí několik možností reportingu, které poskytují více informací o SMS připojení.

Pokračujte ve studiu, dozvíte se více o věcech, jako je JavaScript SMS API na webu Ozeki. Je užitečné přečíst si návod o Jak stáhnout nejnovější knihovnu JavaScript SMS API z Githubu.

Dalším úkolem je stáhnout Ozeki SMS Gateway a začít pracovat!

More information