diff --git a/src/ParsePushAdapter.js b/src/ParsePushAdapter.js index 3e6c67c..f40c08e 100644 --- a/src/ParsePushAdapter.js +++ b/src/ParsePushAdapter.js @@ -50,18 +50,21 @@ export class ParsePushAdapter { for (let pushType in deviceMap) { let sender = this.senderMap[pushType]; let devices = deviceMap[pushType]; - if (!sender) { - log.verbose(LOG_PREFIX, `Can not find sender for push type ${pushType}, ${data}`) - let results = devices.map((device) => { - return Promise.resolve({ - device, - transmitted: false, - response: {'error': `Can not find sender for push type ${pushType}, ${data}`} - }) - }); - sendPromises.push(Promise.all(results)); - } else { - sendPromises.push(sender.send(data, devices)); + if(Array.isArray(devices) && devices.length > 0) + { + if (!sender) { + log.verbose(LOG_PREFIX, `Can not find sender for push type ${pushType}, ${data}`) + let results = devices.map((device) => { + return Promise.resolve({ + device, + transmitted: false, + response: {'error': `Can not find sender for push type ${pushType}, ${data}`} + }) + }); + sendPromises.push(Promise.all(results)); + } else { + sendPromises.push(sender.send(data, devices)); + } } } return Promise.all(sendPromises).then((promises) => {