Extension:CentralNotice/fr

L'extension CentralNotice délivre des annonces (habituellement sous la forme de bannières) sur les wikis Wikimedia. Elle est beaucoup utilisée par l'équipe Fundraising pour solliciter des donnations, et pour des annonces présentant un certain intérêt pour les communautés Wikimedia et les utilisateurs. CentralNotice peut cibler les annonces par pays, par langue, par projet, par appareil et selon l'état de connexion de l'utilisateur.

Cette page contient des informations pour les développpeurs de CentralNotice et pour les administrateurs de wikis qui veulent installer CentralNotice sur leur propres sites. Pour apprendre comment créer et configurer les campagnes CentralNotice, voir Help:CentralNotice sur Meta-Wiki. Pour les informations concernant la configuration de CentralNotice sur la grappe de la Fondation Wikimedia, voir CentralNotice sur Wikitech.

CentralNotice permet la distribution centrale d'annonces vers plusieurs wikis (appelés wikis abonnés) à partir d'un wiki central (le wiki d' the infrastructure). Si vous devez adresser vos messages à un seul wiki, utilisez plutôt Sitenotice à la place.

Installation
Note: CentralNotice est développé, testé, et connu pour être déployé seulement sur les wikis qui n'utilisent pas le préfixage des tables. Si votre configuration utilise le préfixage des tables il n'y a aucune garantie que cette extension va fonctionner. N'hésitez pas de rapporter tout bogue sur Phabricator.

Pour les wikis

 * 1) Téléchargez le dernier instantané et développez le dans le répertoire de votre extension.
 * 2) Ajoutez à $2 ceci : $3
 * 3) Par défaut, la recherche GeoIP est désactivée. Néanmoins si le cookie $4 est pré-populé, sa valeur sera utilisée. Pour le développement local, vous pouvez activer une implémentation côté client qui utilise $url comme suit. Pour plus d'informations, voir $geoip.
 * 1) Add to the following:
 * 2) By default, GeoIP lookup is disabled. If the  cookie is pre-populated, however, its value will be used. For local development, you can enable a client-side implementation that uses https://freegeoip.net as follows. For more information, see GeoIP_lookup.

Le wiki d'infrastructure

 * 1) A partir de la ligne de commande, allez à la racine du wiki et exécutez
 * 2) Modifiez $2 et initialisez...
 * 3) $3 à
 * 4) $4 à un tableau de projets qui vont s'abonner au wiki central. Par exemple $5
 * 5) Par défaut le groupe $6 est le seul groupe pouvant administrer CentralNotice. Si vous avez besoin de groupes supplémentaires, assignez leur les droits $7 et $8.
 * 1) Edit   and set ...
 * 2)   to true
 * 3)   to be an array of projects that will subscribe to the central wiki. For example
 * 4) By default the   group is the only group with the ability to administer CentralNotice. If additional groups are needed, assign them the   and   permissions.

Les wikis abonnés
Modifiez  et initialisez...
 * 1) $20 à $21;
 * 2) $30 pour être une entrée de $31;
 * 3) $40 au protocole (potentionellement neutre) et au domaine du wiki central. Par exemple $41;
 * 4) $50 avec l'URL de $51 du wiki central, par exemple : $52;
 * 5) soit $60 avec le nom de la base de données du wiki d'infrastructure, soit $70 avec le point de terminaison d'API du wiki d'infrastructure; et
 * 6) $80 avec l'URL de $81 du wiki central. Par exemple : $82.


 * 1)   to  ;
 * 2)   to be an entry in  ;
 * 3)   to the protocol (potentially neutral) and domain of the central wiki. For example  ;
 * 4)   to the URL of Special:BannerLoader on the central wiki, for example:  ;
 * 5) either   to the name of the infrastructure wiki's database, or   to the API endpoint of the infrastructure wiki; and
 * 6)   to the URL of Special:RecordImpression on the central wiki. For example:.

