API ارسال نوتیفیکیشن اعضای سایت و اپلیکیشن

shape
shape
shape
shape
shape
shape
shape
shape

وب سرویس ارسال نوتیفیکیشن برای اعضای سایت و اپلیکیشن

در مقاله فبل در مرود معرفی وب سرویس نوتیفیکیشن صحبت کردیم در این مقاله در مورد API ارسال نوتیفیکیشن اعضای سایت و اپلیکیشن توضیح خواهیم داد.

توضیحات:

از این API‌ برای ارسال نوتیفیکیشن برای تمامی اعضای یک و‌ب‌سایت یا اپلیکیشن خود می‌توانید استفاده کنید. در این API‌می‌توانید کاربران خود را با توجه به سگمنت‌هایی که در پنل نجوای خود ساخته‌اید، فیلتر کنید. همچنین می‌توانید کاربران اکانت onesignal‌خود را که در پنل نجوا وارد کرده‌اید نیز به جمع دریافت‌کنندگان نوتیفیکیشن ارسالی اضافه کنید.

مثال:

در زیر یک نمونه ورودی و خروجی این API‌ آورده شده است:

REQUEST-Information

URL: https://app.najva.com/api/v1/notifications/
HTTP-Method: POST
HTTP-Headers:
Content-Type: application/json
Authorization: Token <YOUR_TOKEN>

REQUEST-Body

{

“api_key”: <YOUR_API_KEY>,
“title”: “title”,
“body”: “body”,
“onclick_action”: “<YOUR_ACTION>”,
“url”: “http://example.com”,
“content”: “some content”,
“icon”: “http://example.com/static/icon.png”,
“image”: “http://example.com/static/img.png”,
“sent_time”: “2018-12-04T12:00:00”,
“segments_include”: [1, 22],
“segments_exclude”: [12],
“one_signal_enabled”: true,
“one_signal_accounts”: [21, 102]
}

با توجه به این که به چه صورت API‌ را صدا زده باشید یکی از حالت های زیر اتفاق می‌افتد:

Body

status-code

ردیف

{
“detail”: “notification created successfully!”
}

200

1

{
“detail”: “unauthorized”
}

401

2

{
“detail”: “you are not owner of this website”
}

403

3

{
“detail”: “user with this Token does not exists”
}

404

4

تمامی فیلد‌هایی که به عنوان ورودی به API‌ داده می‌شود در جدول زیر به صورت کامل توضیح داده شده است:

important-note description required value-type filed
این شناسه به صورت اجباری باید ارسال شود؛ در غیر این صورت اطلاعات ارسالی شما توسط نجوا پذیرفته نمی‌شود. این همان شناسه یکتای و‌ب‌سایت یا اپلیکیشن شماست که می‌توانید از قسمت api ها در پنل خود آن را دریافت کنید. yes uuid api_key
این فیلد اجباری است. اگر یک نوتیفیکیشن عنوان نداشته باشد ارسال نمی‌شود. عنوان نوتیف ارسالی با این فیلد مقدار می‌گیرد. رشته‌ای که به این فیلد نسبت داده می‌شود باید حداکثر ۱۰۰ کاراکتر باشد. yes string title
این فیلد اجباری است. اگر یک نوتیفیکیشن بدنه نداشته باشد ارسال نمی‌شود. توضیح یا بدنه نوتیف ارسالی با این فیلد مقدار می‌گیرد. رشته‌ای که به این فیلد نسبت داده می‌شود باید حداکثر ۲۰۰ کاراکتر باشد. yes string body
در صورتی که این فیلد از سمت شما ارسال نشود به صورت دیفالت برابر با

open-link

در نظر گرفته می شود.

این فیلد مشخص می کند که پس از کلیک روی نوتیف چه اکشن‌ای رخ دهد. این فیلد می‌تواند یکی از مقادیر زیر را داشته باشد:

Open-link: باز کردن لینکی که در فیلد url داده شده است.

Open-sms: باز کردن صفحه sms با شماره‌ای که در فیلد url داده شده است و با متن پیش فرضی که در فیلد content داده شده است.

Open-call: باز کردن صفحه شماره گیر تلفن همراه با شماره‌ای که در فیلد url داده شده است.

Open-app: باز کردن اپلیکیشن شما (همان اپلیکیشنی که sdk را در آن قرار داده‎‌اید.

Open-activity: باز کردن اکتیویتی‌ای که در فیلد url داده شده است.

Open-telegram-channel: باز کردن کانال تلگرامی که id آن در فیلد url وارد شده است.

Join-telegram-channel: اضافه کردن کاربر به کانال تلگرامی که آدرس آن در فیلد url وارد شده است.

no string onclick_action
این فیلد اجباری است. این فیلد مقصد نهایی کاربر پس از کلیک روی نوتیف را مشخص می‌کند. که مثلا میتواند آدرس سایت خود شما باشد. yes string url
این فیلد تنها زمانی استفاده می شود که شما حالت باز شدن صفحه اس ام اس را انتخاب کرده باشید. و مقدار این فیلد به عنوان نوشته پیش فرض اس ام اس در نظر گرفته میشود. false string content
در صورتی که این فیلد ارسال نشود از آیکن وبسایت شما که در پنل ثبت کرده اید استفاده می‌شود. این فیلد آدرس url یک فایل عکس است که به عنوان آیکون نوتیفیکیشن تنظیم می‌شود. که در مثال بالا نمونه آن آورده شده است. no string icon
این فیلد آدرس url یک فایل عکس است که به عنوان عکس بزرگ نوتیفیکیشن تنظیم می‌شود. که در مثال بالا نمونه آن آورده شده است. no string image
این فیلد زمان ارسال نوتیف را مشخص می‌کند. و فرمت آن بصورت زیر است و بر اساس ۲۴ ساعت شبانه روز برنامه ریزی می‌شود:

“2018-12-05T13:00:00”

yes string sent_time
لیست شناسه سگمنت‌های دربرگرفته شده در این فیلد قرار می‌گیرند. در صورتی که این فیلد برابر با لیست خالی باشد برای تمام کاربرانی که مستثنی نشده اند ارسال می‌شود. no List of integers segments_include
لیست شناسه سگمنت‌های مستثنی شده در این فیلد قرار می‌گیرند. no List of integers segments_exclude
اگر مایل باشید این نوتیف برای کاربران وان سیگنالی خود نیز ارسال شود باید این فیلد را برابر با true‌ قرار دهید. درغیر این صورت مقدار آن را false‌ قرار دهید. yes boolean one_signal_enabled

در مقاله بعدی در مورد API ارسال نوتیفیکیشن برای کاربران خاص با استفاده از توکن کاربران وب‌سایت یا اپلیکیشن نوضیح خواهیم داد

منبع

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *