Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Revision 1133727 of ServiceWorkerRegistration.pushManager

  • Revisi slug: Web/API/ServiceWorkerRegistration/pushManager
  • Revisi judul: ServiceWorkerRegistration.pushManager
  • Revisi ID: 1133727
  • Dibuat:
  • Pembuat: rmsubekti
  • Revisi terkini? Tidak
  • Komentar

Perubahan Konten

{{SeeCompatTable}}{{APIRef("Service Workers API")}}

Properti pushManager 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.

Sintaks

myPushManager = ServiceWorker.pushManager 

Value

Objek {{domxref("PushManager")}}.

Contoh

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);
      }
    );
  });

Spesifikasi

Specification Status Comment
{{SpecName('Push API', '#pushmanager-interface', 'PushManager')}} {{Spec2('Push API')}} Initial definition.

Kompabilitas Browser

{{CompatibilityTable}}
Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support {{CompatChrome(42.0)}} {{ CompatGeckoDesktop("44.0") }}[1] {{CompatNo}} {{CompatUnknown}} {{CompatNo}}
Feature Android Android Webview Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatChrome(42.0)}}

[1] Service workers (dan Push) telah dinonaktifkan di Firefox 45 Extended Support Release (ESR.)

Lihat Juga

Sumber Perubahan

<div>{{SeeCompatTable}}{{APIRef("Service Workers API")}}</div>

<p>Properti&nbsp;<strong><code>pushManager</code></strong> dari interface {{domxref("ServiceWorkerRegistration")}} &nbsp;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; word-spacing: 0px;">
myPushManager = ServiceWorker.pushManager 
</pre>

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

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

<h2 id="Examples">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="Specifications">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="Browser_compatibility">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&nbsp;<a href="/en-US/docs/Web/API/Push_API">Push</a>) telah dinonaktifkan di&nbsp;<a href="https://www.mozilla.org/en-US/firefox/organizations/">Firefox 45 Extended Support Release</a> (ESR.)</p>

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

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