Scorocode.Messenger
Содержание
- Messenger
- new Messenger()
- .sendPush(options, callbacks) ⇒
{error: Boolean, count: Number}
- .sendSms(options, callbacks) ⇒
{error: Boolean, count: Number}
new Messenger(logger)
Класс для отправки сообщений
Параметр | Тип | Свойства | Описание | Пример значения |
---|---|---|---|---|
logger | Object |
Необязательный | Объект sc.Logger для режима отладки | См. пример ниже |
Пример
var Broadcast = new sc.Messenger({logger: new sc.Logger()});
.sendPush(options, callbacks)
Метод для отправки Push
Параметр | Тип | Описание |
---|---|---|
options | Object |
Объект, состоящий из параметров where и data |
debug | Boolean |
Флаг включения режима отладки |
callbacks | Object |
Коллбэки success и error для выполняемого запроса. |
Описание объекта options
- Параметр where - принимает в качестве значения sc.Query("devices") с условиями выборки устройств, которым будет отпрален PUSH.
- Параметр data - объект, содержащий данные для передачи в PUSH-сообщении и имеющий следующую структуру:
data: { "data": { "gcm": { //данные для отправки Android-устройствам }, "apns": { //данные для отправки iOs-устройствам } } }
Пример
// Подключим SDK и инициализируем его.
var sc = require('scorocode');
sc.Init({
ApplicationID: "applicationId_приложения",
JavaScriptKey: "javascriptKey_приложения",
MessageKey: "messageKey_приложения",
WebSocketKey: "websocket key приложения"
});
var Devices = new sc.Query("devices");
var Broadcast = new sc.Messenger({logger: new sc.Logger()});
Broadcast.sendPush({
where: Devices,
data: {
"data": {
"gcm": {
"protocol": "http",
"notification": {
"body" : "great match!",
"title" : "Portugal vs. Denmark",
"icon" : "myicon"
},
"data": {
"key": "value"
}
},
"apns": { // Данные для передачи iOs-устройствам, необязательно
"id": "123e4567-e89b-12d3-a456-42665544000", // apns-id, необязательно
"topic": "com.sideshow.Apns2", // apns-topic, необязательно
"collapseId": "my_collapse", // apns-collapse-id, необязательно
"expiration": "2006-01-02T15:04:05Z07:00", // apns-expiration, необязательно
"priority":5, // apns-priority, необязательно
"aps" : {
"alert" : {
"title" : "Portugal vs. Denmark",
"body" : "great match!",
"action-loc-key" : "Watch"
},
"badge" : 5
},
"acme1" : "bar",
"acme2" : [ "bang", "whiz" ]
}
}
}
}, true)
.then((success)=>{
console.log(success);
})
.catch((error)=>{
console.log(error)
});
Возвращает: promise.{error: Boolean, count: Number}
- Возвращает promise который возвращает объект с результатом выполнения запроса.
- "error" -
Boolean
- Флаг ошибки - "count" -
Number
- Количество отправленных сообщений.
Исключение:
String
'Invalid options type'String
'Where must be a type of Query'String
'Invalid data type'
.sendSms(options, callbacks)
Метод для отправки СМС
Параметр | Тип | Описание |
---|---|---|
options | Object |
Параметры сообщения |
callbacks | Object |
Коллбэки success и error для выполняемого запроса. |
Описание объекта options
- Параметр where - принимает в качестве значения sc.Query("user") с условиями выборки пользователей, которым будет отпралено sms.
- Параметр data - объект, содержащий данные для передачи в СМС-сообщении и имеющий следующую структуру:
data: { "text": "Текст смс-сообщения" }
Пример
// Подключим SDK и инициализируем его.
var sc = require('scorocode');
sc.Init({
ApplicationID: "applicationId_приложения",
JavaScriptKey: "javascriptKey_приложения",
MessageKey: "messageKey_приложения"
});
var findUsers = new sc.Query("users");
var Broadcast = new sc.Messenger();
Broadcast.sendSms({
where: findUsers,
data: {
"text": "Текст смс-сообщения"
}
})
.then((success)=>{
console.log(success);
})
.catch((error)=>{
console.log(error)
});
Возвращает: {error: Boolean, count: Number}
- Возвращает promise который возвращает объект с результатом выполнения запроса.
- "error" -
Boolean
- Флаг ошибки - "count" -
Number
- Количество отправленных сообщений.