Тіркеу

Module Campaign

Бұл модуль SMS кампанияларын құруға, оларды алушыларды мүмкін тәсілдердің бірімен қосуға, кампанияны жіберуге жіберуге, өзекті емес кампанияларды жоюға, кампаниялар тізімін қарауға және олар бойынша іздеуге арналған функцияларды қамтиды.

API methods

Массалық SMS науқанына алушыларды қосу
https://api.mobizon.kz/service/Campaign/AddRecipients

Жаңа науқан құру
https://api.mobizon.kz/service/Campaign/Create

Науқанды жою
https://api.mobizon.kz/service/Campaign/Delete

Науқанның негізгі деректерін алу
https://api.mobizon.kz/service/Campaign/Get

Кампанияның статистикалық деректерін алу
https://api.mobizon.kz/service/Campaign/GetInfo

Науқандар тізімін алу
https://api.mobizon.kz/service/Campaign/List

Кампанияны жіберу
https://api.mobizon.kz/service/Campaign/Send

Массалық SMS науқанына алушыларды қосу

https://api.mobizon.kz/service/Campaign/AddRecipients

Бір сұрауда тек бір типтегі алушылар туралы деректерді жіберуге рұқсат етіледі:

  • нөмірлер/байланыс карталарының ID/байланыс ID тізімі
  • байланыс кітабындағы топтардың ID тізімі
  • алушылар тізімі бар файл.

Әртүрлі алушылар типтерін бірден жіберуге тырысқанда 12 қатесі қайтарылады. Егер бір науқанға бірнеше көздерден алушыларды қосу қажет болса, оны бірнеше сұрауда орындау керек.

Алушылардың нөмірлерін, контактілерін немесе байланыс карталарын қосқанда, бір сұрауда жүктелетін алушылардың ең көп саны 500 нөмірден аспауы керек. Шектен асқан жағдайда 12 қатесі қайтарылады және алушылар қосылмайды.

Кез келген қажетті байланыстар санын бір науқанға жүктеу үшін тізімді 500 немесе одан аз бөліктерге бөлу қажет және әрбір бөлікті API арқылы жүктеу керек - алушылар бар тізімге қосылады, егер replace=1 параметрі көрсетілмесе.

Нөмірлерді, байланыстарды және карталарды жүктеу веб-сервердің негізгі ағынында орындалады және әрбір өңделген алушы үшін массив түрінде нәтиже қайтарады (қайтарылатын деректер форматын төменде қараңыз).

Байланыс тобы немесе файлдан жүктеу фондық тапсырма (асинхронды жүктеу) құруды шақырады және оның күйін қадағалау үшін оның ID қайтарылады. Бұл жағдайда API жауабының коды 100 болады.

Алушылардың нөмірлері халықаралық форматта жіберілуі керек. Нөмірден барлық бөгде таңбалар автоматты түрде жойылады.

Әрбір нөмір ел коды мен оған тиесілі операторға сәйкес хабарлама жіберу мүмкіндігі бойынша тексеріледі.

Барлық тексеруден өтпеген нөмірлер сәйкес қате кодымен (code) қабылданбайды, ал әрбір қосылған нөмір үшін хабарлама статусының кейінгі сұрауы үшін жасалған хабарламаның ID қайтарылады.

Егер жіберілген барлық алушылар қосылмаса (қателер пайда болса), онда API екі жауап кодтарының бірін қайтаруы мүмкін:

  • 98 - егер барлық алушылар қосылмаса, бірақ кем дегенде бір алушы тексеруден өтсе
  • 99 - егер бірде-бір алушы тексеруден өтпесе.

Алушыларды қосу кезінде науқан басқа процестермен қосудан блокталады, сондықтан бір науқанға бірнеше ағынмен параллельді қосу мүмкін емес.

Сұрау параметрлері

ПараметрТүріСипаттамасы
idintegerАлушыларды қосу қажет науқанның идентификаторы
recipientsarray stringҚарапайым тарату үшін (мәтіндегі ауыстыру айнымалыларын пайдаланбай) алушыларды мына түрде жіберуге болады:
  • алушылар нөмірлері үтірлермен немесе жолдардың ауысуларымен бөлінген жол ретінде;
  • бірөлшемді массив ретінде, онда массивтің әрбір элементі алушы нөміріне сәйкес келеді;
  • екіөлшемді массив ретінде, онда әрбір элемент - recipient кілті және алушы нөмірі бар массив.
Шаблондық тарату үшін алушылар екіөлшемді массив түрінде жіберілуі керек, онда әрбір элемент - бұл кілті recipient және алушы нөмірі бар массив. Сол сияқты, бұл массивте SMS мәтініндегі ауыстыру айнымалыларының атауларына сәйкес келетін кілттері бар элементтер болуы мүмкін (фигурлық жақшасыз).
Бұл ретте, егер мәтінде бар кейбір ауыстыру айнымалылары массивте көрсетілмесе, онда өңдеу params[placeholdersFlag] параметрінде берілген мәнге байланысты болады (төменде осы параметрдің сипаттамасын қараңыз).
recipientContactsarray stringБайланыс кітабындағы контактілердің үтірлермен немесе жолдардың ауысуларымен бөлінген массиві немесе жолы. Байланыс мына түрде көрсетілуі мүмкін:
  • карта идентификаторы. Бұл жағдайда тарату үшін 'мобильді телефон нөмірі' өрісінің мәні қолданылады, ол тарату өрісі ретінде белгіленген;
  • {карта идентификаторы}:{карта өрісінің кілті} (мысалы: 123456:mobile, егер мобильді телефон өрісі сіздің кітабыңызда 'mobile' кілтіне ие болса). Көрсетілген карта өрісінің мәні тарату үшін қолданылады.
Егер тарату шаблондық болса, мәтіндегі ауыстыру айнымалыларын толтыру үшін деректер тиісті байланыс картасынан қолданылады.
recipientGroupsarray stringБайланыс кітабындағы топтардың идентификаторларының үтірлермен немесе жолдардың ауысуларымен бөлінген массиві немесе жолы, ол арқылы науқан құрылады. Егер бір байланыс бірнеше топта болса - ол науқанға бір рет қана қосылады. Егер бірнеше байланыста бірдей телефон нөмірі болса - тек бірінші болып қосылғаны қосылады.
recipientsFilefileАлушылар тізімі бар файл объектісі - CSV немесе Excel (тек XLS) файл, халықаралық форматтағы алушылар нөмірлері бар.
Қарапайым тарату үшін (мәтіндегі ауыстыру айнымалыларын пайдаланбай) - жолда бір нөмір.
Шаблондық тарату үшін - жолда бір нөмір және бірінші жолда recipient тақырыбы бар бағанда, ал қалған бағандарда ауыстыру айнымалыларына арналған деректер болуы мүмкін. Мұндай бағандардың тақырыптары (кестенің бірінші жолында) SMS мәтініндегі ауыстыру айнымалыларына қатаң сәйкес келуі керек (фигурлық жақшаларсыз, регистрді ескере отырып). Ауыстыру айнымалы атаулары үшін тек латын әріптері мен цифрлар, сондай-ақ '_', '-' таңбалары рұқсат етіледі. Бірдей тақырыптары бар бағандар болған жағдайда, қате қайтарылады.
Бұл ретте, егер мәтінде бар кейбір ауыстыру айнымалыларына сәйкес бағандар болмаса, онда өңдеу params[placeholdersFlag] параметрінде берілген мәнге байланысты болады (төменде осы параметрдің сипаттамасын қараңыз).
paramsarrayҚосымша баптаулар (қосымша баптаулар кестесін осы жерден қараңыз).
Қосымша баптаулар
ПараметрТүріСипаттамасы
params[replace]integerБарлық қосылған алушыларды жою және қайтадан қосуды бастау керектігін көрсетеді:
0 - жоқ, алушыларды бұрын қосылғандарға қосу (әдепкі мәні);
1 - иә, жаңа алушыларды қосар алдында барлық бұрын қосылған алушыларды жою;
params[placeholdersFlag]integerШаблондық тарату үшін жетіспейтін ауыстыру айнымалыларын өңдеу.
Егер мәтінге ауыстыру үшін айнымалылар мәндері табылмаса, келесі әрекеттердің бірі мүмкін:
1 - хабарлама таратуға қосылады, бірақ ауыстыру айнымалылары мәтінде қалай болса солай қалады, ауыстыру орындалмайды (әдепкі әрекет);
2 - хабарлама таратуға қосылады, ал ауыстыру айнымалылары жойылады (егер сіз мәтінде фигурлық жақшаларды пайдалансаңыз және олардың жіберу кезінде жойылуын қаламасаңыз, бұл пайдалы болуы мүмкін);
3 - хабарлама мәтінге ауыстыру үшін деректердің жетіспеуіне байланысты қатемен қабылданбайды.
params[recipientsFileEncoding]stringАлушылар деректері бар файлдың кодталуы. Қол жетімді кодтаулар: KOI8-R, CP866, WINDOWS-1252, WINDOWS-1251, UTF-8, ASCII, ISO-8859-1, UCS-2. Әдепкі бойынша: UTF-8.
params[recipientsFileSkipHeader]integerФайлдың бірінші жолын өткізіп жіберу және өңдеуді екінші жолдан бастау керектігін көрсетеді. Алушыларды бірінші жолда бағандардың атаулары бар файлдан жүктеген кезде пайдалы. Бұл жағдайда бірінші жолды өткізіп жіберіп, файлды екінші жолдан өңдеуді бастау керек. Мүмкін мәндер:
0 - бірінші жолдан бастау (әдепкі мәні);
1 - файлдың бірінші жолын өткізіп жіберіп, екінші жолдан бастау (шаблондық таратуда мәжбүрлі түрде орнатылған);
Шаблондық тарату кезінде бұл параметрдің мәні әрқашан 1 және қайта орнатылмайды, себебі бірінші жолда ауыстыру айнымалыларының атаулары болуы керек.
params[recipientsFileDelimiter]stringАлушылар деректері бар файлдағы бағандардың бөлгіші, әдепкі бойынша: , (үтір). Қажет болған жағдайда кез келген басқа таңбаны қолдануға болады.
params[recipientsFileEnclosure]stringАлушылар деректері бар файлдағы мәтіннің қоршауы, әдепкі бойынша: ' (жалғыз тырнақша). Бұл таңба бағандардағы мәтінді екі жағынан қоршауы керек, осылайша жүйе файлды бағандарға дұрыс талдай алады.

Сервер жауабы

array | integer : Нөмірлер тізімі, контактілер немесе байланыс карталарынан алушыларды жүктеу кезінде әрбір элементінде алушылар туралы деректер бар массив қайтарылады:

ӨрісТүріСипаттамасы
recipientstringНауқанға қосылатын алушының нөмірі
codeintegerАлушыны қосу нәтижесінің коды:
0 - нөмір сәтті науқанға қосылды
1 - жіберілген деректерде телефон нөмірі жоқ немесе оның мәні бос
2 - жіберілген деректерде телефон нөмірі табылмады (мүмкін, деректер дұрыс форматталмаған)
3 - нөмір халықаралық телефон нөмірлерінің форматына сәйкес келмейді
4 - нөмір науқанға бұрыннан қосылған (таратудан қайталануларды алып тастау)
5 - нөмір стоп-тізімде (бұл сіздің стоп-тізіміңіз немесе жүйенің стоп-тізімі болуы мүмкін)
6 - жіберу шотыңыздың параметрлерімен мақсатты елге шектелген
7 - мақсатты ел мен/немесе операторды анықтау мүмкін емес
8 - жүйеде осы операторға жіберу мүмкіндігі жоқ, жіберу мүмкіндігін нақтылау үшін техникалық қолдау қызметіне хабарласыңыз
20 - жіберілген деректер барлық қажетті ауыстыру айнымалыларын қамтымайды (егер placeholdersFlag мәні 1 орнатылған болса)
30 - байланыс картасы байланыс кітабында табылмады (recipient мәні null болады)
31 - байланыс картасында мобильді нөмір жоқ (recipient мәні null болады)
32 - байланыс байланыс кітабында табылмады (recipient мәні null болады)
51 - техникалық себептерге байланысты қысқа сілтеме жасау мүмкін емес
99 - алушы нөмірін қосу кезінде жүйелік қате
messageIdintegerНөмір қосылған жағдайда хабарламаның идентификаторы, көрсетілген идентификатор бойынша хабарламаның күйін алуға болады.
numberintegerПайдаланушы жіберген алушы нөмірінің бастапқы мәні (егер алушы нөмірі жіберілген болса)
contactintegerЖіберілген байланыстың идентификаторы (егер recipientContacts жіберілсе)

