Help Center Kompatibilnost GMS API-ja

Kompatibilnost GMS API-ja

SMSBAT podržava sloj kompatibilnosti sa GMS API. Ovo vam omogućava da migrirate svoje postojeće integracije dizajnirane za GMS direktno na SMSBAT bez potrebe za izmjenom vaših šema rutiranja poruka, strukture korisnog opterećenja ili slušatelja povratnog poziva.


Postavke veze

Za usmjeravanje zahtjeva putem SMSBAT-a, ažurirajte osnovni URL i vjerodajnice za autentifikaciju u svojoj integraciji:

  • Osnovni URL: https://restapi.smsbat.com
  • Krajnja tačka: POST /api/GMSMessage/send_message
  • Format zahtjeva: application/json
  • Authentication: HTTP Basic Authentication (koristi vaše SMSBAT API vjerodajnice)

Parametri zahtjeva

GMS kompatibilni API prihvaća JSON objekt sa sljedećim parametrima najviše razine:

ParametarVrstaObaveznoOpis
telefonski brojstringDaTelefonski broj primaoca u međunarodnom formatu (npr. 380501234567).
oznakastringDaRegistrirano ime pošiljaoca / alfa ime.
kanalinizDaLista kanala koje treba isprobati, po prioritetu. Podržane vrijednosti: viber, sms, push. Npr., ["viber", "sms"].
channel_optionsobjektDaMapa koja sadrži opcije za svaki aktivni kanal (pogledajte ispod).
extra_idstringNeVaš interni ID poruke na strani korisnika.
callback_urlstringNeURL krajnje tačke na vašem sistemu za primanje povratnih poziva statusa isporuke.
šifra_podjelastringNeOpcijski identifikator koda podjele (zadano na glavni).

Postavke kanala

Objekt channel_options sadrži konfiguracije specifične za kanal.

Koristi se kada je viber naveden u nizu channels.

ParametarVrstaObaveznoOpis
tekststringDaTekst tijela poruke.
ttlcijeli brojDaVrijeme za život u sekundama.
imgstringNeJavni HTTPS URL slike za prikaz.
naslovstringNeOznaka teksta dugmeta.
akcijastringNeOdredišni URL kada se klikne na dugme.
opcije_anketenizNeNiz nizova (2 do 5 stavki) za prikaz kao opcije ankete.
carousel_itemsnizNeNiz objekata slajda za prikaz kao Viber vrtuljak (pogledajte strukturu na kartici).

Primjer Viber zahtjeva:

{
  "phone_number": "380501234567",
  "tag": "MySender",
  "channels": ["viber"],
  "channel_options": {
    "viber": {
      "text": "Hello from SMSBAT!",
      "ttl": 60,
      "img": "https://www.example.com/image.png",
      "caption": "Open",
      "action": "https://www.example.com"
    }
  }
}

Format odgovora

Krajnja tačka vraća odgovore u JSON formatu sa statusnim kodom HTTP 200 OK.

Uspješan odgovor

{
  "MessageId": "6f0d5e28-7f3a-4df3-91a2-3d58d9e09b9a",
  "ErrorCode": null,
  "ErrorText": null
}

Odgovori na greške

Ako provjera valjanosti ili obrada ne uspije, bit će vraćen odgovor na grešku s ErrorCode koji nije nulti i detaljnim ErrorText.

{
  "MessageId": "00000000-0000-0000-0000-000000000000",
  "ErrorCode": 10221,
  "ErrorText": "This type of Message is not supported by the system"
}

Format isporuke povratnog poziva

Ako je callback_url naveden u zahtjevu, SMSBAT šalje ažuriranja statusa isporuke kao JSON POST korisni teret vašoj krajnjoj tački.

Primjer zahtjeva za povratnim pozivom

POST /your-callback-endpoint HTTP/1.1
Host: yoursystem.com
Content-Type: application/json

{
  "number": "380501234567",
  "time": 1719237600000,
  "status": 2,
  "substatus": 23,
  "hyber_status": 23033,
  "message_id": "6f0d5e28-7f3a-4df3-91a2-3d58d9e09b9a",
  "extra_id": "ORDER-12345",
  "sent_via": "viber",
  "matching_template_id": 0
}

Opis polja povratnog poziva

PoljeVrstaOpis
brojstringBroj telefona primaoca.
vrijemebrojVremenska oznaka događaja u Unix milisekundama.
statusbrojPojednostavljeni identifikator statusa (pogledajte tabelu statusnih kodova).
podstatusbrojDetaljni identifikator statusa (pogledajte tabelu kodova podstatusa).
hyber_statusbrojDetaljan SMSBAT interni statusni kod (pogledajte tabelu Hyber statusa).
message_idstringID SMSBAT poruke (GUID) generiran prilikom slanja.
extra_idstringID na strani korisnika naveden u originalnom zahtjevu.
sent_viastringKanal koji je obradio poruku: viber, sms ili rcs.
matching_template_idbrojStatus podudaranja Viber šablona (gdje je primjenjivo).

Mapiranja statusa

1. Pojednostavljeni status (status)

ŠifraZnačenje
1Poruka je prihvaćena ili se dostavlja.
2Poruka isporučena.
3Greška u obradi ili isporuci.

2. Detaljan status (podstatus)

ŠifraZnačenje
12Prihvaćeno na obradu.
23Isporučeno.
24Viđeno/pročitano.
35Nije isporučeno unutar TTL-a (isteklo).
36Greška u isporuci.

3. Vrsta kanala (sent_via)

KanalOpis
viberStatus producira Viber kanal.
smsStatus proizvodi SMS kanal.
rcsStatus proizveden od strane RCS kanala.

4. Detaljan SMSBAT status (hyber_status)

ŠifraKanalStatusPodstatusZnačenje
23033viber223Viber poruka dostavljena.
24013viber224Viber poruku je pročitao primalac (Viđeno).
36013viber336Viber interna greška.
36023viber336Nevažeći ili nedostupni ID usluge Viber.
36033viber336Nevažeći podaci o korisnom učitavanju Vibera.
36037viber336URL slike Vibera je predugačak.
36038viber336Nevažeći URL Viber slike.
36039viber336Viber tekst je predugačak.
36044viber336Prazan Viber tekst.
36053viber336Nepodržana vrsta Viber poruke.
36063viber336Nevažeći Viber parametri.
36073viber336Vremensko ograničenje Viber provajdera.
36083viber336Viber pošiljalac blokiran od strane primaoca.
36093viber336Primalac nije registrovan kao Viber korisnik.
36103viber336Nije pronađen nijedan Android/iOS uređaj sa podrškom za Viber.
36113viber336Neovlaštena IP adresa za slanje putem Vibera.
36123viber336Otkrivena je duplirana Viber poruka.
36143viber336Viber greška u naplati.
36153viber336Poruka blokirana crnom listom platforme.
36163viber336Greška interne obrade Viber platforme.
36173viber336Pogrešna ili nedostaje Viber oznaka.
36183viber336Nevažeća Viber TTL vrijednost.
12011sms / rcs112SMS/RCS prihvaćen.
36011sms / rcs112SMS/RCS na putu.
23011sms / rcs223SMS/RCS isporučen.
35015sms / rcs335SMS/RCS je istekao (nije isporučen unutar TTL-a).
36021sms / rcs336SMS/RCS poruka je izbrisana.
36031sms / rcs336SMS/RCS se ne može isporučiti.
36041sms / rcs336Nepoznat status isporuke SMS/RCS.
36051sms / rcs336SMS/RCS poruka je odbijena.