ข้ามไปยังเนื้อหา

การอ้างอิง API ของปลั๊กอิน Cordova

example
var pushwoosh = cordova.require("pushwoosh-cordova-plugin.PushNotification");
// ควรถูกเรียกใช้ก่อน pushwoosh.onDeviceReady
document.addEventListener('push-notification', function(event) {
var notification = event.notification;
// จัดการการเปิด push ที่นี่
});
// เริ่มต้น Pushwoosh ซึ่งจะทริกเกอร์การแจ้งเตือนแบบพุชที่รอดำเนินการทั้งหมดเมื่อเริ่มต้น
pushwoosh.onDeviceReady({
appid: "XXXXX-XXXXX",
projectid: "XXXXXXXXXXXXXXX",
serviceName: "XXXX"
});
pushwoosh.registerDevice(
function(status) {
var pushToken = status.pushToken;
// จัดการการลงทะเบียนที่สำเร็จที่นี่
},
function(status) {
// จัดการข้อผิดพลาดในการลงทะเบียนที่นี่
}
);

onDeviceReady

Anchor link to
PushNotification.prototype.onDeviceReady = function( config )

[android, ios, wp8, windows] เริ่มต้นปลั๊กอิน Pushwoosh และทริกเกอร์ข้อความพุชเริ่มต้น ควรถูกเรียกใช้ทุกครั้งที่เปิดแอป

config.appid – รหัสแอปพลิเคชัน Pushwoosh

config.projectid – หมายเลขโปรเจกต์ GCM สำหรับแพลตฟอร์ม Android

config.serviceName – ชื่อบริการ MPNS สำหรับแพลตฟอร์ม wp8

example
// เริ่มต้น Pushwoosh ด้วย projectid: "GOOGLE_PROJECT_NUMBER", appid : "PUSHWOOSH_APP_ID", serviceName : "WINDOWS_PHONE_SERVICE" ซึ่งจะทริกเกอร์การแจ้งเตือนแบบพุชที่รอดำเนินการทั้งหมดเมื่อเริ่มต้น
pushwoosh.onDeviceReady({
appid : "XXXXX-XXXXX",
projectid: "XXXXXXXXXXXXXXX",
serviceName: "XXXX"
});

registerDevice

Anchor link to
PushNotification.prototype.registerDevice = function( success, fail )

[android, ios, wp8, windows] ลงทะเบียนอุปกรณ์สำหรับการแจ้งเตือนแบบพุชและดึงข้อมูล Push Token

success – callback เมื่อสำเร็จ Push token จะถูกส่งเป็นพารามิเตอร์ “status.pushToken” ไปยัง callback นี้

fail – callback เมื่อเกิดข้อผิดพลาด

example
pushwoosh.registerDevice(
function(status) {
alert("Registered with push token: " + status.pushToken);
},
function(error) {
alert("Failed to register: " + error);
}
);

unregisterDevice

Anchor link to
PushNotification.prototype.unregisterDevice = function( success, fail )

[android, ios, wp8, windows] ยกเลิกการลงทะเบียนอุปกรณ์จากการรับการแจ้งเตือนแบบพุช

success – callback เมื่อสำเร็จ

fail – callback เมื่อเกิดข้อผิดพลาด

PushNotification.prototype.setTags = function( config, success, fail )

[android, ios, wp8, windows] ตั้งค่าแท็กสำหรับอุปกรณ์

พารามิเตอร์

config – อ็อบเจกต์ที่มีแท็กอุปกรณ์ที่กำหนดเอง

success – callback เมื่อสำเร็จ Push token จะถูกส่งเป็นพารามิเตอร์ “status.pushToken” ไปยัง callback นี้

fail – callback เมื่อเกิดข้อผิดพลาด

example
// ตั้งค่าแท็ก: “deviceName” ด้วยค่า “hello” และ “deviceId” ด้วยค่า 10
pushwoosh.setTags({deviceName:"hello", deviceId:10},
function() {
console.warn('setTags success');
},
function(error) {
console.warn('setTags failed');
}
);
// ตั้งค่าแท็กรายการ "MyTag" ด้วยค่า (อาร์เรย์) "hello", "world"
pushwoosh.setTags({"MyTag":["hello", "world"]});
PushNotification.prototype.getTags = function( success, fail )

[android, ios, wp8, windows] ส่งคืนแท็กสำหรับอุปกรณ์ รวมถึงแท็กเริ่มต้น

