შიგთავსზე გადასვლა

GMS API თავსებადობა

SMSBAT მხარს უჭერს თავსებადობის ფენას GMS API-თან. ეს საშუალებას გაძლევთ გადაიტანოთ თქვენი არსებული ინტეგრაციები, რომლებიც შექმნილია GMS-ისთვის პირდაპირ SMSBAT-ზე, თქვენი შეტყობინებების მარშრუტიზაციის სქემების, დატვირთვის სტრუქტურების ან გამოძახების მსმენელების შეცვლის გარეშე.


კავშირის პარამეტრები

SMSBAT-ის მეშვეობით მოთხოვნების გადასატანად, განაახლეთ საბაზისო URL და ავთენტიფიკაციის სერთიფიკატები თქვენს ინტეგრაციაში:

  • ** საბაზისო URL: ** https://restapi.smsbat.com
  • ბოლო წერტილი: POST /api/GMSMessage/send_message
  • ** მოთხოვნის ფორმატი: ** აპლიკაცია/json
  • ** ავტორიზაცია: ** HTTP ძირითადი ავთენტიფიკაცია (იყენებს თქვენს SMSBAT API სერთიფიკატებს)

მოითხოვეთ პარამეტრები

GMS თავსებადობის API იღებს JSON ობიექტს ზედა დონის შემდეგი პარამეტრებით:

პარამეტრი ტიპი საჭირო აღწერა
ტელეფონის_ნომერი სიმებიანი დიახ მიმღების ტელეფონის ნომერი საერთაშორისო ფორმატში (მაგ., 380501234567).
ტეგი სიმებიანი დიახ რეგისტრირებული გამგზავნის სახელი / ალფა სახელი.
არხები მასივი დიახ გასასინჯი არხების სია, პრიორიტეტული თანმიმდევრობით. მხარდაჭერილი მნიშვნელობები: viber, sms, push. მაგ., `["viber", "sms"]".
არხის_ოფციები ობიექტი დიახ რუკა, რომელიც შეიცავს ვარიანტებს თითოეული აქტიური არხისთვის (იხ. ქვემოთ).
extra_id სიმებიანი არა თქვენი შიდა მომხმარებლის მხრიდან შეტყობინების ID.
დარეკვის_url სიმებიანი არა ბოლო წერტილის URL თქვენს სისტემაზე მიწოდების სტატუსის გამოხმაურებების მისაღებად.
განყოფილების_კოდი სიმებიანი არა არჩევითი გაყოფის კოდის იდენტიფიკატორი (ნაგულისხმევი "მთავარი").

არხის პარამეტრების პარამეტრები

channel_options ობიექტი შეიცავს არხის სპეციფიკურ კონფიგურაციებს.

გამოიყენება, როდესაც viber ჩამოთვლილია `არხების~ მასივში.

პარამეტრი ტიპი საჭირო აღწერა
ტექსტი სიმებიანი დიახ შეტყობინების ტექსტი.
ttl მთელი რიცხვი დიახ Time-to-Live წამებში.
img სიმებიანი არა გამოსახულების საჯარო HTTPS URL საჩვენებელი.
წარწერა სიმებიანი არა ღილაკის ტექსტური ეტიკეტი.
მოქმედება სიმებიანი არა დანიშნულების URL, როდესაც დააჭირეთ ღილაკს.
გამოკითხვის_ოფციები მასივი არა სტრიქონების მასივი (2-დან 5-მდე ელემენტი) გამოკითხვის ვარიანტად გამოსატანად.
კარუსელის_ნივთები მასივი არა სლაიდის ობიექტების მასივი Viber-ის კარუსელის სახით გამოსატანად (იხ. სტრუქტურა ჩანართში).

** 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"
    }
  }
}

რთავს Viber შეტყობინებების გაგზავნას ავტომატური SMS შებრუნებით, თუ Viber-ის მიწოდება ვერ ხერხდება TTL-ის ფარგლებში.

** სარეზერვო მოთხოვნის მაგალითი: **

{
  "phone_number": "380501234567",
  "tag": "MySender",
  "channels": ["viber", "sms"],
  "channel_options": {
    "viber": {
      "text": "Your order is ready!",
      "ttl": 60,
      "caption": "Details",
      "action": "https://www.example.com/order"
    },
    "sms": {
      "text": "Your order is ready: https://www.example.com/order",
      "alpha_name": "MySender",
      "ttl": 60,
      "ctr": false
    }
  }
}

გამოიყენება, როდესაც sms ჩამოთვლილია არხების მასივში.

პარამეტრი ტიპი საჭირო აღწერა
ტექსტი სიმებიანი დიახ შეტყობინების ტექსტი.
ალფა_სახელი სიმებიანი დიახ გამგზავნის ალფა სახელი.
ttl მთელი რიცხვი დიახ Time-to-Live წამებში.
ctr ლოგიკური არა ჩართეთ CTR დაწკაპუნების თვალყურის დევნება ტექსტში ბმულებზე (true/false).