Файлдан алушыларды немесе байланыс топтарын жүктеу кезінде алушыларды қосу фондық тапсырмасының сандық идентификаторы қайтарылады. Фондық тапсырмаларды өңдеу туралы толық ақпаратты осы жерден табуға болады.

Қате кодтары

КодСипаттамасы
1Егер қандай да бір параметрлерде дұрыс емес мәндер бар болса.
2Егер көрсетілген ID бар науқан табылмаса.
10Егер көрсетілген науқан алушыларды қосу процесімен немесе науқанның күйі алушыларды қосуға мүмкіндік бермейтін күйде болса.
12Егер алушылардың бірде-бір типі жіберілмесе немесе бір сұрауда бірнеше алушылар типтері жіберілсе.
98Егер барлық жіберілген алушылардың кем дегенде біреуі науқанға қосылмаса.
99Егер сұрау нәтижесінде бірде-бір алушы науқанға қосылмаса.
100Егер алушыларды қосу фондық тапсырмасы басталса. Фондық тапсырмаларды өңдеу туралы толық ақпаратты осы жерден табуға болады.

Мысалдар

Массалық таратуға алушылардың нөмірлерін қосу.

Алушылар тізімін таратуға қосу үшін олардың массивін келесі түрде жіберуге болады:

recipients[]=380971112233&recipients[]=79101112233&recipients[]=77071112233

немесе осылай:

recipients=380971112233,79101112233,77071112233

Екі жазу формасы бірдей.

Шаблондық тарату үшін деректерді қосу.

SMS мәтіні келесідей деп есептейік: Сәлеметсіз бе, {name}! {date} күнгі сіздің балансыңыз {balance}{currency}. Бұл жағдайда recipients параметрінде келесі деректер болуы керек:

recipients[0][recipient]=380971112233
&recipients[0][name]=%D0%92%D0%B0%D1%81%D0%B8%D0%BB%D0%B8%D0%B9
&recipients[0][date]=26.10.17
&recipients[0][balance]=123.45
&recipients[0][currency]=%D0%B3%D1%80%D0%BD
&recipients[1][recipient]=380971112255
&recipients[1][name]=%D0%9E%D0%BB%D1%8C%D0%B3%D0%B0
&recipients[1][date]=26.10.17
&recipients[1][balance]=3222.99
&recipients[1][currency]=%D1%80%D1%83%D0%B1
&recipients[2][recipient]=4901122211112
&recipients[2][name]=Markus
&recipients[2][date]=26.10.17
&recipients[2][balance]=555.45
&recipients[2][currency]=eur

HTTP сұрауының серверге жіберілетін барлық деректері алдын ала URL кодталу керек (әрбір бағдарламалау тілінде бұл үшін сәйкес функция бар).

Жаңа науқан құру

https://api.mobizon.kz/service/Campaign/Create

Бұл әдіс жаңа SMS-науқанын құруға мүмкіндік береді. Науқан құрылғаннан кейін оған алушыларды қосу және содан кейін жіберу қажет.

Сұрау параметрлері

data array – Науқан параметрлері

ПараметрТүріСипаттамасы
data[name]stringНауқан атауы.
Осы өрістің арқасында құрылған науқандарды бағыттау ыңғайлы болады.
Мысалы: «Қара жұмадағы жеңілдіктер» немесе «Шоттағы теріс баланс туралы ескерту».
Науқан атауының максималды ұзындығы – 255 символ.
data[text]stringЖіберуге арналған SMS хабарлама мәтіні.
Үлгі тарату (data[type]=3) үшін бұл мәтін әрбір алушыға бірегей мәндерге ауыстырылатын айнымалыларды қамтуы керек. Айнымалы латын әріптерімен, сандармен және «_» ,«-» таңбаларымен жазылуы керек және фигуралы жақшалармен қоршалуы керек, мысалы: {name} немесе {clientBalance}.
SMS мәтініне қойылатын талаптар.
Хабарлама мәтінінде қысқа сілтемелерді және алушыларды қадағалау функциясын пайдалана аласыз, кімнің сіздің сілтемеңізді басқанын білу үшін.
data[type]integerНауқан түрі:
1 – Жалғыз хабарлама (бір нөмірге жіберу);
2 – Жаппай тарату (әдепкі бойынша орнатылған);
3 – Үлгі науқан (хабарлама мәтінінде әрбір алушы үшін бірегей мәтінге ауыстырылатын тіркелген орындар болуы мүмкін).
data[from]stringЖіберушінің қолтаңбасы.
Өз қолтаңбаңызды пайдалану үшін оны алдын ала тіркеу қажет.
Егер қолтаңба көрсетілмесе, әдепкі бойынша орнатылған немесе қызметтің стандартты қолтаңбасы пайдаланылады.
data[rateLimit]integerБелгілі бір уақыт кезеңінде жіберілген хабарламалар санын шектеу, ratePeriod өрісінде көрсетілген.
Бұл опция үлкен SMS-тарату жылдамдығын баяулатуға мүмкіндік береді, осылайша сіздің Қолдау орталығыңызға жүктемені тарату.
Жіберу жылдамдығын шектеу – секундқа есептелгенде 100 хабарламадан артық емес.
Хабарламалар бірдей аралықтармен 10 дана пакеттермен жіберіледі, көрсетілген rateLimit-ке ratePeriod бойынша. Мысалы, егер жылдамдықты 600 және кезеңді 60 деп көрсетсеңіз, әр секунд сайын 600/60=10 SMS жіберіледі.
data[ratePeriod]integerSMS жіберілетін уақыт кезеңі, rateLimit өрісінде көрсетілген.
Ол тең болуы мүмкін:
60 – 1 минут;
3600 – 1 сағат;
86400 – 1 тәулік.
data[deferredToTs]stringНауқанды кейінге қалдыру күні мен уақыты.
Жіберуді бастау кем дегенде бір сағаттан кейін және ең көп дегенде 14 күннен кейін болуы мүмкін.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
data[mclass]integerЖіберілген хабарламаның класы:
0 – хабарламалар қалқымалы терезеде көрсетіледі және еш жерде сақталмайды (flashSMS);
1 – хабарламалар телефонның Кіріс хабарламалар қалтасына сақталады (әдепкі бойынша орнатылған).
data[validity]integerХабарламаның жеткізілуін күту уақытының максималды уақыты, егер алушы оны дереу қабылдай алмаса.
Мысалы, егер телефон өшірулі немесе желі аясынан тыс болса.
Жіберу сәтінен бастап минутпен көрсетіледі: 60 (1 сағат) және 1440 (24 сағат) арасында.
data[trackShortLinkRecipients]integerАлушыларды қадағалау функциясы.
Бұл функцияны пайдалану тек қысқа сілтемелер болған кезде ғана қолжетімді, біздің қызметімізде жасалған.
0 – функцияны пайдаланбау (әдепкі бойынша орнатылған);
1 – функцияны пайдалану.