Configuration rapide du développeur
Pour la plupart des tâches de développement, vous pouvez utiliser un wiki unique pour les deux rôles d'infrastructure et d'abonné. Voici des lignes d'exemple à inclure dans. (Voir les notes dans les commentaires.)

Tout code qui s'exécute sur les wikis abonnés  devrait être testé avec MobileFrontend, pour s'assurer qu'il fonctionne avec la version mobile du site.

Dépendances
Certaines fonctionalités de CentralNotice nécessitent d'autres extensions MediaWiki, y compris EventLogging et Translate.

Obtenir de l'aide
L'équipe Fundraising de Wikimedia gère CentralNotice. Pour les questions concernant l'installation, la remontée des bogues, ou l'utilisation de CentralNotice, veuillez écrire un courriel à [mailto:wikitech-l@lists.wikimedia.org wikitech-l@lists.wikimedia.org] ou nous rejoindre sur Freenode au canal #wikimedia-fundraising.

Droits

 *  0 — autorisation nécessaire pour modifier les campagnes et les bannières. N'a de sens que que pour les wikis d'infrastrusture (voir aussi  1).
 * 263770 est nécessaire pour modifier le contenu de la bannière.
 *   is required to edit banner content.

Concepts d'architecture
D'un point de vue utilisateur, les objets CentralNotice de niveau supérieur sont des campaigns (c'est à dire des notices) et des banners1 (les modèles). Ils dépendent des fonctions du système de banners2 et de banners3.


 * Banner0 — un bloc unique de Banner1 traductibles qui va s'afficher en haut des pages de  . L'état connecté de l'utilisateur, le type de l'appareil, la langue de l'interface utilisateur Banner3 sont appliqués aux bannières.
 * Les bannières peuvent être groupées par Banner4. Toutes les bannières d'une catégorie partagent les cookies du côté utilisateur, telles que le cookie de masquage qui est créé quand un utilisateur clique sur le bouton de fermeture d'une bannière.
 * Banners may be grouped by category. All banners in a category share user side cookies, such as the hiding cookie that is set when a user clicks a banner close button.


 * allocation0 — une collection de bannières. Les sélecteurs de projet, pays, et de langue du contenu,  s'appliquent au niveau de la campagne. Le système autorise dynamiquement autant de campagnes actives que vous désirez à un même moment en calculant un allocation1 pour chaque bannière dans une campagne active. Les campagnes sont définies actives si l'heure du wiki central est plus grande que la date de début de la campagne, moins la date de fin de la campagne, et que la campagne est marquée commme étant active.
 * Les bannières d'une campagne sont assignées à un $30 et un $31. Les 'buckets' sont cependant un autre sélecteur, et les poids affectent les allocations relatives des bannières à l'intérieur d'une campagne.
 * Il existe quatre niveaux de priorité dans CentralNotice. Les campagnes des priorités les plus hautes auront une place plus importante à l'affichage des pages.
 * Les campagnes peuvent être closes (locked) ce qui empêchera la modification et la suppression de la campagne; mais non pas de la bannière à l'intérieur d'une campagne.
 * Banners in a campaign are assigned a bucket and weight. Buckets are yet another selector, and weight affects the relative allocation of banners inside a campaign.
 * There are four priority levels in CentralNotice. Higher priority campaigns will get a greater allocation of page views.
 * Campaigns may be locked which will prevent editing and deletion of the campaign; but not the banners inside a campaign.


 * Selector — toute propriété qui peut être fitrée en vue de l'allocation. Ceci permet par exemple, à différentes bannières d'être affichées aux utilisateurs connectés ou à ceux qui ne le sont pas, en Argentine, et qui regardent la wikipédia anglaise.
 * Un vecteur de sélection est l'ensemble complet des sélecteurs qu'un utilisateur présente au wiki central lorsqu'il demande une bannière.
 * A selection vector is the complete set of selectors a user presents to the central wiki when requesting a banner.


 * Allocation — La probabilité qu'une bannière soit affichée à un utilisateur pour un vecteur de sélection donné.

