Pushdy
Search
K

React Native SDK

Các hàm trong React Native SDK

initPushdy

Kích hoạt React Native SDK chạy và định danh người dùng cho Device. Mỗi Device sẽ có một Device ID duy nhất.
Javascript
await Pushdy.initPushdy({ deviceId: 'YOUR_DEVICE_ID' });

getDeviceId

Với hàm này bạn có thể truy xuất Device ID của bạn.
Javascript
var myDeviceId = await getDeviceId();

isNotificationEnabled

Kiểm tra xem người dùng có bật Push Notification cho App của bạn hay không.
Javascript
var isEnabled = await isNotificationEnabled();

getDeviceToken

Lấy chuỗi Push Token. Token này chỉ có khi người dùng bật Push Notification cho App.
Javascript
var deviceToken = await getDeviceToken();

getPendingNotification

Lấy Notification mới nhất từ danh sách các Notification chưa được xử lý. Giá trị trả về là đối tượng Notification.
Javascript
var notification = await getPendingNotification();

getPendingNotifications

Lấy danh sách toàn bộ Notification từ danh sách hàng đợi chưa được xử lý. Giá trị trả về là mảng các đối tượng Notification.
Javascript
var notifications = await getPendingNotifications();

setAttribute

Tracking dữ liệu để gửi lên Pushdy nhằm phục vụ phân đoạn người dùng khi gửi Push. Với hàm này, dữ liệu mới sẽ đè lên dữ liệu cũ. Bạn có thể xem thêm chi tiết cách định nghĩa thuộc tính tại phần Tạo thuộc tính.
Javascript
await setAttribute("your_attribute_name", "your_value");

pushAttribute

Tương tự hàm setAttribute nhưng chỉ hoạt động với thuộc tính được định nghĩa là kiểu mảng (Array). Mảng giá trị mới sẽ được gắn thêm vào sau giá trị cũ.
Javascript
await pushAttribute("your_attribute_name", ["your_value"])

getPlayerID

Lấy Player ID của người dùng, ID này do Pushdy sinh ra cho mỗi người dùng đầu cuối. Chú ý, mỗi 1 thiết bị sẽ có 1 Player ID duy nhất, trường hợp gỡ ứng dụng và cài lại thì Player ID vẫn giữ nguyên.
Javascript
var playerID = await getPlayerID();

setReadyForHandlingNotification

Nếu thiết lập giá trị là false có nghĩa là Push Notification sẽ không được xử lý ngay tại thời điểm nhận được mà sẽ được đưa vào hàng đợi. Bạn chỉ có thể lấy và xử lý Push Notification này bằng cách sử dụng hàm getPendingNotification. Mặc định giá trị được thiết lập sẽ là true, có nghĩa là Push Notification sẽ được xử lý ngay khi Device của bạn nhận được.
Javascript
var manualHandlingNotification = true
await setReadyForHandlingNotification(manualHandlingNotification);

Các Event trong React Native SDK

Để lắng nghe được các Event, bạn cần đăng ký như dưới đây:
Javascript
Pushdy.startSubscribers({
onNotificationOpened: ({notification, fromState}) => {},
onNotificationReceived: ({notification, fromState}) => {},
onTokenUpdated: ({ deviceToken }) => {},
});

onNotificationReceived

Được gọi khi app của bạn nhận được Push Notification. Chú ý, sự kiện này chỉ xảy ra khi App của bạn đang được mở.
Javascript
onNotificationReceived({notification, fromState}) {
console.log('Received notification: ', {notification, fromState});
}

onNotificationOpened

Được gọi khi người dùng nhấp vào Push Notification.
Javascript
onNotificationOpened({notification, fromState}) {
console.log('Opened notification: ', {notification, fromState});
}

onTokenUpdated

Được gọi khi Device Token bị thay đổi.
Javascript
onTokenUpdated({ deviceToken }) {
console.log('Received new Device Token: ', deviceToken)
}

Một số hàm dùng để tuỳ biến hiển thị Push Notification

setPushBannerAutoDismiss

Bật/tắt tự động ẩn cửa sổ cho Push Notification khi bạn đang mở App. Nếu bạn tắt điều khiển tự động, người dùng sẽ phải chủ động nhấp vào "x" button trên cửa sổ Push để tắt thông báo.
Javascript
await setPushBannerAutoDismiss(true);

setPushBannerDismissDuration

Thiết lập thời gian hiển thị cửa sổ Push Notification khi bạn đang mở App. Mặc định, thời gian hiển thị là 5 giây. Hàm này chỉ hoạt động khi bạn bật chức năng tự động ẩn cửa sổ Push.
Javascript
await setPushBannerDismissDuration(5); // 5 seconds

setCustomMediaKey

Tuỳ chỉnh Json key cho media url để hiển thị ảnh trên cửa sổ Push Notification khi đang bật App. Mặc định, media_url sẽ là key được sử dụng.
Javascript
await setCustomMediaKey("your_custom_media_key");