Сервер жауабы

integer – науқанның идентификаторы, егер ол сәтті құрылған болса.

API жауап кодтары

КодСипаттама
0Науқан сәтті құрылды.
1Егер кез келген параметрлерде қате мәндер болса.

Examples

curl -X POST \
  'https://api.mobizon.kz/service/campaign/create?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK' \
  -H 'cache-control: no-cache' \
  -H 'content-type: application/x-www-form-urlencoded' \
  -d 'data%5Btype%5D=3&data%5Bfrom%5D=Alpha&data%5Btext%5D=%D0%A1%D3%99%D0%BB%D0%B5%D0%BC%D0%B5%D1%82%D1%81%D1%96%D0%B7+%D0%B1%D0%B5%2C+%7Bname%7D%21+%7Bdate%7D+%D0%BA%D2%AF%D0%BD%D0%B3%D1%96+%D0%B1%D0%B0%D0%BB%D0%B0%D0%BD%D1%81+%7Bbalance%7D%7Bcurrency%7D+%D2%9B%D2%B1%D1%80%D0%B0%D0%B9%D0%B4%D1%8B.'
var data = "data%5Btype%5D=3&data%5Bfrom%5D=Alpha&data%5Btext%5D=%D0%A1%D3%99%D0%BB%D0%B5%D0%BC%D0%B5%D1%82%D1%81%D1%96%D0%B7+%D0%B1%D0%B5%2C+%7Bname%7D%21+%7Bdate%7D+%D0%BA%D2%AF%D0%BD%D0%B3%D1%96+%D0%B1%D0%B0%D0%BB%D0%B0%D0%BD%D1%81+%7Bbalance%7D%7Bcurrency%7D+%D2%9B%D2%B1%D1%80%D0%B0%D0%B9%D0%B4%D1%8B.";

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
if (this.readyState === 4) {
console.log(this.responseText);
}
});

xhr.open("POST", "https://api.mobizon.kz/service/campaign/create?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK");
xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
xhr.setRequestHeader("cache-control", "no-cache");

xhr.send(data);
<?php
use Mobizon\MobizonApi;

$api = new MobizonApi('KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK', 'api.mobizon.kz');

// АПИ әдісін шақыру
if ($api->call(
    'campaign',
    'create',
    array(
        //кампанияның параметрлері
        'data' => array(
            //кампанияның түрі
            'type' => '3',
            //жіберушінің қолтаңбасы
            'from' => 'Alpha',
            //хабарламаның мәтіні
            'text' => 'Сәлеметсіз бе, {name}! {date} күнгі баланс {balance}{currency} құрайды.'
        )
    )
)
) {
    // Әдістің орындалу нәтижесін алу
    $result = $api->getData();
} else {
    // Орындалу кезінде қате болды, қате коды мен хабарлама мәтінін шығару
    echo '[' . $api->getCode() . '] ' . $api->getMessage() . PHP_EOL;
}

Науқанды жою

https://api.mobizon.kz/service/Campaign/Delete

Бұл әдіс науқанды оның ID бойынша жоюға мүмкіндік береді.
Науқан оның жіберілуі әлі басталмаған болса жойылуы мүмкін.
Егер науқан кейінге қалдырылса: кейінге қалдырылған науқанды жіберу басталуына кем дегенде 5 минут қалғанда жоюға болады.

Сұрау параметрлері

ПараметрТүріСипаттамасы
idintegerНауқанның идентификаторы.

API жауап кодтары

КодСипаттама
0Науқан сәтті жойылды.
2Егер көрсетілген идентификатормен науқан табылмаса.
10Егер көрсетілген идентификатормен науқан жойылмайтын болса.

Examples

curl -X POST \
  'https://api.mobizon.kz/service/campaign/delete?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK' \
  -H 'cache-control: no-cache' \
  -H 'content-type: application/x-www-form-urlencoded' \
  -d 'id=123'
var data = "id=123";

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
if (this.readyState === 4) {
console.log(this.responseText);
}
});

xhr.open("POST", "https://api.mobizon.kz/service/campaign/delete?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK");
xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
xhr.setRequestHeader("cache-control", "no-cache");

xhr.send(data);
<?php
use Mobizon\MobizonApi;

$api = new MobizonApi('KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK', 'api.mobizon.kz');

// АПИ әдісін шақыру
if ($api->call(
    'campaign',
    'delete',
    array(
        //кампания идентификаторы
        'id' => '123'
    )
)
) {
    // Әдістің орындалу нәтижесін алу
    $result = $api->getData();
} else {
    // Орындалу кезінде қате болды, қате коды мен хабарлама мәтінін шығару
    echo '[' . $api->getCode() . '] ' . $api->getMessage() . PHP_EOL;
}

Науқанның негізгі деректерін алу

https://api.mobizon.kz/service/Campaign/Get

Бұл әдіс құрылған науқанның негізгі деректерін оның ID бойынша алуға мүмкіндік береді.

Сұрау параметрлері

ПараметрТүріСипаттамасы
idintegerНауқанның идентификаторы.

Сервер жауабы

Массив деректері келесі өрістерді қамтиды:

