Rozšíření:Echo

This page is a translated version of the page Extension:Echo and the translation is 100% complete.
This extension comes with MediaWiki 1.40 and above. To znamená, že jej nemusíte stahovat samostatně. Musíte se nicméně stále řídit pokyny k jeho použití.
Příručka k rozšířením MediaWiki
Notifications
Stav rozšíření: stabilní
Implementace Oznámení
Popis Poskytuje oznamovací systém in-wiki, který mohou používat jiná rozšíření.
Autoři
Nejnovější verze průběžné aktualizace
Zásady kompatibility Vydání snímků současně s MediaWiki. Hlavní vývojová větev není zpětně kompatibilní.
Změny v databázi Ano
Tabulky echo_email_batch
echo_event
echo_notification
echo_subscription
echo_target_page
echo_push_provider
echo_push_subscription
echo_push_topic
echo_unread_wikis
Licence Licence MIT
Stáhnout
  • $wgEchoNotificationCategories
  • $wgEchoMaxMentionsCount
  • $wgEchoPerUserWhitelistFormat
  • $wgEchoPushMaxSubscriptionsPerUser
  • $wgEchoMentionOnChanges
  • $wgEchoPollForUpdates
  • $wgEchoUseJobQueue
  • $wgEchoBundleEmailInterval
  • $wgEchoEnableApiEvents
  • $wgEchoMentionsOnMultipleSectionEdits
  • $wgDefaultNotifyTypeAvailability
  • $wgEchoSecondaryIcons
  • $wgEchoCacheVersion
  • $wgEchoMaxUpdateCount
  • $wgEchoNotifiers
  • $wgEchoAgentBlacklist
  • $wgEchoSharedTrackingCluster
  • $wgEchoEnablePush
  • $wgEchoPerUserBlacklist
  • $wgEchoEnableEmailBatch
  • $wgEchoWatchlistNotifications
  • $wgNotifyTypeAvailabilityByCategory
  • $wgEchoMaxMentionsInEditSummary
  • $wgEchoNotifications
  • $wgEchoCluster
  • $wgEchoPushServiceBaseUrl
  • $wgEchoWatchlistEmailOncePerPage
  • $wgAllowArticleReminderNotification
  • $wgEchoNotificationIcons
  • $wgEchoSharedTrackingDB
  • $wgEchoOnWikiBlacklist
  • $wgEchoSeenTimeCacheType
  • $wgEchoMentionStatusNotifications
  • $wgEchoCrossWikiNotifications
  • $wgEchoEmailFooterAddress
  • manage-all-push-subscriptions
  • echo-create
Čtvrtletní stahování 139 (Ranked 41st)
Veřejné wiki používající rozšíření 2,698 (Ranked 187th)
Přeložte rozšíření Echo, používá-li lokalizaci z translatewiki.net
Problémy Otevřené úkoly · Nahlásit chybu

Rozšíření Notifications, historicky v dokumentaci pro administárory a vývojáře nazývané Echo, poskytuje in-wiki oznamovací systém, který uživateli poskytuje upozornění a upozornění na aktivitu na wiki, jako je například zmínka jiného uživatele na diskusní stránce nebo vrácená jeho úprava. Jiná rozšíření MediaWiki mohou využívat rozšíření Notifications k odesílání vlastních upozornění. Thanks a DiscussionTools jsou dvě taková rozšíření.

Instalace

  • Uživateli databáze musí být uděleno právo "REFERENCES" pro databázi. How you check this depends on how you set up the database in the first place. For example, if you used a control panel application, then that interface should provide a way to check and change the privileges of the database user ($wgDBuser in LocalSettings.php ).
  • Stáhněte soubor/y a vložte je do adresáře pojmenovaného Echo ve vaší složce extensions/.
    Vývojáři a přispěvatelé kódu by si místo toho měli nainstalovat rozšíření from Git pomocí:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Echo
  • Na konec vašeho souboru LocalSettings.php přidejte následující kód:
    wfLoadExtension( 'Echo' );
    
  • Spusťte aktualizační skript, který automaticky provede všechny nezbytné databázové změny, jaké rozšíření vyžaduje.
  • V případě potřeby nakonfigurujte podle potřeby
  •   Dokončeno – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.

