Help Center GMS API Compatibility

GMS API Compatibility

Sinusuportahan ng SMSBAT ang isang layer ng compatibility sa GMS API. Nagbibigay-daan ito sa iyong i-migrate ang iyong mga kasalukuyang pagsasama-sama na idinisenyo para sa GMS nang direkta sa SMSBAT nang hindi kinakailangang baguhin ang iyong mga schema sa pagruruta ng mensahe, mga istruktura ng payload, o mga tagapakinig ng callback.


Mga Setting ng Koneksyon

Upang iruta ang mga kahilingan sa pamamagitan ng SMSBAT, i-update ang base URL at mga kredensyal sa pagpapatunay sa iyong pagsasama:

  • Base URL: https://restapi.smsbat.com
  • Endpoint: POST /api/GMSMessage/send_message
  • Format ng Kahilingan: application/json
  • Authentication: HTTP Basic Authentication (gumagamit ng iyong SMSBAT API credentials)

Mga Parameter ng Kahilingan

Ang GMS compatibility API ay tumatanggap ng JSON object na may mga sumusunod na top-level na parameter:

ParameterUriKinakailanganPaglalarawan
numero_teleponostringOoNumero ng telepono ng tatanggap sa internasyonal na format (hal., 380501234567).
tagstringOoNakarehistrong pangalan ng nagpadala / pangalan ng alpha.
mga channelarrayOoListahan ng mga channel na susubukan, sa priority order. Mga sinusuportahang value: viber, sms, push. Hal., ["viber", "sms"].
channel_optionsbagayOoMapa na naglalaman ng mga opsyon para sa bawat aktibong channel (tingnan sa ibaba).
extra_idstringHindiAng iyong internal na customer-side message ID.
callback_urlstringHindiEndpoint URL sa iyong system upang makatanggap ng mga callback sa katayuan ng paghahatid.
division_codestringHindiOpsyonal na division code identifier (naka-default sa pangunahin).

Mga Setting ng Mga Pagpipilian sa Channel

Ang object na channel_options ay naglalaman ng mga configuration na tukoy sa channel.

Ginagamit kapag nakalista ang viber sa array ng channels.

ParameterUriKinakailanganPaglalarawan
tekstostringOoTeksto ng katawan ng mensahe.
ttlintegerOoTime-To-Live sa ilang segundo.
imgstringHindiPampublikong HTTPS URL ng larawang ipapakita.
captionstringHindiLabel ng text ng button.
aksyonstringHindiDestination URL kapag na-click ang button.
survey_optionsarrayHindiArray ng mga string (2 hanggang 5 item) na ipapakita bilang mga opsyon sa survey.
carousel_itemsarrayHindiArray ng mga slide object na ipapakita bilang isang Viber carousel (tingnan ang istraktura sa tab).

Halimbawa ng Kahilingan sa Viber:

{
  "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 ng Tugon

Ang endpoint ay nagbabalik ng mga tugon sa JSON format na may HTTP 200 OK na status code.

Matagumpay na Tugon

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

Mga Tugon sa Error

Kung nabigo ang pagpapatunay o pagpoproseso, isang tugon ng error na may hindi null na ErrorCode at detalyadong ErrorText ay ibabalik.

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

Format ng Paghahatid ng Callback

Kung ang callback_url ay tinukoy sa kahilingan, ang SMSBAT ay nagpapadala ng mga update sa katayuan ng paghahatid bilang JSON POST payload sa iyong endpoint.

Halimbawa ng Kahilingan sa Callback

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
}

Paglalarawan ng Mga Field ng Callback

PatlangUriPaglalarawan
numerostringNumero ng telepono ng tatanggap.
orasnumerotimestamp ng event sa Unix millisecond.
statusnumeroPinasimpleng status identifier (tingnan ang talahanayan ng Status code).
substatusnumeroDetalyadong status identifier (tingnan ang talahanayan ng Substatus code).
hyber_statusnumeroDetalyadong SMSBAT internal status code (tingnan ang Hyber Status table).
mensahe_idstringSMSBAT message ID (GUID) nabuo sa pagpapadala.
extra_idstringAng customer-side ID ay ibinigay sa orihinal na kahilingan.
pinadala_sa pamamagitan ngstringChannel na nagproseso ng mensahe: viber, sms, o rcs.
matching_template_idnumeroStatus ng pagtutugma ng template ng Viber (kung saan naaangkop).

Mga Status Mapping

1. Pinasimpleng Katayuan (status)

CodeIbig sabihin
1Tinanggap o inihahatid ang mensahe.
2Naihatid ang mensahe.
3Error sa pagproseso o paghahatid.

2. Detalyadong Katayuan (substatus)

CodeIbig sabihin
12Tinanggap para sa pagproseso.
23Naihatid.
24Nakita/nabasa.
35Hindi naihatid sa loob ng TTL (Expired).
36Error sa paghahatid.

3. Uri ng Channel (pinadala_via)

ChannelPaglalarawan
viberStatus na ginawa ng Viber channel.
smsKatayuan na ginawa ng SMS channel.
rcsStatus na ginawa ng RCS channel.

4. Detalyadong Status ng SMSBAT (hyber_status)

CodeChannelKatayuanSubstatusIbig sabihin
23033viber223Naihatid ang mensahe ng Viber.
24013viber224Ang mensahe ng Viber ay binasa ng tatanggap (Nakita).
36013viber336Panloob na error sa Viber.
36023viber336Di-wasto o hindi available ang Viber service ID.
36033viber336Di-wastong data ng payload ng Viber.
36037viber336Masyadong mahaba ang URL ng larawan ng Viber.
36038viber336Di-wastong URL ng larawan ng Viber.
36039viber336Masyadong mahaba ang Viber text.
36044viber336Walang laman ang text ng Viber.
36053viber336Hindi sinusuportahang uri ng mensahe ng Viber.
36063viber336Di-wastong mga parameter ng Viber.
36073viber336Timeout ng Viber provider.
36083viber336Ang nagpadala ng Viber ay hinarang ng tatanggap.
36093viber336Ang tatanggap ay hindi nakarehistro bilang isang gumagamit ng Viber.
36103viber336Walang nakitang Android/iOS device na may suporta sa Viber.
36113viber336Hindi awtorisadong IP address para sa pagpapadala ng Viber.
36123viber336May nakitang duplicate na mensahe ng Viber.
36143viber336Error sa pagsingil sa Viber.
36153viber336Na-block ang mensahe ng blacklist ng platform.
36163viber336Error sa panloob na pagproseso ng Viber platform.
36173viber336Mali o nawawala ang label ng Viber.
36183viber336Di-wastong halaga ng Viber TTL.
12011sms / rcs112Tinanggap ang SMS/RCS.
36011sms / rcs112SMS/RCS papunta.
23011sms / rcs223Naihatid ang SMS/RCS.
35015sms / rcs335Nag-expire ang SMS/RCS (hindi naihatid sa loob ng TTL).
36021sms / rcs336Ang mensahe ng SMS/RCS ay tinanggal.
36031sms / rcs336Hindi maihatid ang SMS/RCS.
36041sms / rcs336Hindi kilalang katayuan ng paghahatid ng SMS/RCS.
36051sms / rcs336Tinanggihan ang mensahe ng SMS/RCS.