ӨрісТүріСипаттамасы
idstringНауқанның идентификаторы.
moderationStatusstringҚазіргі модерация мәртебесі:
MODERATION – науқан модерацияда;
DECLINED – науқан модератордан бас тартылды;
READY_FOR_SEND – науқан модератордан жіберуге рұқсат етілді;
AUTO_READY_FOR_SEND – науқан модерациясыз жіберілді.
commonStatusstringНауқанның қазіргі күйі:
MODERATION – науқан модерациядан өтуде;
DECLINED – науқан модератордан бас тартылды (бас тарту себебі globalComment өрісінде көрсетілген);
READY_FOR_SEND – науқан жіберуге дайын, бірақ жіберу әлі басталмаған;
RUNNING – науқан жіберу процесінде;
SENT – науқан толығымен жіберілді, бірақ барлық хабарламалар байланыс операторынан жеткізу туралы есеп ала алмады;
DONE – науқан толығымен аяқталды: барлық соңғы жеткізу есептері алынды, санауыштар түпкілікті мәндерді қамтиды.
groupsListarrayНауқанға енгізілген контакт топтарының тізімі.
Әрбір топ үшін келесілерді қамтиды:
id – топ нөмірі;
name – топ атауы;
cardsCnt – хабарлама жіберуге қолжетімді топтағы контакт саны.
Егер топтар науқанда пайдаланылмаса, бұл өріс бос болады.
typeintegerНауқан түрі:
1 – Жалғыз хабарлама (бір нөмірге жіберу);
2 – Жаппай тарату;
3 – Үлгі науқан;
7 – Функционалды (қызметтік) науқан.
msgTypestringНауқан хабарламаларының түрі.
Қазіргі уақытта тек «SMS» түрі қолжетімді.
rateLimitintegerБелгілі бір уақыт кезеңінде жіберілген хабарламалар санын шектеу, ratePeriod өрісінде көрсетілген.
ratePeriodintegerSMS жіберілетін уақыт кезеңі, rateLimit өрісінде көрсетілген.
sendStatusstringНауқан жіберу мәртебесі:
SENT – науқан жіберілді;
DONE – науқан аяқталды.
isDeletedintegerНауқанның жойылғанын көрсететін жалауша:
0 – науқан қолжетімді;
1 – науқан жойылды.
deferredToTsstringНауқанның кейінге қалдырылған жіберу күні мен уақыты.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
createTsstringНауқанның құрылған күні мен уақыты.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
startSendTsstringНауқанды нақты жіберудің басталу күні мен уақыты.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
endSendTsstringНауқанның барлық хабарламаларын жіберудің аяқталу күні мен уақыты.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
namestringНауқан атауы.
fromstringНауқанды жіберу үшін таңдалған жіберушінің қолтаңбасы.
textstringХабарламаның толық мәтіні немесе айнымалы орнатылған үлгі мәтін.
validityintegerХабарламаның жеткізілуін күту уақытының максималды уақыты, егер алушы оны дереу қабылдай алмаса, жіберу сәтінен бастап минутпен.
mclassintegerЖіберілген хабарламаның класы:
0 – хабарламалар қалқымалы терезеде көрсетіледі және еш жерде сақталмайды (flashSMS);
1 – хабарламалар телефонның Кіріс хабарламалар қалтасына сақталады.
trackShortLinkRecipientsintegerАлушыларды қадағалау функциясы пайдаланылған ба:
0 – функция пайдаланылмаған;
1 – функция пайдаланылған.
groupsstringНауқанда пайдаланылатын контакт топтарының идентификаторлары, үтірмен бөлінген.
globalCommentstringЕгер науқаннан бас тартылған болса, модератордың түсініктемесі.

Examples

curl -X POST \
  'https://api.mobizon.kz/service/campaign/get?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK' \
  -H 'cache-control: no-cache' \
  -H 'content-type: application/x-www-form-urlencoded' \
  -d 'id=123'
var data = "id=123";

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
if (this.readyState === 4) {
console.log(this.responseText);
}
});

xhr.open("POST", "https://api.mobizon.kz/service/campaign/get?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK");
xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
xhr.setRequestHeader("cache-control", "no-cache");

xhr.send(data);
<?php
use Mobizon\MobizonApi;

$api = new MobizonApi('KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK', 'api.mobizon.kz');

// АПИ әдісін шақыру
if ($api->call(
    'campaign',
    'get',
    array(
        //кампания идентификаторы
        'id' => '123'
    )
)
) {
    // Әдістің орындалу нәтижесін алу
    $result = $api->getData();
} else {
    // Орындалу кезінде қате болды, қате коды мен хабарлама мәтінін шығару
    echo '[' . $api->getCode() . '] ' . $api->getMessage() . PHP_EOL;
}

Кампанияның статистикалық деректерін алу

https://api.mobizon.kz/service/Campaign/GetInfo

Бұл әдіс науқанның негізгі және статистикалық деректерін оның ID арқылы алуға мүмкіндік береді.

Статистика counters өрісінде көрсетілетін әртүрлі есептегіштер арқылы қалыптастырылады.

МАҢЫЗДЫ!

Науқан құнының техникалық есептеу ерекшеліктеріне байланысты, науқанның мүмкін құны туралы деректер алушыларды қосу сәтінде көрсетіледі және уақыт өте келе өзгермейді.

Өзгерістер тек алушыларды қайта жүктеу немесе науқан деректерін өңдеу кезінде орын алуы мүмкін (деректерді өңдеу жағдайында барлық алушылар мен есептеулер қайта жүктеледі).

Сұрау параметрлері

ПараметрТүріСипаттамасы
idintegerНауқан идентификаторы.
getFilledTplCampaignTextintegerҚайтарылатын деректер форматы:
0 – науқан мәтіні плейсхолдерлермен;
1 – алушылардың нақты деректерімен толтырылған шаблондық науқан мәтінін қайтару (әдепкі бойынша).

Сервер жауабы

