aboutsummaryrefslogtreecommitdiff
path: root/files/id/web/api/serviceworkerregistration/pushmanager/index.html
blob: 57f61c137565fddf7bf1d00fd88ea9bee053f5cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
---
title: ServiceWorkerRegistration.pushManager
slug: Web/API/ServiceWorkerRegistration/pushManager
tags:
  - API
  - Property
  - Push
  - PushManager
  - ServiceWorker
translation_of: Web/API/ServiceWorkerRegistration/pushManager
---
<div>{{SeeCompatTable}}{{APIRef("Service Workers API")}}</div>

<p>Properti <strong><code>pushManager</code></strong> dari interface {{domxref("ServiceWorkerRegistration")}}  Mengembalikan sebuah referensi ke Interface {{domxref("PushManager")}} untuk mengatur push subscriptions; termasuk dukungan untuk berlangganan, mendapatkan langganan yang aktif, dan mengakses izin status push.</p>

<h2 id="Syntax" name="Syntax" style="line-height: 30px; font-size: 2.14285714285714rem;">Sintaks</h2>

<pre class="syntaxbox" style="font-size: 14px;">myPushManager = ServiceWorker.pushManager
</pre>

<h3 id="Value">Value</h3>

<p>Objek {{domxref("PushManager")}}.</p>

<h2 id="Contoh">Contoh</h2>

<pre class="brush: js">this.onpush = function(event) {
  console.log(event.data);
  // Dari sini kita bisa menyimpan data ke IndexedDB, mengirimnya ke setiap
  // jendela yang terbuka, menampilkan notifikasi, dsb.
}

navigator.serviceWorker.register('serviceworker.js').then(
  function(serviceWorkerRegistration) {
    serviceWorkerRegistration.pushManager.subscribe().then(
      function(pushSubscription) {
        console.log(pushSubscription.subscriptionId);
        console.log(pushSubscription.endpoint);
        // Detail langganan push dibutuhkan aplikasi
        // server kini tersedia, dan dapat di kirimkan menggunakan,
        // XMLHttpRequest misalnya.
      }, function(error) {
        // Pada saat pengembangan menampilkan log ke konsole sangatlah membantu
        // Di lingkungan produksi juga dapat bermanfaat untuk mengirimkan
        // informasi error kembali ke aplikasi server.
        console.log(error);
      }
    );
  });</pre>

<h2 id="Spesifikasi">Spesifikasi</h2>

<table class="standard-table">
 <tbody>
  <tr>
   <th scope="col">Specification</th>
   <th scope="col">Status</th>
   <th scope="col">Comment</th>
  </tr>
  <tr>
   <td>{{SpecName('Push API', '#pushmanager-interface', 'PushManager')}}</td>
   <td>{{Spec2('Push API')}}</td>
   <td>Initial definition.</td>
  </tr>
 </tbody>
</table>

<h2 id="Kompabilitas_Browser">Kompabilitas Browser</h2>

<div>{{CompatibilityTable}}</div>

<div id="compat-desktop">
<table class="compat-table">
 <tbody>
  <tr>
   <th>Feature</th>
   <th>Chrome</th>
   <th>Firefox (Gecko)</th>
   <th>Internet Explorer</th>
   <th>Opera</th>
   <th>Safari (WebKit)</th>
  </tr>
  <tr>
   <td>Basic support</td>
   <td>{{CompatChrome(42.0)}}</td>
   <td>{{ CompatGeckoDesktop("44.0") }}<sup>[1]</sup></td>
   <td>{{CompatNo}}</td>
   <td>{{CompatUnknown}}</td>
   <td>{{CompatNo}}</td>
  </tr>
 </tbody>
</table>
</div>

<div id="compat-mobile">
<table class="compat-table">
 <tbody>
  <tr>
   <th>Feature</th>
   <th>Android</th>
   <th>Android Webview</th>
   <th>Firefox Mobile (Gecko)</th>
   <th>Firefox OS</th>
   <th>IE Mobile</th>
   <th>Opera Mobile</th>
   <th>Safari Mobile</th>
   <th>Chrome for Android</th>
  </tr>
  <tr>
   <td>Basic support</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatChrome(42.0)}}</td>
  </tr>
 </tbody>
</table>
</div>

<p>[1] Service workers (dan <a href="/en-US/docs/Web/API/Push_API">Push</a>) telah dinonaktifkan di <a href="https://www.mozilla.org/en-US/firefox/organizations/">Firefox 45 Extended Support Release</a> (ESR.)</p>

<h2 id="Lihat_Juga">Lihat Juga</h2>

<ul>
 <li><a href="/en-US/docs/Web/API/Push_API">Push API</a></li>
</ul>