Documents de conception

 * Projet de recherche d'architecture 2017
 * Algorithme d'allocation des bannières
 * Schéma de la base de données / structure des tables
 * Banner allocation algorithm
 * Database schema / table layout

Recherche GeoIP
By default, CentralNotice has no client-side GeoIP lookup service configured. This is optimised for the Wikimedia Foundation production configuration where Varnish populates the  cookie from the server-side.

You can configure CentralNotice to use a custom data source client-side through the  configuration variable. This variable expects the name of a ResourceLoader module that exports a function. The function will be called without parameters and should return a Promise that resolves with an object containing the following properties:
 * country: string - Two-letter country code.
 * region: string - Implementation specific.
 * city: string - City name.
 * lat: number.
 * lon: number.

Utilisation
Full usage instructions can be found at meta:Help:CentralNotice.

Nouvelle bannière

 * 1) Load Special:CentralNoticeBanners
 * 2) Click on the add banner link at the bottom of the page (must be logged in as an admin).
 * 3) Enter in a name and the raw HTML for the given banner.
 * 4) If this banner is going to be translated then enclose any text to be translated with triple parens -.
 * 5) Submit

(TODO: move and expand this snippet)
 * Each banner has its banner definition stored in MediaWiki:Centralnotice-template-&lt;name>
 * All of its messages are stored below the banner def ala MediaWiki:Centralnotice-template-&lt;name>-&lt;message>/&lt;language_code>

Nouvelle campagne

 * 1) Load Special:CentralNotice
 * 2) Add a campaign with a given start time at the bottom portion of the page, leave a comment, and click submit.
 * 3) If this campaign is only run on a specific wiki and or language then select it from the pull downs.
 * 4) Click on the new campaign and add the banners you want within this running campaign and their respective weights.
 * 5) If all looks well then set this campaign to enabled and it will show at the corresponding time.

Ecraser la sélection
Add any of the following URL parameters to preview a specific banner, defeat "diet" schemes, or debug pseudorandom banner selection.


 * banner
 * You can test a banner directly on any wiki by adding  to the end of the URL.


 * randomcampaign
 * A decimal number between 0 and 1, to be used as the "random" seed for choosing a campaign.


 * randombanner
 * A decimal number between 0 and 1, to be used as the "random" seed for choosing a banner among banners available in the chosen campaign.


 * country
 * Override the country code, before filtering to geotargeted campaigns. Accepts two-character ISO 3166-1 codes.


 * uselang
 * Its usual meaning in MediaWiki, this determines which banners you may be shown. Beware of content language vs. user language.


 * force
 * Override any banner hiding code, show the banner.


 * reset
 * Zero out any cookies being used to customize banner display (e.g. delivered impression count).

For example,


 * https://en.wikipedia.org/wiki/Special:Random?banner=B18WMDE_authors_02_180801_2&uselang=en&force=1
 * https://it.wikisource.org/wiki/Speciale:RandomRootpage?randomcampaign=0.142

Limitations
Banners do not display on pages in the  namespace, as well as edit pages and diff pages.

API
CentralNotice adds two API modules,  and. (The API module centralnoticeallocations was deprecated and removed in MediaWiki 1.25.)

Voir aussi

 * Help:CentralNotice and Changes following refactoring (2015-09) on meta
 * Extension:CentralNotice/Campaign and banner selection
 * Extension:CentralNotice/Impression diet
 * Extension:CentralNotice/Special:RecordImpression
 * Extension:CentralNotice/Statuses, reasons and status codes
 * Extension:CentralNotice/Banner_mixins
 * Requests for comment/CentralNotice Caching Overhaul - Frontend Proxy
 * Extension:CentralNotice/Notes/Miscelaneous doc bits
 * Extension:CentralNotice/Notes/Documentation rewrite
 * Extension:CentralNotice/Notes/Campaign-associated_mixins_and_banner_history
 * Extension:CentralNotice/Notes/Banner controller refactoring
 * [ Other subpages of this page] (warning: many are outdated)