ӨрісТүріСипаттамасы
idintegerНауқан идентификаторы.
moderationStatusstringМодерацияның ағымдағы күйі:
MODERATION – науқан модерацияда;
DECLINED – науқан модератормен қабылданбаған;
READY_FOR_SEND – науқан модератормен мақұлданған;
AUTO_READY_FOR_SEND – науқан модерациясыз жіберілген.
commonStatusstringНауқанның ағымдағы күйі:
MODERATION – науқан модерациядан өтуде;
DECLINED – науқан модератормен қабылданбаған (globalComment өрісінде қабылданбау себебі көрсетілген);
READY_FOR_SEND – науқан жіберуге дайын, бірақ жіберу әлі басталған жоқ;
RUNNING – науқан жіберу процесінде;
SENT – науқан толық жіберілген, бірақ оператордан жеткізу туралы есептер әлі алынбаған;
DONE – науқан толық өңделген, барлық соңғы жеткізу есептері алынған.
groupsListarrayНауқанға енгізілген байланыс топтарының тізімі.
Әрбір топ үшін келесі деректер бар:
id – топтың нөмірі;
name – топтың атауы;
cardsCnt – топта хабарлама жіберу үшін қолжетімді контактілер саны.
Егер науқанда топтар қолданылмаса, бұл өріс бос болады.
typeintegerНауқанның түрі:
1 – Жалғыз хабарлама (бір нөмірге жіберу);
2 – Массалық тарату;
3 – Шаблондық науқан;
7 – Функционалдық (қызметтік) науқан.
msgTypestringНауқан хабарламаларының түрі.
Қазіргі уақытта тек «SMS» түрі қолдау көрсетіледі.
rateLimitintegerБелгілі бір уақыт кезеңінде жіберілетін хабарламалар санының шектеуі ratePeriod өрісінде көрсетілген уақыт кезеңінде.
ratePeriodintegerrateLimit өрісінде көрсетілген SMS саны жіберілетін уақыт кезеңі.
sendStatusstringНауқан жіберу күйі:
SENT – науқан жіберілген;
DONE – науқан аяқталған.
isDeletedintegerНауқанның жойылғанын көрсететін белгі:
0 – науқан қолжетімді;
1– науқан жойылған.
deferredToTsstringНауқанды кейінге қалдыру жіберу күні мен уақыты.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
createTsstringНауқанды құру күні мен уақыты.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
startSendTsstringНауқанды нақты жіберу басталған күні мен уақыты.
Егер жіберу басталмаса, бұл өрісте NULL болады.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
endSendTsstringНауқан хабарламаларын жіберуді аяқтау күні мен уақыты.
Егер хабарламаларды жіберу аяқталмаса – бұл өрісте NULL болады.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
namestringНауқан атауы.
fromstringНауқанды жіберу үшін таңдалған жіберушінің қолтаңбасы.
textstringХабарламаның толық мәтіні немесе плейсхолдерлері бар шаблондық мәтін.
validityintegerЕгер алушы оны бірден қабылдай алмаса, хабарламаны жеткізуді күту үшін ең ұзақ уақыт, жіберу сәтінен бастап минутпен.
mclassintegerЖіберілген хабарламаның класы:
0 – хабарламалар қалқымалы терезеде көрсетіледі және еш жерде сақталмайды (flashSMS);
1 – хабарламалар телефонның Кіріс хабарламалар қалтасына сақталады.
trackShortLinkRecipientsintegerАлушыларды бақылау функциясы пайдаланылды ма:
0 – функция пайдаланылмады;
1 – функция пайдаланылды.
groupsstringНауқанда пайдаланылған байланыс топтарының идентификаторлары, үтірлермен бөлінген.
globalCommentstringЕгер науқан қабылданбаған болса, модератордың түсініктемесі.
creationWayintegerНауқанды құру тәсілі:
1 – Интернет-браузер арқылы;
5функционалдық (қызметтік) науқан.
countersarraycounters объектінің өрістерінде сипатталған науқанның әртүрлі есептегіштері осы жерден қараңыз.
counters объектінің өрістері
ӨрісТүріСипаттамасы
updateTsdatetimeЕсептегіштер соңғы жаңартылған уақыт.
Жүйеге жүктемені азайту үшін есептегіштерді жаңарту кешігуі мүмкін.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
totalNewSegNumintegerNEW күйіндегі сегменттердің жалпы саны.
totalAcceptdSegNumintegerACCEPTD күйіндегі сегменттердің жалпы саны.
totalDelivrdSegNumintegerDELIVRD күйіндегі сегменттердің жалпы саны.
totalRejectdSegNumintegerREJECTD күйіндегі сегменттердің жалпы саны.
totalExpiredSegNumintegerEXPIRED күйіндегі сегменттердің жалпы саны.
totalUndelivSegNumintegerUNDELIV күйіндегі сегменттердің жалпы саны.
totalDeletedSegNumintegerDELETED күйіндегі сегменттердің жалпы саны.
totalUnknownSegNumintegerUNKNOWN күйіндегі сегменттердің жалпы саны.
totalPdlivrdSegNumintegerPDLIVRD күйіндегі сегменттердің жалпы саны.
totalSegNumintegerНауқандағы сегменттердің жалпы саны. Алушыларды қосу кезінде жаңартылады.
totalNewMsgNumintegerNEW күйіндегі хабарламалардың жалпы саны.
totalAcceptdMsgNumintegerACCEPTD күйіндегі хабарламалардың жалпы саны.
totalDelivrdMsgNumintegerDELIVRD күйіндегі хабарламалардың жалпы саны.
totalRejectdMsgNumintegerREJECTD күйіндегі хабарламалардың жалпы саны.
totalExpiredMsgNumintegerEXPIRED күйіндегі хабарламалардың жалпы саны.
totalUndelivMsgNumintegerUNDELIV күйіндегі хабарламалардың жалпы саны.
totalDeletedMsgNumintegerDELETED күйіндегі хабарламалардың жалпы саны.
totalUnknownMsgNumintegerUNKNOWN күйіндегі хабарламалардың жалпы саны.
totalPdlivrdMsgNumintegerPDLIVRD күйіндегі хабарламалардың жалпы саны.
totalMsgNumintegerХабарламалардың жалпы саны (сегменттер емес). Науқан хабарламалары/сегменттері өңделген кезде жаңартылады (жіберу алдында).
totalNewMsgCostfloatNEW күйіндегі барлық сегменттердің жалпы құны.
totalAcceptdMsgCostfloatACCEPTD күйіндегі барлық сегменттердің жалпы құны.
totalDelivrdMsgCostfloatDELIVRD күйіндегі барлық сегменттердің жалпы құны.
totalRejectdMsgCostfloatREJECTD күйіндегі барлық сегменттердің жалпы құны.
totalExpiredMsgCostfloatEXPIRED күйіндегі барлық сегменттердің жалпы құны.
totalUndelivMsgCostfloatUNDELIV күйіндегі барлық сегменттердің жалпы құны.
totalDeletedMsgCostfloatDELETED күйіндегі барлық сегменттердің жалпы құны.
totalUnknownMsgCostfloatUNKNOWN күйіндегі барлық сегменттердің жалпы құны.
totalPdlivrdMsgCostfloatPDLIVRD күйіндегі барлық сегменттердің жалпы құны.
totalCostfloatНауқанның жалпы құны.
recipientsRejectedintegerНауқанға қосылмаған қабылданбаған алушылар саны. Алушыларды қосу кезінде жаңартылады.