success – callback เมื่อสำเร็จ รับแท็กเป็นพารามิเตอร์

fail – callback เมื่อเกิดข้อผิดพลาด

pushwoosh.getTags(
function(tags) {
console.warn('tags for the device: ' + JSON.stringify(tags));
},
function(error) {
console.warn('get tags error: ' + JSON.stringify(error));
}
);

getPushToken

Anchor link to
PushNotification.prototype.getPushToken = function( success )

[android, ios, wp8, windows] ส่งคืน push token หากมีอยู่ โปรดทราบว่า token จะมาใน callback ของฟังก์ชัน registerDevice ด้วย

success – callback เมื่อสำเร็จ

pushwoosh.getPushToken(
function(token) {
console.warn('push token: ' + token);
}
);

getPushwooshHWID

Anchor link to
PushNotification.prototype.getPushwooshHWID = function( success )

[android, ios, wp8, windows] ส่งคืน Pushwoosh HWID ที่ใช้สำหรับการสื่อสารกับ Pushwoosh API

success – callback ของ getPushwooshHWID

pushwoosh.getPushwooshHWID(
function(token) {
console.warn('Pushwoosh HWID: ' + token);
}
);

getRemoteNotificationStatus

Anchor link to
PushNotification.prototype.getRemoteNotificationStatus = function( callback, error )

[android, ios] ส่งคืนสถานะโดยละเอียดของการอนุญาตการแจ้งเตือนแบบพุช

callback – callback เมื่อสำเร็จ รับอ็อบเจกต์ที่มีคุณสมบัติดังต่อไปนี้:

{
”enabled” : แฟล็กเปิดใช้งานการแจ้งเตือน
”pushBadge” : ได้รับอนุญาตให้แสดง badge (สำหรับ iOS เท่านั้น)
”pushAlert” : ได้รับอนุญาตให้แสดง alert (สำหรับ iOS เท่านั้น)
”pushSound” : ได้รับอนุญาตให้เล่นเสียง (สำหรับ iOS เท่านั้น)
}

error — callback เมื่อเกิดข้อผิดพลาด

setApplicationIconBadgeNumber

Anchor link to
PushNotification.prototype.setApplicationIconBadgeNumber = function( badgeNumber )

[android, ios] ตั้งค่าหมายเลขบนไอคอนแอปพลิเคชัน (badge)

badgeNumber – หมายเลขบนไอคอน (badge)

getApplicationIconBadgeNumber

Anchor link to
PushNotification.prototype.getApplicationIconBadgeNumber = function( callback )

[android, ios] ส่งคืนหมายเลขบนไอคอนแอปพลิเคชัน (badge)

callback – callback เมื่อสำเร็จ

pushwoosh.getApplicationIconBadgeNumber(function(badge){ alert(badge);} );

addToApplicationIconBadgeNumber

Anchor link to
PushNotification.prototype.addToApplicationIconBadgeNumber = function( badgeNumber )

[android, ios] เพิ่มค่าให้กับหมายเลขบนไอคอนแอปพลิเคชัน (badge)

badgeNumber — หมายเลขที่จะเพิ่มเข้าไปใน badge

getLaunchNotification

Anchor link to
PushNotification.prototype.getLaunchNotification = function( callback )

[android, ios] ส่งคืน payload ของการแจ้งเตือนแบบพุชหากแอปถูกเปิดขึ้นจากการตอบสนองต่อการแจ้งเตือนแบบพุช หรือส่งคืน null

callback – callback เมื่อสำเร็จ

clearLaunchNotification

Anchor link to
PushNotification.prototype.clearLaunchNotification = function( callback )

[android, ios] ล้างการแจ้งเตือนเมื่อเปิดแอป, getLaunchNotification() จะส่งคืน null หลังจากการเรียกใช้ฟังก์ชันนี้

PushNotification.prototype.setUserId = function( userId )

[android, ios] ตั้งค่าตัวระบุผู้ใช้ (User Identifier) เช่น Facebook ID, ชื่อผู้ใช้, อีเมล หรือ ID ผู้ใช้อื่นๆ ซึ่งช่วยให้สามารถจับคู่ข้อมูลและเหตุการณ์ต่างๆ ของผู้ใช้คนเดียวกันในอุปกรณ์หลายเครื่องได้

userId – ตัวระบุผู้ใช้แบบสตริง

PushNotification.prototype.postEvent = function( event, attributes )

