diff options
Diffstat (limited to 'files/fr/web/api/extendablemessageevent')
6 files changed, 801 insertions, 0 deletions
diff --git a/files/fr/web/api/extendablemessageevent/data/index.html b/files/fr/web/api/extendablemessageevent/data/index.html new file mode 100644 index 0000000000..c4c6f6c3c2 --- /dev/null +++ b/files/fr/web/api/extendablemessageevent/data/index.html @@ -0,0 +1,128 @@ +--- +title: ExtendableMessageEvent.data +slug: Web/API/ExtendableMessageEvent/data +tags: + - API + - Experimental + - Propriété + - Reference + - Service Workers +translation_of: Web/API/ExtendableMessageEvent/data +--- +<div>{{APIRef("Service Workers API")}}{{SeeCompatTable}}</div> + +<p>La propriété <code><strong>data</strong></code> est une propriété en lecture seule rattachée à l'interface {{domxref("ExtendableMessageEvent")}} et qui permet d'accéder aux données de l'évènement. Il peut s'agir de n'importe quel type de donnée.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox">var mesDonnees = ExtendableMessageEventInstance.data;</pre> + +<h3 id="Valeur">Valeur</h3> + +<p>N'importe quel type de donnée.</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Quand le code suivant est utilisé dans un service worker pour répondre à un message <em>push</em> en envoyant les données reçues par {{domxref("PushMessageData")}} au contexte principal via un <a href="/fr/docs/Web/API/Channel_Messaging_API">message</a>, l'objet de l'évènement <code>onmessage</code> sera un <code>ExtendableMessageEvent</code>.</p> + +<pre class="brush: js">var port; + +self.addEventListener('push', function(e) { + var obj = e.data.json(); + + if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { + port.postMessage(obj); + } else if(obj.action === 'init' || obj.action === 'chatMsg') { + port.postMessage(obj); + } +}); + +self.onmessage = function(e) { + console.log(e.data); + port = e.ports[0]; +} +</pre> + +<h2 id="Spécifications">Spécifications</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spécification</th> + <th scope="col">État</th> + <th scope="col">Commentaire</th> + </tr> + <tr> + <td>{{SpecName('Service Workers', '#extendablemessage-event-data-attribute', 'ExtendableMessageEvent.data')}}</td> + <td>{{Spec2('Service Workers')}}</td> + <td>Définition initiale.</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2> + +<div>{{CompatibilityTable}}</div> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari (WebKit)</th> + </tr> + <tr> + <td>Support simple</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatGeckoDesktop("45.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>Fonctionnalité</th> + <th>Android</th> + <th>Webview Android</th> + <th>Firefox Mobile (Gecko)</th> + <th>Firefox OS</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + <th>Chrome pour Android</th> + </tr> + <tr> + <td>Support simple</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<p>[1] Les <em>service workers</em> (ainsi que les notifications <em><a href="/fr/docs/Web/API/Push_API">push</a></em>) ont été désactivées pour les <a href="https://www.mozilla.org/en-US/firefox/organizations/">éditions ESR de Firefox 45 et Firefox 52</a>.</p> + +<h2 id="Voir_aussi">Voir aussi</h2> + +<ul> + <li><a href="/fr/docs/Web/API/Service_Worker_API/Using_Service_Workers">Utiliser les <em>Service Workers</em></a></li> + <li><a href="https://github.com/mdn/sw-test">Exemple simple utilisant les <em>service workers</em></a></li> + <li><a href="https://jakearchibald.github.io/isserviceworkerready/">État d'avancement de l'implémentation pour <em>ServiceWorker</em> dans les navigateurs</a></li> + <li><a href="/fr/docs/Web/API/Channel_Messaging_API">Échange de messages entre les canaux</a></li> +</ul> diff --git a/files/fr/web/api/extendablemessageevent/extendablemessageevent/index.html b/files/fr/web/api/extendablemessageevent/extendablemessageevent/index.html new file mode 100644 index 0000000000..5ec94ab660 --- /dev/null +++ b/files/fr/web/api/extendablemessageevent/extendablemessageevent/index.html @@ -0,0 +1,129 @@ +--- +title: ExtendableMessageEvent.ExtendableMessageEvent() +slug: Web/API/ExtendableMessageEvent/ExtendableMessageEvent +tags: + - API + - Constructor + - Experimental + - Reference + - Service Workers +translation_of: Web/API/ExtendableMessageEvent/ExtendableMessageEvent +--- +<p>{{APIRef("Service Workers API")}}{{ SeeCompatTable() }}</p> + +<p>Le constructeur <code><strong>Extendable</strong></code><strong><code>MessageEvent()</code></strong>crée une nouvelle instance d'un {{domxref("ExtendableMessageEvent")}}.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox">var myEME = new ExtendableMessageEvent(type, init);</pre> + +<h3 id="Paramètres">Paramètres</h3> + +<dl> + <dt>type</dt> + <dd>Un {{domxref("DOMString")}} qui définie le type de message créé.</dd> + <dt>init {{optional_inline}}</dt> + <dd>Un objet d'initialisation, qui doit contenir les paramètres suivant: + <ul> + <li><code>data</code>: Les données de l'évènement — peut être de n'importe quel type.</li> + <li><code>origin</code>: Une {{domxref("DOMString")}} qui définie l'origine de l'environnement du service worker correspondant.</li> + <li><code>lastEventId</code>: Une {{domxref("DOMString")}} qui définie le dernier l'id du dernier évènement de l'évènement source.</li> + <li><code>source</code>: Le {{domxref("Client")}}, {{domxref("ServiceWorker")}} ou {{domxref("MessagePort")}} qui a envoyé un message.</li> + <li><code>ports</code>: Un tableau contenant les objets {{domxref("MessagePort")}} connectés au canal d'envoie des messages.</li> + </ul> + </dd> +</dl> + +<h2 id="Exemples">Exemples</h2> + +<pre class="brush: js">var init = { + data : 'Message de bienvenue', + source : MessagePortReference, + ports : MessagePortListReference + } + +var myEME = new ExtendableMessageEvent('message', init);</pre> + +<h2 id="Spécifications">Spécifications</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spécification</th> + <th scope="col">Statut</th> + <th scope="col">Commentaire</th> + </tr> + <tr> + <td>{{SpecName('Service Workers', '#extendablemessage-event-interface', 'ExtendableMessageEvent')}}</td> + <td>{{Spec2('Service Workers')}}</td> + <td>Définition initiale.</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilités_des_navigateurs">Compatibilités des navigateurs</h2> + +<div>{{CompatibilityTable}}</div> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari (WebKit)</th> + </tr> + <tr> + <td>Support de base</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatGeckoDesktop("45.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>Fonctionnalité</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>Support de base</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<p>[1] Les services workers (et <a href="/en-US/docs/Web/API/Push_API">Push</a>) on été désactivés dans la <a href="https://www.mozilla.org/en-US/firefox/organizations/">Sortie du support étendu de Firefox 45</a> (ESR.)</p> + +<h2 id="Voir_aussi">Voir aussi</h2> + +<ul> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker_API/Using_Service_Workers">Utiliser les Service Workers</a></li> + <li><a class="external external-icon" href="https://github.com/mdn/sw-test">Exemple simple de service workers</a></li> + <li><a class="external external-icon" href="https://jakearchibald.github.io/isserviceworkerready/">Les Services Workers sont-ils prêts ?</a></li> + <li><a href="/en-US/docs/Web/API/Channel_Messaging_API">Canal de messages</a></li> +</ul> diff --git a/files/fr/web/api/extendablemessageevent/index.html b/files/fr/web/api/extendablemessageevent/index.html new file mode 100644 index 0000000000..518622d6cc --- /dev/null +++ b/files/fr/web/api/extendablemessageevent/index.html @@ -0,0 +1,151 @@ +--- +title: ExtendableMessageEvent +slug: Web/API/ExtendableMessageEvent +tags: + - API + - Experimental + - ExtendableMessageEvent + - Interface + - Reference + - Service Workers +translation_of: Web/API/ExtendableMessageEvent +--- +<div>{{APIRef("Service Workers API")}}{{SeeCompatTable}}</div> + +<div> </div> + +<p>L'interface <strong><code>ExtendableMessageEvent</code></strong> de {{domxref("ServiceWorker_API", "ServiceWorker API")}} représentes un objet d'évenement qu'un évènement {{event("message_(ServiceWorker)","message")}} lance pour un service worker (quand un canal de message est reçu sur le {{domxref("ServiceWorkerGlobalScope")}} depuis un autre context) — étends la durée de vie de ces évènements.</p> + +<p>Cette interface hérite de l'interface {{domxref("ExtendableEvent")}}.</p> + +<h2 id="Constructeur">Constructeur</h2> + +<dl> + <dt>{{domxref("ExtendableMessageEvent.ExtendableMessageEvent()")}}</dt> + <dd>Crée une nouvelle instance de l'objet <code>ExtendableMessageEvent</code>.</dd> +</dl> + +<h2 id="Propriétés">Propriétés</h2> + +<p><em>Hérite des propriétés de son parent, </em><em>{{domxref("ExtendableEvent")}}</em>.</p> + +<dl> + <dt>{{domxref("ExtendableMessageEvent.data")}} {{readonlyinline}}</dt> + <dd>Retourne les données de l'évenements. Il peut être de n'importe quel type.</dd> + <dt>{{domxref("ExtendableMessageEvent.origin")}} {{readonlyinline}}</dt> + <dd>Retourne l'origine du {{domxref("ServiceWorkerClient")}} qui envoie le message.</dd> + <dt>{{domxref("ExtendableMessageEvent.lastEventId")}} {{readonlyinline}}</dt> + <dd>Représente, dans un <a href="en-US/docs/Server-sent_events/Using_server-sent_events">server-sent events</a>, le dernier ID de l'évenement source.</dd> + <dt>{{domxref("ExtendableMessageEvent.source")}} {{readonlyinline}}</dt> + <dd>Retourne une référence vers le service worker qui envoie le message.</dd> + <dt>{{domxref("ExtendableMessageEvent.ports")}} {{readonlyinline}}</dt> + <dd>Retourne un tableau contenant l'objet {{domxref("MessagePort")}} représentant les ports associés au canal de messagerie.</dd> +</dl> + +<h2 id="Méthodes">Méthodes</h2> + +<p><em>Hérite des méthodesde son parent, {{domxref("ExtendableEvent")}}</em>.</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Le code suivant est utilisé dans un service worker pour répondre à un message push en envoyant les données reçues via {{domxref("PushMessageData")}} au contexte principale via un <a href="/en-US/docs/Web/API/Channel_Messaging_API">channel message</a>, l'objet d'évènement du <code>onmessage</code> sera un <code>ExtendableMessageEvent</code>.</p> + +<pre class="brush: js">var port; + +self.addEventListener('push', function(e) { + var obj = e.data.json(); + + if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { + port.postMessage(obj); + } else if(obj.action === 'init' || obj.action === 'chatMsg') { + port.postMessage(obj); + } +}); + +self.onmessage = function(e) { + console.log(e); + port = e.ports[0]; +} +</pre> + +<h2 id="Spécifications">Spécifications</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spécification</th> + <th scope="col">Statut</th> + <th scope="col">Commentaireaire</th> + </tr> + <tr> + <td>{{SpecName('Service Workers', '#extendablemessage-event-interface', 'ExtendableMessageEvent')}}</td> + <td>{{Spec2('Service Workers')}}</td> + <td>Définition initiale.</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilités_des_navigateurs">Compatibilités des navigateurs</h2> + +<div>{{CompatibilityTable}}</div> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari (WebKit)</th> + </tr> + <tr> + <td>Support de base</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatGeckoDesktop("45.0")}}</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>Fonctionnalité</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>Support de base</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<h2 id="Voir_aussi">Voir aussi</h2> + +<ul> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker_API/Using_Service_Workers">Utiliser les Service Workers</a></li> + <li><a class="external external-icon" href="https://github.com/mdn/sw-test">Exemple simple de service workers</a></li> + <li><a class="external external-icon" href="https://jakearchibald.github.io/isserviceworkerready/">Les serviceWorker sont-ils prêts?</a></li> + <li><a href="/en-US/docs/Web/API/Channel_Messaging_API">Cannal de Messagerie</a></li> +</ul> diff --git a/files/fr/web/api/extendablemessageevent/lasteventid/index.html b/files/fr/web/api/extendablemessageevent/lasteventid/index.html new file mode 100644 index 0000000000..a44b88c854 --- /dev/null +++ b/files/fr/web/api/extendablemessageevent/lasteventid/index.html @@ -0,0 +1,130 @@ +--- +title: ExtendableMessageEvent.lastEventId +slug: Web/API/ExtendableMessageEvent/lastEventId +tags: + - API + - Experimental + - ExtendableMessageEvent + - Property + - Reference + - Service Workers + - lastEventID +translation_of: Web/API/ExtendableMessageEvent/lastEventId +--- +<p>{{APIRef("Service Workers API")}}{{SeeCompatTable}}</p> + +<p>La propriété en lecture seule <strong><code>lastEventID</code></strong> de l'interface {{domxref("ExtendableMessageEvent")}} représente, dans <a href="https://developer.mozilla.org/en-US/docs/Web/API/en-US/docs/Server-sent_events/Using_server-sent_events">les évenements envoyés par lle serveur</a>, le dernier ID de l'évenement source.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox">var myLastEventId = ExtendableMessageEventInstance.lastEventId;</pre> + +<h3 id="Value">Value</h3> + +<p>Une {{domxref("DOMString")}}.</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Le code suivant est utilisé, dans un service worker, pour répondre à un message push en envoyant les données reçues par le {{domxref("PushMessageData")}} au contexte principale, via le <a href="/en-US/docs/Web/API/Channel_Messaging_API">canal de messages</a>. L'objet événement de <code>onmessage</code> sera un <code>ExtendableMessageEvent.</code></p> + +<pre class="brush: js">var port; + +self.addEventListener('push', function(e) { + var obj = e.data.json(); + + if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { + port.postMessage(obj); + } else if(obj.action === 'init' || obj.action === 'chatMsg') { + port.postMessage(obj); + } +}); + +self.onmessage = function(e) { + console.log(e.lastEventId); + port = e.ports[0]; +} +</pre> + +<h2 id="Spécifications">Spécifications</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spécification</th> + <th scope="col">Statut</th> + <th scope="col">Commentaire</th> + </tr> + <tr> + <td>{{SpecName('Service Workers', '#extendablemessage-event-lasteventid-attribute', 'ExtendableMessageEvent.lastEventId')}}</td> + <td>{{Spec2('Service Workers')}}</td> + <td>Définition initiale.</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilités_des_navigateurs">Compatibilités des navigateurs</h2> + +<div>{{CompatibilityTable}}</div> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari (WebKit)</th> + </tr> + <tr> + <td>Support de base</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatGeckoDesktop("45.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>Fonctionnalité</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>Support de base</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<p>[1] Service workers (and <a href="/en-US/docs/Web/API/Push_API">Push</a>) have been disabled in the <a href="https://www.mozilla.org/en-US/firefox/organizations/">Firefox 45 Extended Support Release</a> (ESR.)</p> + +<h2 id="Voir_aussi">Voir aussi</h2> + +<ul> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker_API/Using_Service_Workers">Utilisation des Service Workers</a></li> + <li><a class="external external-icon" href="https://github.com/mdn/sw-test">Exemple simple des service workers</a></li> + <li><a class="external external-icon" href="https://jakearchibald.github.io/isserviceworkerready/">Est-ce que les service workers sont prêts ?</a></li> + <li><a href="/en-US/docs/Web/API/Channel_Messaging_API">Canal de messages</a></li> +</ul> diff --git a/files/fr/web/api/extendablemessageevent/origin/index.html b/files/fr/web/api/extendablemessageevent/origin/index.html new file mode 100644 index 0000000000..ffb8f070f3 --- /dev/null +++ b/files/fr/web/api/extendablemessageevent/origin/index.html @@ -0,0 +1,134 @@ +--- +title: ExtendableMessageEvent.origin +slug: Web/API/ExtendableMessageEvent/origin +tags: + - API + - Experimental + - ExtendableMessageEvent + - Property + - Reference + - Service Workers + - origin +translation_of: Web/API/ExtendableMessageEvent/origin +--- +<p>{{APIRef("Service Workers API")}}{{SeeCompatTable}}</p> + +<p>La propriété en lecture seule <font face="Consolas, Liberation Mono, Courier, monospace"><strong>origin</strong></font> de l'interface {{domxref("ExtendableMessageEvent")}} retourne l'origine du {{domxref("ServiceWorkerClient")}} qui a envoyé le message.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox">var myOrigin = ExtendableMessageEventInstance.origin;</pre> + +<h3 id="Value">Value</h3> + +<p>Une {{domxref("DOMString")}}.</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Le code suivant est utilisé, dans un service worker, pour répondre à un message push en envoyant les données reçues par le <a href="https://developer.mozilla.org/fr/docs/Web/API/PushMessageData" title="Cette documentation n'a pas encore été rédigée, vous pouvez aider en contribuant !"><code>PushMessageData</code></a> au contexte principale, via le <a href="https://developer.mozilla.org/en-US/docs/Web/API/Channel_Messaging_API">canal de messages</a>. L'objet événement de <code>onmessage</code> sera un <code>ExtendableMessageEvent.</code></p> + +<pre class="brush: js">var port; + +self.addEventListener('push', function(e) { + var obj = e.data.json(); + + if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { + port.postMessage(obj); + } else if(obj.action === 'init' || obj.action === 'chatMsg') { + port.postMessage(obj); + } +}); + +self.onmessage = function(e) { + console.log(e.origin); + port = e.ports[0]; +} +</pre> + +<h2 id="Spécifications">Spécifications</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spécification</th> + <th scope="col">Statut</th> + <th scope="col">Commentaire</th> + </tr> + <tr> + <td>{{SpecName('Service Workers', '#extendablemessage-event-origin-attribute', 'ExtendableMessageEvent.origin')}}</td> + <td>{{Spec2('Service Workers')}}</td> + <td>Définition initiale.</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilités_des_navigateurs">Compatibilités des navigateurs</h2> + +<div>{{CompatibilityTable}}</div> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari (WebKit)</th> + </tr> + <tr> + <td>Support de base</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatGeckoDesktop("45.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>Fonctionnalité</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>Support de base</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<p>[1] Les service workers (et le <a href="/en-US/docs/Web/API/Push_API">Push</a>) ont été désactivés de <a href="https://www.mozilla.org/en-US/firefox/organizations/">Firefox 45 Extended Support Release</a> (ESR.)</p> + +<h2 id="Voir_aussi">Voir aussi</h2> + +<ul> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker_API/Using_Service_Workers" style="font-size: 14px; font-weight: normal; line-height: 1.5;">Utilisation des Service Workers</a></li> + <li><a href="https://github.com/mdn/sw-test" style="line-height: 1.5;">Exemple simple des service workers</a></li> + <li><a href="https://jakearchibald.github.io/isserviceworkerready/">Est-ce que les service workers sont prêts ?</a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Channel_Messaging_API">Canal de messages</a></li> +</ul> + +<article id="wikiArticle"> </article> + +<p> </p> diff --git a/files/fr/web/api/extendablemessageevent/ports/index.html b/files/fr/web/api/extendablemessageevent/ports/index.html new file mode 100644 index 0000000000..3a27d3f199 --- /dev/null +++ b/files/fr/web/api/extendablemessageevent/ports/index.html @@ -0,0 +1,129 @@ +--- +title: ExtendableMessageEvent.ports +slug: Web/API/ExtendableMessageEvent/ports +tags: + - API + - Experimental + - ExtendableMessageEvent + - Property + - Reference + - Service Workers + - ports +translation_of: Web/API/ExtendableMessageEvent/ports +--- +<p>{{APIRef("Service Workers API")}}{{SeeCompatTable}}</p> + +<p>La propriété en lecture seule <font face="Consolas, Liberation Mono, Courier, monospace"><strong>ports</strong></font> de l'interface {{domxref("ExtendableMessageEvent")}} retourne un tableau contenant les objects {{domxref("MessagePort")}} représentants les ports associés aux canaux de messages associés (le canal du message est envoyé).</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox">var myPorts = ExtendableMessageEventInstance.ports;</pre> + +<h3 id="Value">Value</h3> + +<p>Un tableau de {{domxref("MessagePort")}}.</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Le code suivant est utilisé, dans un service worker, pour répondre à un message push en envoyant les données reçues par le <a href="https://developer.mozilla.org/fr/docs/Web/API/PushMessageData" title="Cette documentation n'a pas encore été rédigée, vous pouvez aider en contribuant !"><code>PushMessageData</code></a> au contexte principale, via le <a href="https://developer.mozilla.org/en-US/docs/Web/API/Channel_Messaging_API">canal de messages</a>. L'objet événement de <code>onmessage</code> sera un <code>ExtendableMessageEvent.</code></p> + +<pre class="brush: js">var port; + +self.addEventListener('push', function(e) { + var obj = e.data.json(); + + if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { + port.postMessage(obj); + } else if(obj.action === 'init' || obj.action === 'chatMsg') { + port.postMessage(obj); + } +}); + +self.onmessage = function(e) { + port = e.ports[0]; +} +</pre> + +<h2 id="Spécifications">Spécifications</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spécification</th> + <th scope="col">Statut</th> + <th scope="col">Commentaire</th> + </tr> + <tr> + <td>{{SpecName('Service Workers', '#extendablemessage-event-ports-attribute', 'ExtendableMessageEvent.ports')}}</td> + <td>{{Spec2('Service Workers')}}</td> + <td>Définition initiale.</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilités_des_navigateurs">Compatibilités des navigateurs</h2> + +<div>{{CompatibilityTable}}</div> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari (WebKit)</th> + </tr> + <tr> + <td>Support de base</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatGeckoDesktop("45.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>Fonctionnalité</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>Support de base</td> + <td>{{CompatNo}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatVersionUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatNo}}</td> + <td>{{CompatUnknown}}</td> + </tr> + </tbody> +</table> +</div> + +<p>[1] Les service workers (et <a href="/en-US/docs/Web/API/Push_API">Push</a>) on été désactivés dans <a href="https://www.mozilla.org/en-US/firefox/organizations/">Firefox 45 Extended Support Release</a> (ESR.)</p> + +<h2 id="Voir_aussi">Voir aussi</h2> + +<ul> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker_API/Using_Service_Workers">Utilisation des Service Workers</a></li> + <li><a href="https://github.com/mdn/sw-test">Exemple simple des service workers</a></li> + <li><a href="https://jakearchibald.github.io/isserviceworkerready/">Est-ce que les service workers sont prêts ?</a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Channel_Messaging_API">Canal de messages</a></li> +</ul> |