Vill du skicka SMS programmatiskt med ditt eget telefonnummer? Istället för att betala för dyra operatörs-API:er kan du använda din Android-telefon som en SMS-gateway. Här är hur.

Konceptet

Traditionella SMS-API:er (Twilio, MessageBird) dirigerar meddelanden via telekomoperatörer. Du hyr ett telefonnummer och betalar per meddelande plus månadsavgifter.

En telefonbaserad SMS-gateway vänder på detta: din Android-telefon blir sändningsenheten. En server köar meddelanden, din telefon hämtar dem och skickar via sitt SIM-kort. Du behåller ditt eget nummer och betalar din operatörs SMS-taxa.

Vad du behöver

  • En Android-telefon (8.0+) med ett aktivt SIM-kort
  • Ett MySMSGate-konto (gratis att skapa)
  • MySMSGate Android-appen
  • WiFi eller mobildata för telefonen

Steg 1: Skapa ditt konto

Gå till mysmsgate.net/auth/register och registrera dig. Du får 10 gratis SMS att testa med – inget kreditkort behövs.

Efter registrering ser du din API-nyckel på kontrollpanelen. Kopiera den – du kommer att behöva den för appen och API-anropen.

Steg 2: Installera Android-appen

Ladda ner och installera MySMSGate-appen på din Android-telefon:

Öppna appen, gå till Gateway-inställningar och ange din API-nyckel. Appen kommer att ansluta till servern och visas som "online" på din kontrollpanel.

Steg 3: Skicka SMS via API

Nu kan du skicka SMS med ett enda API-anrop:

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;

Steg 4: Kontrollera leveransstatus

API:et returnerar ett SMS-ID som du kan använda för att kontrollera leveransstatus:

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

Statusar: pendingsendingsent (eller failed med felmeddelande).

Avancerat: Dubbla SIM & Flera enheter

Om din telefon har två SIM-kort kan du välja vilket du vill skicka från:

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
  }'

Du kan också ansluta flera telefoner till samma konto och dirigera meddelanden till specifika enheter:

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

Vad händer när telefonen är offline?

Meddelanden köas på servern. När telefonen återansluter hämtar den automatiskt väntande meddelanden och skickar dem. Servern skickar också en push-notifikation (FCM) för att väcka telefonen om den är i viloläge.

Kostnadsjämförelse

För 500 SMS/månad:

LeverantörMånadskostnad
Twilio$41+ (meddelanden + nummer + registrering)
MessageBird$35+
MySMSGate$15 (500 × $0.03, inga andra avgifter)

Det är en besparing på över $300 per år – och du behåller ditt eget telefonnummer.

Prova gratis – 10 SMS ingår, inget kreditkort krävs.