[android, ios] โพสต์เหตุการณ์สำหรับข้อความในแอป (In-App Messages) ซึ่งสามารถทริกเกอร์การแสดงข้อความในแอปตามที่ระบุไว้ใน Pushwoosh Control Panel

event – เหตุการณ์ที่ต้องการทริกเกอร์

attributes – อ็อบเจกต์ที่มีแอตทริบิวต์เพิ่มเติมของเหตุการณ์

pushwoosh.setUserId("XXXXXX");
pushwoosh.postEvent("buttonPressed", { "buttonNumber" : 4, "buttonLabel" : "banner" });

createLocalNotification

Anchor link to
PushNotification.prototype.createLocalNotification = function( config, success, fail )

[android, ios] ตั้งเวลาการแจ้งเตือนในเครื่อง (local notification)

config.msg – ข้อความแจ้งเตือน

config.seconds – การหน่วงเวลาการแจ้งเตือนเป็นวินาที

config.userData – ข้อมูลเพิ่มเติมที่จะส่งไปกับการแจ้งเตือน

success – callback เมื่อสำเร็จ

fail – callback เมื่อเกิดข้อผิดพลาด

pushwoosh.createLocalNotification({msg:"Your pumpkins are ready!", seconds:30, userData:{}})

clearLocalNotification

Anchor link to
PushNotification.prototype.clearLocalNotification = function()

[android] ล้างการแจ้งเตือนในเครื่องที่รอดำเนินการทั้งหมดที่สร้างโดย createLocalNotification

clearNotificationCenter

Anchor link to
PushNotification.prototype.clearNotificationCenter = function()

[android] ล้างการแจ้งเตือนทั้งหมดที่แสดงในศูนย์การแจ้งเตือน (Notification Center) ของ Android

setMultiNotificationMode

Anchor link to
PushNotification.prototype.setMultiNotificationMode = function( success, fail )

[android] อนุญาตให้แสดงการแจ้งเตือนหลายรายการในศูนย์การแจ้งเตือน (Notification Center) ของ Android

setSingleNotificationMode

Anchor link to
PushNotification.prototype.setSingleNotificationMode = function( success,
fail )

[android] อนุญาตให้แสดงเฉพาะการแจ้งเตือนล่าสุดในศูนย์การแจ้งเตือน (Notification Center) ของ Android

setSoundType

Anchor link to
PushNotification.prototype.setSoundType = function( type, success, fail )

[android] ตั้งค่าเสียงเริ่มต้นสำหรับการแจ้งเตือนแบบพุชที่เข้ามา

type – ประเภทเสียง (0 – ค่าเริ่มต้น, 1 – ไม่มีเสียง, 2 – เล่นเสมอ)

setVibrateType

Anchor link to
PushNotification.prototype.setVibrateType = function(type, success, fail )

[android] ตั้งค่าโหมดการสั่นเริ่มต้นสำหรับการแจ้งเตือนแบบพุชที่เข้ามา

type – ประเภทการสั่น (0 – ค่าเริ่มต้น, 1 – ไม่สั่น, 2 – สั่นเสมอ)

setLightScreenOnNotification

Anchor link to
PushNotification.prototype.setLightScreenOnNotification = function( on, success, fail )

[android] เปิดหน้าจอเมื่อได้รับการแจ้งเตือน

on – เปิด/ปิดการปลดล็อกหน้าจอ (ค่าเริ่มต้นคือปิด)

setEnableLED

Anchor link to
PushNotification.prototype.setEnableLED = function( on, success, fail )

[android] เปิดใช้งานไฟ LED ให้กระพริบเมื่อได้รับการแจ้งเตือนและหน้าจอดับอยู่

on – เปิด/ปิดการกระพริบของ LED (ค่าเริ่มต้นคือปิด)

setColorLED

Anchor link to
PushNotification.prototype.setColorLED = function( color, success, fail )

[android] ตั้งค่าสีของไฟ LED ใช้ร่วมกับ setEnableLED

color – สีของ LED ในรูปแบบจำนวนเต็ม ARGB

getPushHistory

Anchor link to
PushNotification.prototype.getPushHistory = function( success )

[android] ส่งคืนอาร์เรย์ของการแจ้งเตือนแบบพุชที่ได้รับ

success – callback เมื่อสำเร็จ

pushwoosh.getPushHistory(function(pushHistory) {
if(pushHistory.length == 0)
alert("no push history");
else
alert(JSON.stringify(pushHistory));
});
pushwoosh.clearPushHistory();

