# Windows Javascript SDK

[**ดาวน์โหลด SDK**](https://github.com/Pushwoosh/pushwoosh-windows-sdk)\
[**ตัวอย่าง W8 JS**](https://github.com/Pushwoosh/pushwoosh-windows-sdk/tree/master/Samples/Win8.1JS)

<Aside>
#### รองรับ Windows 8.1, Windows 10
</Aside>

## การผสานการทำงาน SDK

<Aside type="note">
คุณสามารถใช้ emulator ขณะทำงานกับการแจ้งเตือนแบบพุชได้
</Aside>

เพื่อผสานการทำงาน Pushwoosh เข้ากับแอปพลิเคชัน Windows JS ของคุณ ให้ทำตามขั้นตอนด้านล่าง

**1.** ดาวน์โหลดแพ็คเกจ SDK ของเรา

**2.** เพิ่มการอ้างอิงไปยัง **PushSDK/Project-Win8.1-WNS/PushSDK.winmd** ในโปรเจกต์ของคุณ\
หรือ **PushSDK/Project-Win10-WNS/PushSDK.winmd** หากคุณพัฒนาสำหรับ Windows 10

**3.** เริ่มต้นบริการพุชด้วยโค้ดต่อไปนี้:

```javascript
var service = new PushSDK.NotificationService.getCurrent("YOUR_PUSHWOOSH_APP_ID");
 
service.ononpushaccepted = function (args) {
    //code to handle push notification
    //display push notification payload for test only
    var md = new Windows.UI.Popups.MessageDialog(args.toString());
    md.showAsync()
}
 
service.ononpushtokenreceived = function (pushToken) {
    //code to handle push token
}
 
service.ononpushtokenfailed = function (error) {
    //code to handle push subscription failure
}
 
service.subscribeToPushService();
```

**4.** ในฟังก์ชัน **app.onactivated** ของคุณ ให้เพิ่มโค้ดต่อไปนี้:

```javascript
app.onactivated = function (args) {
        if (args.detail.kind === activation.ActivationKind.launch) {
            if (args.detail.previousExecutionState !== activation.ApplicationExecutionState.terminated) {
                // TODO: This application has been newly launched. Initialize
                // your application here.
 
                //Handle start push
                PushSDK.NotificationService.handleStartPush(args.detail.arguments);
```

<Aside type="caution" title="ข้อสำคัญ"> 
หากคุณวางแผนที่จะใช้การแจ้งเตือนแบบ Toast โปรดตรวจสอบให้แน่ใจว่าการแจ้งเตือนแบบ Toast เปิดใช้งานอยู่ในโปรเจกต์แอปพลิเคชันของคุณ ไปที่แท็บ Application UI ในการตั้งค่า manifest และตั้งค่า **Toast Capable** เป็น **Yes** มิฉะนั้น การแจ้งเตือนแบบ Toast จะไม่ทำงานบนอุปกรณ์
</Aside>

<img src="/windows-windows-javascript-sdk-1.webp" alt=""/>

## คุณสมบัติขั้นสูง

### แท็ก

ด้วยแท็ก คุณสามารถสร้างชุดของอุปกรณ์ตามเกณฑ์ต่างๆ ได้

**1.** สร้างรายการแท็ก:

```javascript
var keys = ["name1", "name2"];
var values = ["value1", "value2"];
```

**2.** ส่งแท็กไปยัง Pushwoosh:

```javascript
service.sendTag(keys, values);
```