** SMS მოთხოვნის მაგალითი: **

{
  "phone_number": "380501234567",
  "tag": "MySender",
  "channels": ["sms"],
  "channel_options": {
    "sms": {
      "text": "Your verification code is 1234",
      "alpha_name": "MySender",
      "ttl": 60,
      "ctr": false
    }
  }
}

გამოიყენება Viber-ის გამოკითხვებისა და გამოკითხვების შესაქმნელად.

გაფრთხილება

Viber-ის კვლევის კონფიგურაციას უნდა ჰქონდეს 2-დან 5-მდე ვარიანტი `გამოკითხვის_ოფციების~ შიგნით.

გამოკითხვის მოთხოვნის მაგალითი:

{
  "phone_number": "380501234567",
  "tag": "MySender",
  "channels": ["viber"],
  "channel_options": {
    "viber": {
      "text": "Please rate our service:",
      "ttl": 60,
      "survey_options": [
        "Excellent",
        "Good",
        "Bad"
      ]
    }
  }
}

გამოიყენება გამოსახულების სლაიდის ბარათების გასაგზავნად. თითოეული სლაიდი მხარს უჭერს სურათს, სათაურს და ღილაკებს.

** კარუსელის მოთხოვნის მაგალითი:**

{
  "phone_number": "380501234567",
  "tag": "MySender",
  "channels": ["viber"],
  "channel_options": {
    "viber": {
      "text": "Choose an offer",
      "ttl": 60,
      "carousel_items": [
        {
          "title": "Offer 1",
          "image_url": "https://www.example.com/offer-1.png",
          "primary_label": "Open",
          "primary_url": "https://www.example.com/offer-1",
          "secondary_label": "More",
          "secondary_url": "https://www.example.com/offers"
        },
        {
          "title": "Offer 2",
          "image_url": "https://www.example.com/offer-2.png",
          "primary_label": "Open",
          "primary_url": "https://www.example.com/offer-2"
        }
      ]
    }
  }
}

გამოიყენება მაშინ, როდესაც ბიძგი ჩამოთვლილია `არხების~ მასივში.

პარამეტრი ტიპი საჭირო აღწერა
სათაური სიმებიანი დიახ Push შეტყობინების სათაურის ტექსტი.
ტექსტი სიმებიანი დიახ შეტყობინების ტექსტი.
ttl მთელი რიცხვი დიახ Time-to-Live წამებში.
img სიმებიანი არა გამოსახულების საჯარო HTTPS URL საჩვენებელი.
წარწერა სიმებიანი არა ღილაკის ტექსტური ეტიკეტი.
მოქმედება სიმებიანი არა დანიშნულების URL, როდესაც დააჭირეთ ღილაკს.
ctr ლოგიკური არა ჩართეთ დაწკაპუნების თვალყურის დევნება.

** Push-ის მოთხოვნის მაგალითი:**

{
  "phone_number": "380501234567",
  "tag": "MySender",
  "channels": ["push"],
  "channel_options": {
    "push": {
      "title": "Order update",
      "text": "Your order is ready for pickup!",
      "ttl": 60,
      "img": "https://www.example.com/push.png",
      "caption": "Open",
      "action": "https://www.example.com/order",
      "ctr": false
    }
  }
}


პასუხის ფორმატი

საბოლოო წერტილი აბრუნებს პასუხებს JSON ფორმატში HTTP 200 OK სტატუსის კოდით.

წარმატებული პასუხი

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

შეცდომის პასუხები

თუ ვალიდაცია ან დამუშავება ვერ მოხერხდა, დაბრუნდება შეცდომის პასუხი არა null ErrorCode და დეტალური ErrorText.

{
  "MessageId": "00000000-0000-0000-0000-000000000000",
  "ErrorCode": 10221,
  "ErrorText": "This type of Message is not supported by the system"
}
{
  "MessageId": "00000000-0000-0000-0000-000000000000",
  "ErrorCode": 10221,
  "ErrorText": "There can be from 2 to 5 survey options."
}
{
  "MessageId": "00000000-0000-0000-0000-000000000000",
  "ErrorCode": 400,
  "ErrorText": "Cannot send to international number: alpha name 'ALPHA' is not registered."
}
{
  "MessageId": "00000000-0000-0000-0000-000000000000",
  "ErrorCode": 500,
  "ErrorText": "Internal server error."
}

გამოძახების მიწოდების ფორმატი

თუ მოთხოვნაში „callback_url“ იყო მითითებული, SMSBAT აგზავნის მიწოდების სტატუსის განახლებებს JSON POST დატვირთვის სახით თქვენს ბოლო წერტილში.

გამოძახების მოთხოვნის მაგალითი

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
}

გამოძახების ველების აღწერა