clearPushHistory

Anchor link to
PushNotification.prototype.clearPushHistory = function()

[android] ล้างประวัติการแจ้งเตือนแบบพุช

cancelAllLocalNotifications

Anchor link to
PushNotification.prototype.cancelAllLocalNotifications = function( callback )

[ios] ล้างการแจ้งเตือนในเครื่องทั้งหมดออกจากศูนย์การแจ้งเตือน (notification center)

presentInboxUI

Anchor link to

[android, ios] เปิดหน้าจอ กล่องข้อความ (Inbox)

PushNotification.prototype.presentInboxUI = function()

setCommunicationEnabled

Anchor link to

เมธอดแบบไบนารีสำหรับเปิด/ปิดการสื่อสารทั้งหมดกับ Pushwoosh ค่าบูลีน false จะยกเลิกการสมัครรับการแจ้งเตือนแบบพุชของอุปกรณ์และหยุดการดาวน์โหลดข้อความในแอป ค่า true จะให้ผลตรงกันข้าม

PushNotification.prototype.setCommunicationEnabled = function(enable, success, fail)

removeAllDeviceData

Anchor link to

ลบข้อมูลทั้งหมดเกี่ยวกับอุปกรณ์

PushNotification.prototype.removeAllDeviceData = function()

push-receive

Anchor link to

[android, ios] เหตุการณ์รับการแจ้งเตือนแบบพุช จะเกิดขึ้นเมื่อแอปพลิเคชันได้รับการแจ้งเตือนแบบพุชในขณะที่ทำงานอยู่เบื้องหน้า (foreground) หรือเบื้องหลัง (background) แอปพลิเคชันที่ปิดอยู่จะไม่ได้รับเหตุการณ์นี้

คุณสมบัติของเหตุการณ์

message – (string) ข้อความของการแจ้งเตือนแบบพุช

userdata – (object/array) ข้อมูลที่กำหนดเองของการแจ้งเตือนแบบพุช

onStart – (boolean) เป็นการแจ้งเตือนเมื่อเปิดแอปหรือไม่

foreground – (boolean) ได้รับการแจ้งเตือนขณะแอปทำงานอยู่เบื้องหน้าหรือไม่

android – (object) payload การแจ้งเตือนเฉพาะของ Android

ios – (object) payload การแจ้งเตือนเฉพาะของ iOS

windows – (object) payload การแจ้งเตือนเฉพาะของ Windows

document.addEventListener('push-receive',
function(event) {
var userData = event.notification.userdata;
if (typeof(userData) != "undefined") {
// จัดการข้อมูลการแจ้งเตือนที่กำหนดเอง
console.warn('user data: ' + JSON.stringify(userData));
}
}
);

การแจ้งเตือนเบื้องหน้า (Foreground notifications)

Anchor link to

โดยค่าเริ่มต้น ปลั๊กอิน Pushwoosh จะไม่แสดงการแจ้งเตือนเมื่อแอปทำงานอยู่เบื้องหน้า และจะทริกเกอร์เหตุการณ์ push-receive โดยอัตโนมัติ ดู คู่มือการปรับแต่งปลั๊กอิน สำหรับการควบคุมพฤติกรรมนี้

push-notification

Anchor link to

[android, ios, wp8, windows] เหตุการณ์ยอมรับการแจ้งเตือนแบบพุช จะเกิดขึ้นเมื่อผู้ใช้แตะที่การแจ้งเตือนแบบพุช

document.addEventListener('push-notification',
function(event) {
var message = event.notification.message;
var userData = event.notification.userdata;
if (typeof(userData) != "undefined") {
console.warn('user data: ' + JSON.stringify(userData));
}
}
);

คุณสมบัติของเหตุการณ์

เหมือนกับ push-receive

additionalAuthorizationOptions

Anchor link to

[ios only] ให้ตัวเลือกเพิ่มเติมสำหรับ การขออนุญาตการแจ้งเตือน (additional notification authorization options) ควรถูกเรียกใช้ก่อนการเรียก registerDevice

pushwoosh.additionalAuthorizationOptions({
"UNAuthorizationOptionCriticalAlert" : 1,
"UNAuthorizationOptionProvisional": 0 // ตั้งค่าเป็น 0 หรือไม่ต้องระบุตัวเลือกหากคุณไม่ต้องการเพิ่มลงในแอปของคุณ
});