Examples

curl -X POST \
  'https://api.mobizon.kz/service/campaign/getInfo?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK' \
  -H 'cache-control: no-cache' \
  -H 'content-type: application/x-www-form-urlencoded' \
  -d 'id=123'
var data = "id=123";

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
if (this.readyState === 4) {
console.log(this.responseText);
}
});

xhr.open("POST", "https://api.mobizon.kz/service/campaign/getInfo?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK");
xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
xhr.setRequestHeader("cache-control", "no-cache");

xhr.send(data);
<?php
use Mobizon\MobizonApi;

$api = new MobizonApi('KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK', 'api.mobizon.kz');

// АПИ әдісін шақыру
if ($api->call(
    'campaign',
    'getInfo',
    array(
        //кампания идентификаторы
        'id' => '123'
    )
)
) {
    // Әдістің орындалу нәтижесін алу
    $result = $api->getData();
} else {
    // Орындалу кезінде қате болды, қате коды мен хабарлама мәтінін шығару
    echo '[' . $api->getCode() . '] ' . $api->getMessage() . PHP_EOL;
}

Науқандар тізімін алу

https://api.mobizon.kz/service/Campaign/List

Бұл әдіс құрылған науқандар тізімін алуға мүмкіндік береді. Іздеу ID және басқа өрістер бойынша жүргізілуі мүмкін.

Сұрау параметрлері

ПараметрТүріСипаттамасы
criteriaarrayІздеу критерийлері (қараңыз Іздеу критерийлері кестесін).
paginationarrayБеттерді шығару параметрлері (қараңыз Беттерді шығару параметрлері кестесін).
sortarrayСұрыптау параметрлері (қараңыз Сұрыптау параметрлері кестесін).

Іздеу критерийлері

Төменде науқандар бойынша іздеу жүргізілетін өрістер келтірілген. Іздеуді бір немесе бірнеше өрістер бойынша бір уақытта жүргізуге болады.

ПараметрТүріСипаттамасы
criteria[id]integerБір науқанды оның ID бойынша іздеу.
criteria[ids]arrayБірнеше науқанды олардың ID бойынша іздеу.
Параметр массив немесе үтірмен бөлінген идентификаторлар жолы түрінде берілуі керек.
Максималды идентификаторлар саны – 100, бұл шектен асқан жағдайда іздеу тізімдегі алғашқы 100 ID бойынша жүргізіледі.
criteria[recipient]stringАлушының телефон нөмірі немесе оның бөлігі бойынша іздеу.
Мысалы:
77273573423 – осы нөмір қатысқан барлық науқандарды табады;
38097 – көрсетілген сандар комбинациясын қамтитын барлық науқандар табылатын болады.
Іздеуге тек бір нөмір қатыса алады.
criteria[from]stringНауқанда пайдаланылған жіберушінің қолтаңбасы бойынша іздеу.
criteria[text]stringНауқан хабарламасы мәтіні бойынша іздеу.
Іздеу ізделетін мәннің толық сәйкестігі бойынша жүргізіледі.
criteria[status]stringНауқан күйі бойынша іздеу.
criteria[createTsFrom]stringБелгіленген күн мен уақыттан бастап құрылған науқандарды іздеу.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
criteria[createTsTo]stringКөрсетілген күні мен уақытына дейін жасалған науқанды іздеу.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
criteria[sentTsFrom]stringЖіберу көрсетілген күні мен уақытынан бастап болған науқанды іздеу.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
criteria[sentTsTo]stringЖіберілген күні мен уақытына дейінгі науқандарды іздеу.
Формат: ЖЖЖЖ-АА-КК СС:ММ:СС.
criteria[type]integerНауқан түрі бойынша іздеу:
1 – Жалғыз хабарлама (бір нөмірге жіберу);
2 – Массалық тарату (әдепкі бойынша орнатылған);
3 – Шаблондық науқан (хабарлама мәтіні әрбір алушыға арналған бірегей мәтінмен ауыстырылатын плейсхолдерлерді қамтуы мүмкін).
criteria[groups]stringНауқанда қолданылатын байланыс топтарының идентификаторлары бойынша іздеу.
Параметр массив немесе үтірмен бөлінген идентификаторлар жолы түрінде берілуі керек.

Беттер бойынша шығару параметрлері

Бұл параметрлер сұралатын ақпаратты құрылымдық (ішінара) шығару үшін арналған.

ПараметрТүріСипаттамасы
pagination[pageSize]integerБеттегі көрсетілетін элементтер саны (25, 50, 100).
pagination[currentPage]integerАғымдағы бет.
Беттердің нөмірленуі 0-ден басталады.

Сұрыптау параметрлері

Бұл параметрлерді пайдалана отырып, іздеу нәтижелерін өрістердің біреуі бойынша өсу (ASC) немесе кему (DESC) тәртібімен сұрыптауға болады.

Мысалы:

Науқан құру күні бойынша өсу ретімен сұрыптау – sort[createTs]=ASC.
Науқанның ID бойынша кему ретімен сұрыптау – sort[id]=DESC.