Aby bylo možné doručovat denní nebo týdenní souhrnná oznámení poštou (pro uživatele, kteří si to vyberou v předvolbách), musí být následující skript v adresáři rozšíření Echo spouštěn denně, což lze naplánovat v úloze cron:

maintenance/processEchoEmailBatch.php

Konfigurace

Je možné použít podmíněné uživatelské možnosti k nastavení různých předvoleb oznámení pro nové uživatele, aniž by to ovlivnilo stávající uživatele.

Další místní podrobnosti najdete na stránce Special:DisplayNotificationsConfiguration.

Parametry

Nastavení konfigurace (výchozí nastavení v extension.json)
Parametr Výchozí Poznámka
$wgEchoEnableEmailBatch true Zda zapnout funkci dávkování e-mailů
$wgEchoUseJobQueue false
  • true - Odloží doručování upozornění na web a e-mail prostřednictvím fronty úloh.
  • false - Okamžitě zasílejte oznámení
$wgEchoEmailFooterAddress '' Adresa organizace (nebo jakýkoli text, který se má zobrazovat v zápatí e-mailových oznámení). Mělo by být definováno v LocalSettings.php
$wgNotificationSender $wgPasswordSender E-mailová adresa pro "od" (from) a "odpovědět" (reply to) na e-mailová upozornění. Mělo by být definováno v LocalSettings.php
$wgNotificationSenderName zpráva "emailsender". (MediaWiki) Jméno pro "od" v e-mailových upozorněních. Mělo by být definováno v LocalSettings.php
$wgNotificationReplyName No Reply Název pro "odpovědět" na e-mailová upozornění. Mělo by být definováno v LocalSettings.php
$wgEchoCluster false Použijte hlavní db, pokud je nastaveno na false, pro použití konkrétní externí db stačí použít libovolný klíč definovaný v $wgExternalServers
$wgEchoSharedTrackingDB false Sdílená databáze k použití pro sledování nepřečtených oznámení napříč wiki. False, pro nesledování.
$wgEchoSharedTrackingCluster false Cluster, na kterém je umístěna sdílená databáze sledování. False, pokud je na hlavním. Musí to být klíč definovaný v $wgExternalServers
$wgEchoMaxUpdateCount 2000 Maximální počet oznámení povolených uživateli k provedení živé aktualizace, to je také počet maximálních oznámení, která může uživatel mít.
$wgEchoMaxMentionsCount 50 Maximální počet oznámení o zmínkách, které může uživatel odeslat najednou
$wgEchoMentionStatusNotifications false Povolit upozornění na úspěch/neúspěch zmínky
$wgEchoMentionsOnMultipleSectionEdits true Spustit zmínky pro úpravy více sekcí
$wgEchoMentionOnChanges true Spouštět zmínky pro úpravy existujících komentářů, pokud je ve stejné sekci přidán podpis
$wgEchoMaxMentionsInEditSummary 0 Maximální počet uživatelů, kteří budou upozorněni, že byli propojeni ze souhrnu úprav, nebo 0 pro žádná upozornění
$wgEchoBundleEmailInterval 0 Časový interval mezi jednotlivými balíčky e-mailů v sekundách. Pro testovací wikiny nastavte malé číslo. Toto by mělo být nastaveno na 0, aby se zakázalo sdružování e-mailů, pokud neexistuje podpora fronty zpoždění
$wgEchoNewMsgAlert true Zda povolit nebo nepovolit upozornění na novou diskusní stránku pro přihlášené uživatele.
$wgNotifyTypeAvailabilityByCategory
[
	// V opačném případě by e-mail uživatel->uživatel mohl spustit další redundantní e-mail s upozorněním.
	'emailuser' => [
		'web' => true,
		'email' => false,
	],
	'mention-failure' => [
		'web' => true,
		'email' => false,
	],
	'mention-success' => [
		'web' => true,
		'email' => false,
	],
]
Definujte, které typy oznámení jsou dostupné pro jednotlivé kategorie oznámení. Pokud jsou některé typy upozornění vynechány, výchozí hodnota je $wgDefaultNotifyTypeAvailability.
$wgEchoNotifiers
[
	'web' => [ 'EchoNotifier', 'notifyWithNotification' ],
	'email' => [ 'EchoNotifier', 'notifyWithEmail' ],
]
Definice různých typů doručování oznámení, které jsou možné. Každá definice se skládá z názvu třídy a názvu funkce. Viz také třída EchoNotificationController.
$wgEchoAgentBlacklist [] Seznam uživatelských jmen, která nebudou spouštět upozornění
$wgEchoOnWikiBlacklist Echo-blacklist Umístění stránky s černou listinou udržovanou komunitou v rámci NS_MEDIAWIKI obsahující jedno uživatelské jméno na řádek, který nebude spouštět upozornění. Pro deaktivaci nastavte na null.
$wgEchoPerUserWhitelistFormat %s/Echo-whitelist Formát sprintf umístění whitelistu agenta oznámení pro jednotlivé uživatele v rámci jmenného prostoru NS_USER. %s bude nahrazeno jménem uživatele. Whitelisty musí obsahovat jedno uživatelské jméno na řádek, které bude vždy spouštět upozornění bez ohledu na jejich existenci v blacklistech. Pro deaktivaci nastavte na null.
$wgEchoCrossWikiNotifications false Zda povolit funkci oznámení napříč wikinami. Chcete-li povolit tuto funkci, musíte:
  • mít CentralAuth, globálně využitelný systém správy uživatelských účtů (T243412)
  • mít $wgMainStash a $wgMainWANCache sdílené mezi wikinami
  • nakonfigurovat $wgEchoSharedTrackingDB