ველი ტიპი აღწერა
ნომერი სიმებიანი მიმღების ტელეფონის ნომერი.
დრო ნომერი მოვლენის დროის ანაბეჭდი Unix მილიწამებში.
სტატუსს ნომერი გამარტივებული სტატუსის იდენტიფიკატორი (იხ. სტატუსის კოდის ცხრილი).
ქვესტატუსი ნომერი დეტალური სტატუსის იდენტიფიკატორი (იხ. ქვესტატუსის კოდის ცხრილი).
ჰიბერ_სტატუსი ნომერი დეტალური SMSBAT შიდა სტატუსის კოდი (იხ. Hyber Status ცხრილი).
message_id სიმებიანი გაგზავნისას გენერირებული SMSBAT შეტყობინების ID (GUID).
extra_id სიმებიანი თავდაპირველ მოთხოვნაში მითითებული მომხმარებლის მხარის ID.
გაგზავნის_მიმართვა სიმებიანი არხი, რომელმაც დაამუშავა შეტყობინება: viber, sms, ან rcs.
შესაბამისი_თარგის_იდენტიფიკატორი ნომერი Viber-ის შაბლონის შესაბამისობის სტატუსი (სადაც შესაძლებელია).

სტატუსის რუქები

1. გამარტივებული სტატუსი ('სტატუსები')

კოდი მნიშვნელობა
1 შეტყობინება მიღებულია ან მიწოდებულია.
2 შეტყობინება მიწოდებულია.
3 დამუშავების ან მიწოდების შეცდომა.

2. დეტალური სტატუსი ("ქვესტატუსები")

კოდი მნიშვნელობა
12 მიღებულია დასამუშავებლად.
23 მიწოდებული.
24 ნანახი/წაკითხული.
35 არ არის მიწოდებული TTL-ის ფარგლებში (ვადაგასული).
36 მიწოდების შეცდომა.

3. არხის ტიპი (`გაგზავნილი_მეშვეობით“)

არხი აღწერა
viber სტატუსი დამზადებულია Viber არხის მიერ.
sms სტატუსი დამზადებულია SMS არხის მიერ.
rcs სტატუსი დამზადებულია RCS არხის მიერ.

4. დეტალური SMSBAT სტატუსი ('hyber_status')

კოდი არხი სტატუსი სუბსტატუსი მნიშვნელობა
23033 viber 2 23 მიწოდებულია Viber შეტყობინება.
24013 viber 2 24 მიმღების მიერ წაკითხული Viber შეტყობინება (ნახულია).
36013 viber 3 36 Viber-ის შიდა შეცდომა.
36023 viber 3 36 არასწორი ან მიუწვდომელი Viber სერვისის ID.
36033 viber 3 36 არასწორი Viber payload მონაცემები.
36037 viber 3 36 Viber სურათის URL ძალიან გრძელია.
36038 viber 3 36 არასწორი Viber სურათის URL.
36039 viber 3 36 Viber ტექსტი ძალიან გრძელია.
36044 viber 3 36 ცარიელი Viber ტექსტი.
36053 viber 3 36 მხარდაუჭერელი Viber შეტყობინების ტიპი.
36063 viber 3 36 არასწორი Viber პარამეტრები.
36073 viber 3 36 Viber-ის პროვაიდერის დრო ამოიწურა.
36083 viber 3 36 Viber-ის გამგზავნი დაბლოკილია მიმღების მიერ.
36093 viber 3 36 მიმღები არ არის რეგისტრირებული, როგორც Viber მომხმარებელი.
36103 viber 3 36 ვერ მოიძებნა Android/iOS მოწყობილობა Viber-ის მხარდაჭერით.
36113 viber 3 36 არაავტორიზებული IP მისამართი Viber-ის გაგზავნისთვის.
36123 viber 3 36 აღმოჩენილია დუბლიკატი Viber შეტყობინება.
36143 viber 3 36 Viber-ის ბილინგის შეცდომა.
36153 viber 3 36 შეტყობინება დაბლოკილია პლატფორმის შავი სიით.
36163 viber 3 36 Viber პლატფორმის შიდა დამუშავების შეცდომა.
36173 viber 3 36 არასწორია ან აკლია Viber-ის ეტიკეტი.
36183 viber 3 36 არასწორი Viber TTL მნიშვნელობა.
12011 sms / rcs 1 12 SMS/RCS მიღებულია.
36011 sms / rcs 1 12 SMS/RCS გზაზე.
23011 sms / rcs 2 23 SMS/RCS მიწოდებულია.
35015 sms / rcs 3 35 SMS/RCS-ს ვადა გაუვიდა (არ მიეწოდება TTL-ის ფარგლებში).
36021 sms / rcs 3 36 SMS/RCS შეტყობინება წაიშალა.
36031 sms / rcs 3 36 SMS/RCS-ის მიწოდება შეუძლებელია.
36041 sms / rcs 3 36 უცნობი SMS/RCS მიწოდების სტატუსი.
36051 sms / rcs 3 36 SMS/RCS შეტყობინება უარყოფილია.