ПараметрСипаттамасы
sort[id]Науқанның ID бойынша сұрыптау.
sort[name]Науқан атауы бойынша сұрыптау.
sort[from]Жіберушінің қолтаңбасы бойынша сұрыптау.
sort[counters.totalMsgNum]Науқанның телефон нөмірлерінің саны бойынша сұрыптау.
sort[counters.totalCost]Науқанның құны бойынша сұрыптау.
sort[createTs]Науқан құру күні мен уақыты бойынша сұрыптау.
sort[startSendTs]Науқан жіберу басталған күні мен уақыты бойынша сұрыптау.
sort[endSendTs]Науқан жіберу аяқталған күні мен уақыты бойынша сұрыптау.

Сервер жауабы

Екі өрістен тұратын массивті қамтиды:

ӨрісТүріСипаттамасы
itemsarrayТабылған науқан тізімі.
Науқан өрістерінің сипаттамасын campaign/getInfo әдісінің сипаттамасынан қараңыз.
totalItemCountintegerТабылған элементтердің жалпы саны.
Науқанның статустары
СтатусСипаттамасы
NEWНауқан жасалған, бірақ пайдаланушы әлі жібермеген.
Бұл күйде алушыларды қосуға рұқсат етіледі.
MODERATIONҚызмет көрсету ережелеріне сәйкестігіне модерациядан өтуде.
DECLINEDМодератормен қабылданбаған, себебі ол қызмет көрсету ережелеріне немесе науқандағы нөмірлердің операторларының талаптарына сәйкес келмейді.
READY_FOR_SENDНауқан жіберуге дайын, бірақ жіберу әлі басталмаған.
AUTO_READY_FOR_SENDНауқан модерациялаусыз жіберіледі. Науқан модерациясыз жіберіледі.
NOT_YET_SENTНауқан жіберілмеген барлық статустарды қамтиды.
Бұл мән тек іздеу үшін қолданылады. Науқандарда бұл статус болмауы мүмкін.
RUNNINGНауқан басталған, операторға жіберу процесі жүруде.
DEFERREDНауқанды жіберу белгілі бір уақытқа жоспарланған.
Бұл мән тек іздеу үшін қолданылады. Науқандарда бұл статус болмауы мүмкін.
SENTНауқан толық жіберілген, бірақ операторлардан жеткізу туралы есептер әлі алынбаған.
DONEНауқан толық өңделген, барлық соңғы жеткізу есептері алынған.
Бұл статус орнатылғаннан кейін науқанның ешбір есептегіштері өзгермейді.

Examples

curl -X POST \
  'https://api.mobizon.kz/service/campaign/list?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK' \
  -H 'cache-control: no-cache' \
  -H 'content-type: application/x-www-form-urlencoded' \
  -d 'criteria%5Bfrom%5D=Alpha&pagination%5BcurrentPage%5D=2&pagination%5BpageSize%5D=50&sort%5Btype%5D=ASC'
var data = "criteria%5Bfrom%5D=Alpha&pagination%5BcurrentPage%5D=2&pagination%5BpageSize%5D=50&sort%5Btype%5D=ASC";

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
if (this.readyState === 4) {
console.log(this.responseText);
}
});

xhr.open("POST", "https://api.mobizon.kz/service/campaign/list?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK");
xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
xhr.setRequestHeader("cache-control", "no-cache");

xhr.send(data);
<?php
use Mobizon\MobizonApi;

$api = new MobizonApi('KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK', 'api.mobizon.kz');

// АПИ әдісін шақыру
if ($api->call(
    'campaign',
    'list',
    array(
        //іздеу критерийлері
        'criteria' => array(
            //жіберушінің қолтаңбасы
            'from' => 'Alpha'
        ),
        //беттер бойынша параметрлер
        'pagination' => array(
            //ағымдағы бет
            'currentPage' => '2',
            //беттегі элементтер саны
            'pageSize' => '50'
        ),
        //сұрыптау параметрлері
        'sort' => array(
            //кампания түрі бойынша сұрыптау
            'type' => 'ASC'
        )
    )
)
) {
    // Әдістің орындалу нәтижесін алу
    $result = $api->getData();
} else {
    // Орындалу кезінде қате болды, қате коды мен хабарлама мәтінін шығару
    echo '[' . $api->getCode() . '] ' . $api->getMessage() . PHP_EOL;
}

Кампанияны жіберу

https://api.mobizon.kz/service/Campaign/Send

Бұл әдіс кампанияны ID бойынша жіберуге мүмкіндік береді.

Назар аударыңыз! Спамға күдік туындаған жағдайлар, хабарлама мәтінінде күдікті мазмұнның болуы, белгілі бір бағытқа шектеу және т.б., сондай-ақ келісім-шарт бойынша жағдайлар байланысты, кампания модерацияға түсуі мүмкін.

Сұраныс параметрлері

ПараметрТүріСипаттамасы
idintegerКампанияның идентификаторы.

Сервердің жауабы

integer: кампанияның жіберілу статусы.

Мүмкін мәндер:

1 – кампания модератор тексерісінде;
2 – кампания жіберілді.

API жауап кодтары

КодСипаттамасы
0Кампания сәтті жіберілді.
2Кампания табылмады.
10Кампанияның статусын өзгерту мүмкін болмады.

Examples

curl -X POST \
  'https://api.mobizon.kz/service/campaign/send?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK' \
  -H 'cache-control: no-cache' \
  -H 'content-type: application/x-www-form-urlencoded' \
  -d 'id=123'
var data = "id=123";

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
if (this.readyState === 4) {
console.log(this.responseText);
}
});

xhr.open("POST", "https://api.mobizon.kz/service/campaign/send?output=json&api=v1&apiKey=KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK");
xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
xhr.setRequestHeader("cache-control", "no-cache");

xhr.send(data);
<?php
use Mobizon\MobizonApi;

$api = new MobizonApi('KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK', 'api.mobizon.kz');

// АПИ әдісін шақыру
if ($api->call(
    'campaign',
    'send',
    array(
        //кампания идентификаторы
        'id' => '123'
    )
)
) {
    // Әдістің орындалу нәтижесін алу
    $result = $api->getData();
} else {
    // Орындалу кезінде қате болды, қате коды мен хабарлама мәтінін шығару
    echo '[' . $api->getCode() . '] ' . $api->getMessage() . PHP_EOL;
}