$wgEchoUseCrossWikiBetaFeature false Příznak funkce pro funkci beta upozornění napříč wikinami

Pokud je toto true, zobrazí se v sekci BetaFeatures předvolba oznámení napříč wikinami. Pokud je toto false, objeví se místo toho v sekci Oznámení.

Toto neřídí, zda jsou ve výchozím nastavení povolena upozornění napříč wikinami. K tomu použijte $wgDefaultUserOptions['echo-cross-wiki-notifications'] = true;

$wgEchoNotificationCategories Viz extension.json Definujte kategorie, do kterých mohou oznámení patřit. Kategoriím lze přiřadit následující parametry. Všechny parametry jsou volitelné:
  • priority - řídí pořadí, ve kterém se upozornění zobrazují v předvolbách a dávkových e-mailech. Priorita se pohybuje od 1 do 10. Pokud priorita není zadána, výchozí je 10, což je nejnižší.
  • no-dismiss - deaktivuje zavírání oznámení v kategorii. Může být nastaveno na pole výstupních formátů (viz $wgEchoNotifiers) nebo pole obsahující 'all'.
  • usergroups - určuje pole uživatelských skupin, které mohou přijímat oznámení v kategorii. Pokud není zadán žádný parametr usergroups, jsou způsobilé všechny skupiny.

Pokud typ oznámení nemá parametr kategorie, je automaticky přiřazen do kategorie other, která má nejnižší prioritu a nemá žádné preference ani zamítnutí.

$wgEchoNotificationIcons Viz extension.json Definuje ikony, což jsou obrázky 30x30. Toto je předáno BeforeCreateEchoEvent, takže rozšíření mohou definovat své vlastní ikony se stejnou strukturou. Doporučuje se, aby rozšíření mělo předponu jejich klíče ikony. Příkladem je myextension-name. To pomůže vyhnout se konfliktům jmenného prostoru.

Můžete použít cestu nebo adresu URL, ale ne obojí. Hodnota 'path' (cesta) je relativní k $wgExtensionAssetsPath.

Hodnota 'url' by měla být URL.

Měli byste upravit adresu URL ikony webu, což je: $wgEchoNotificationIcons['site']['url']

