Chcesz wysyłać SMS-y programowo, używając własnego numeru telefonu? Zamiast płacić za drogie API operatorów, możesz wykorzystać swój telefon z Androidem jako bramkę SMS. Oto jak to zrobić.

Koncepcja

Tradycyjne API SMS (Twilio, MessageBird) kierują wiadomości przez operatorów telekomunikacyjnych. Wynajmujesz numer telefonu i płacisz za każdą wiadomość plus miesięczne opłaty.

Bramka SMS oparta na telefonie zmienia to podejście: Twój telefon z Androidem staje się urządzeniem wysyłającym. Serwer kolejkuje wiadomości, Twój telefon je odbiera i wysyła za pośrednictwem karty SIM. Zachowujesz swój numer i płacisz stawkę SMS swojego operatora.

Czego potrzebujesz

  • Telefon z Androidem (8.0+) z aktywną kartą SIM
  • Konto MySMSGate (darmowe do założenia)
  • Aplikacja MySMSGate na Androida
  • WiFi lub dane mobilne dla telefonu

Krok 1: Załóż konto

Przejdź do mysmsgate.net/auth/register i zarejestruj się. Otrzymasz 10 darmowych SMS-ów do przetestowania — karta kredytowa nie jest wymagana.

Po rejestracji zobaczysz swój klucz API na pulpicie nawigacyjnym. Skopiuj go — będzie potrzebny do aplikacji i wywołań API.

Krok 2: Zainstaluj aplikację na Androida

Pobierz i zainstaluj aplikację MySMSGate na swoim telefonie z Androidem:

Otwórz aplikację, przejdź do ustawień bramki (Gateway settings) i wprowadź swój klucz API. Aplikacja połączy się z serwerem i będzie widoczna jako „online” na Twoim pulpicie nawigacyjnym.

Krok 3: Wysyłaj SMS-y przez API

Teraz możesz wysyłać SMS-y za pomocą pojedynczego wywołania API:

cURL

curl -X POST https://mysmsgate.net/api/v1/send \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+1234567890",
    "message": "Your appointment is tomorrow at 3 PM"
  }'

Python

import requests

response = requests.post(
    "https://mysmsgate.net/api/v1/send",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    json={
        "to": "+1234567890",
        "message": "Your appointment is tomorrow at 3 PM"
    }
)
print(response.json())

JavaScript (Node.js)

const response = await fetch("https://mysmsgate.net/api/v1/send", {
    method: "POST",
    headers: {
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        to: "+1234567890",
        message: "Your appointment is tomorrow at 3 PM"
    })
});
const data = await response.json();
console.log(data);

PHP

$ch = curl_init("https://mysmsgate.net/api/v1/send");
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer YOUR_API_KEY",
        "Content-Type: application/json"
    ],
    CURLOPT_POSTFIELDS => json_encode([
        "to" => "+1234567890",
        "message" => "Your appointment is tomorrow at 3 PM"
    ]),
    CURLOPT_RETURNTRANSFER => true
]);
$response = curl_exec($ch);
echo $response;

Krok 4: Sprawdź status dostarczenia

API zwraca identyfikator SMS, którego możesz użyć do sprawdzenia statusu dostarczenia:

curl https://mysmsgate.net/api/v1/sms?id=SMS_ID \
  -H "Authorization: Bearer YOUR_API_KEY"

Statusy: pendingsendingsent (lub failed z komunikatem o błędzie).

Zaawansowane: Dual SIM i wiele urządzeń

Jeśli Twój telefon ma dwie karty SIM, możesz wybrać, z której chcesz wysłać wiadomość:

curl -X POST https://mysmsgate.net/api/v1/send \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+1234567890",
    "message": "Hello!",
    "sim_slot": 1
  }'

Możesz także podłączyć wiele telefonów do tego samego konta i kierować wiadomości do konkretnych urządzeń:

{
  "to": "+1234567890",
  "message": "Hello!",
  "device_id": "your-device-id"
}

Co się dzieje, gdy telefon jest offline?

Wiadomości są kolejkowane na serwerze. Kiedy telefon ponownie się połączy, automatycznie odbiera oczekujące wiadomości i je wysyła. Serwer wysyła również powiadomienie push (FCM), aby wybudzić telefon, jeśli jest w trybie uśpienia.

Porównanie kosztów

Dla 500 SMS-ów miesięcznie:

DostawcaMiesięczny koszt
Twilio$41+ (wiadomości + numer + rejestracja)
MessageBird$35+
MySMSGate$15 (500 × $0.03, brak innych opłat)

To ponad 300 USD oszczędności rocznie — a Ty zachowujesz swój własny numer telefonu.

Wypróbuj za darmo — 10 SMS-ów w zestawie, bez wymaganej karty kredytowej.