$wgEchoNotifications Viz extension.json Definujte typy událostí pro echo. Definice událostí jsou ve tvaru 'název-události' => [ ... ].
  • category - definuje kategorii, do které událost patří. Výchozí hodnota je 'other'.
  • group - výchozí hodnota je 'neutral'.
  • bundle - definuje, které výstupní formáty jsou k dispozici pro sdružování.
  • presentation-model - definuje, která třída se použije k vykreslení oznamovacích zpráv a odkazů pro oznamovací panely, speciální stránku a e-maily. Musí prodloužit EchoEventPresentationModel.
$wgEchoConfig Viz extension.json Konfigurace pro EventLogging. Jednotlivá schémata lze deaktivovat.
$wgEchoPerUserBlacklist null Logická hodnota, která povolila seznam zakázaných položek podle uživatele.


Uživatelská nastavení

Nastavení předvoleb (výchozí nastavení je definováno v extension.json)
Předvolby Výchozí Poznámka
$wgDefaultUserOptions['echo-email-frequency'] 0 Jak často odesílat e-maily, ve výchozím nastavení:
  • 0 - posílat e-maily pro každé oznámení, jakmile přijdou (výchozí)
  • -1 - neposílat e-maily
  • 1 - každý den
  • 7 - každých 7 dní
  • ...
$wgDefaultUserOptions['echo-email-format'] Závisí na $wgAllowHTMLEmail Výchozí uživatelské preference pro použití HTML nebo textového e-mailu Either html or plain-text.
$wgDefaultUserOptions["echo-subscriptions-email-{$category}"] false pro většinu kategorií; závisí Výchozí uživatelská předvolba, zda chcete upozornit e-mailem pro konkrétní kategorii
$wgDefaultUserOptions["echo-subscriptions-web-{$category}"] true pro většinu kategorií; závisí Výchozí uživatelská předvolba pro upozorňování na konkrétní kategorii prostřednictvím webu


Architektura

Viz část architektura na stránce funkcí .

Použití

Oznámení negativní seznam / pozitivní seznam

Občas existují konkrétní uživatelé, obvykle roboti, kteří provádějí úkoly údržby, které by neměly generovat oznámení. Pro řešení těchto případů mohou být uživatelé globálně zařazeni na černou listinu ze souboru LocalSettings.php (nebo InitialiseSettings.php v případě wikin WMF):

$wgEchoAgentBlacklist = [ 'SampleBot', 'SampleUser' ];

Existuje také černá listina na wiki, kterou může udržovat wiki komunita. Výchozí umístění globální černé listiny na wiki je MediaWiki:Echo-blacklist. Jednotliví uživatelé mohou černou listinu přepsat vytvořením bílé listiny. Výchozí umístění na seznamu povolených je Special:MyPage/Echo-whitelist. Všechny seznamy na wiki očekávají, že obdrží jedno uživatelské jméno specifické pro případ na řádek bez zvláštních značek nebo předpon. Například:

SampleBot
SampleUser

Možnost "zmínit".

Jedním z typů oznámení, které toto rozšíření umožňuje, je: "Upozornit mě, když někdo odkazuje na moji uživatelskou stránku." Některým uživatelům to nemusí být zřejmé, ale toto konkrétní upozornění funguje pouze tehdy, když osoba odkazující na stránku jiného uživatele také podepíše (~~~~) příspěvek.

Po instalaci rozšíření se na stránce Special:Preferences uživatele vytvoří nová karta "Notifications" (oznámení). Pod sekcí "Upozorňovat mě na tyto události" před možností "Zmínit" je v hoverboxu uvedeno: "Upozorňovat, když někdo odkazuje na moji uživatelskou stránku." Pokud se administrátor domnívá, že požadavek na podepsání příspěvku není v této nápovědě zřejmý, může být upraven změnou textu na MediaWiki:Echo-pref-tooltip-mention stránce Wiki.

Terminologie

  • notification (oznámení) - jakékoli individuální oznámení doručené Echo
  • message (zpráva) – upozornění na aktivitu v diskusi Flow
  • alert (výstraha) – jakékoli oznámení kromě zprávy

Související odkazy