확장기능:Echo
There is a stalled attempt to move this functionality into core MediaWiki; for more information, see 알림 and Requests for comment/Notifications in core. |
Notifications 출시 상태: 안정 |
|
---|---|
구현 | 알림 |
설명 | 다른 확장에서 사용할 수 있는 위키 내 알림 시스템을 제공합니다. |
만든 이 | |
최신 버전 | 지속적인 업데이트 |
호환성 정책 | 스냅샷은 미디어위키와 함께 릴리스됩니다. Master is not backward compatible. |
MediaWiki | >= 1.43 |
데이터베이스 변경 | 예 |
테이블 | echo_email_batch echo_event echo_notification echo_subscription echo_target_page echo_push_provider echo_push_subscription echo_push_topic echo_unread_wikis |
라이선스 | MIT 허가서 |
다운로드 | |
|
|
|
|
|
|
Quarterly downloads | 128 (Ranked 45th) |
Public wikis using | 2,698 (Ranked 187th) |
Echo 확장 기능 번역 (translatewiki.net에서 가능한 경우) | |
이슈 | 미해결 작업 · 버그 보고 |
Echo 확장 기능은 위키 내부에 다른 확장 기능에서 사용 가능한 알림 시스템 제공합니다. 감사 과 DiscussionTools 는 Echo를 사용하는 두 개의 MediaWiki 확장입니다.
설치
- 데이터베이스 사용자는 데이터베이스에 대한 "REFERENCES" 권한을 부여받아야 합니다. 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 ). - 파일을 다운로드하고
Echo
폴더를extensions/
디렉토리에 넣어 주세요.
개발자와 코딩 기여자는 Git을 이용해 확장기능을 다운받는 것이 좋습니다.cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Echo - 아래의 코드를 LocalSettings.php 코드의 마지막에 추가합니다.
wfLoadExtension( 'Echo' );
- 갱신 스크립트를 실행합니다. 이 스크립트는 이 확장기능을 필요로 하는 데이터 베이스 테이블을 자동적으로 작성합니다.
- 사용자의 필요에 따라 간편하게 설정할 수 있음
- 완료 – 위키의 ‘Special:Version’에 이동해서, 확장기능이 올바르게 설치된 것을 확인합니다.
To allow daily or weekly summary notifications to be delivered by mail (for users that choose that in preferences), the following script inside the Echo extension directory needs to be run on a daily basis, which can be scheduled in a cron job:
maintenance/processEchoEmailBatch.php
설정
It is possible to use conditional user options to set different notification preferences for new users, without affecting existing users.
로컬 세부 정보는 Special:DisplayNotificationsConfiguration를 참조하십시오.
Parameters
Parameter | 기본값 | 비고 |
---|---|---|
$wgEchoEnableEmailBatch
|
true
|
이메일 일괄 기능 켜기 여부 |
$wgEchoUseJobQueue
|
false
|
|
$wgEchoEmailFooterAddress
|
'' | 조직 주소(또는 이메일 알림의 바닥글에 표시하려는 텍스트). LocalSettings.php 에 정의되어 있어야 합니다. |
$wgNotificationSender
|
$wgPasswordSender
|
이메일 알림의 "보낸사람" 및 "답장" 모두에 대한 이메일 주소입니다. LocalSettings.php 에 정의되어 있어야 합니다. |
$wgNotificationSenderName
|
"emailsender" message (MediaWiki) | 이메일 알림의 "보낸사람"에 대한 이름입니다. LocalSettings.php 에 정의되어 있어야 합니다. |
$wgNotificationReplyName
|
No Reply | 이메일 알림에 대한 "답장"의 이름입니다. LocalSettings.php 에 정의되어 있어야 합니다. |
$wgEchoCluster
|
false
|
false로 설정된 경우 기본 db를 사용하고 특정 외부 db를 사용하려면 $wgExternalServers 에 정의된 키를 사용하십시오. |
$wgEchoSharedTrackingDB
|
false
|
Cross-wiki 읽지 않은 알림을 추적하는 데 사용할 공유 데이터베이스. 전혀 추적하지 않으려면 false |
$wgEchoSharedTrackingCluster
|
false
|
공유 추적 데이터베이스가 있는 클러스터 기본 항목에 있으면 false입니다. $wgExternalServers 에 정의된 키여야 합니다. |
$wgEchoMaxUpdateCount
|
2000 | 사용자가 라이브 업데이트를 수행할 수 있도록 허용된 최대 알림 수는 사용자에게 허용된 최대 알림 수이기도 합니다. |
$wgEchoMaxMentionsCount
|
50 | 사용자가 한 번에 보낼 수 있는 최대 멘션 알림 수 |
$wgEchoMentionStatusNotifications
|
false
|
멘션 성공/실패 알림 활성화 |
$wgEchoMentionsOnMultipleSectionEdits
|
true
|
다중 섹션 편집에 대한 멘션 트리거 |
$wgEchoMentionOnChanges
|
true
|
Trigger mentions for edits to existing comments, as long as a signature is added in the same section |
$wgEchoMaxMentionsInEditSummary
|
0 | Maximum number of users that will be notified that they were linked from an edit summary or 0 for no notifications |
$wgEchoBundleEmailInterval
|
0 | The time interval between each bundle email in seconds; set a small number for test wikis. This should be set to 0 to disable email bundling if there is no delay queue support |
$wgEchoNewMsgAlert
|
true
|
Whether or not to enable a new talk page message alert for logged in users. |
$wgNotifyTypeAvailabilityByCategory
|
[
// Otherwise, a user->user email could trigger an additional redundant notification email.
'emailuser' => [
'web' => true,
'email' => false,
],
'mention-failure' => [
'web' => true,
'email' => false,
],
'mention-success' => [
'web' => true,
'email' => false,
],
]
|
Define which notify types are available for each notification category. If any notify types are omitted, it defaults to $wgDefaultNotifyTypeAvailability. |
$wgEchoNotifiers
|
[
'web' => [ 'EchoNotifier', 'notifyWithNotification' ],
'email' => [ 'EchoNotifier', 'notifyWithEmail' ],
]
|
Definitions of the different types of notification delivery that are possible. Each definition consists of a class name and a function name. See also EchoNotificationController class. |
$wgEchoAgentBlacklist
|
[] | List of usernames which will not trigger notifications |
$wgEchoOnWikiBlacklist
|
Echo-blacklist | Page location of community maintained blacklist within NS_MEDIAWIKI containing one username per line which will not trigger notifications. Set to null to disable. |
$wgEchoPerUserWhitelistFormat
|
%s/Echo-whitelist | An sprintf format of the location of the per-user notification agent whitelist within the NS_USER namespace. %s will be replaced with the users name. The whitelists must contain one username per line which will always trigger notifications regardless of their existence in the blacklists. Set to null to disable.
|
$wgEchoCrossWikiNotifications
|
false
|
Whether to enable the cross-wiki notifications feature. To enable this feature you need to:
|
$wgEchoUseCrossWikiBetaFeature
|
false
|
Feature flag for the cross-wiki notifications beta feature
If this is This does not control whether cross-wiki notifications are enabled by default.
For that, use |
$wgEchoNotificationCategories
|
See extension.json | Define the categories that notifications can belong to. Categories can be assigned the following parameters. All parameters are optional:
If a notifications type doesn't have a category parameter, it is automatically assigned to the |
$wgEchoNotificationIcons
|
See extension.json | Defines icons, which are 30x30 images. This is passed to BeforeCreateEchoEvent so extensions can define their own icons with the same structure. It is recommended that extensions prefix their icon key. An example is myextension-name. This will help avoid namespace conflicts.
You can use either a path or a url, but not both. The value of 'path' is relative to The value of 'url' should be a URL. You should customize the site icon URL, which is: |
$wgEchoNotifications
|
See extension.json | Define the event types for echo. Event definitions are in the form of 'event-name' => [ ... ].
|
$wgEchoConfig
|
See extension.json | Configuration for EventLogging. Individual schemas can be disabled. |
$wgEchoPerUserBlacklist
|
null
|
Boolean that enabled Per User Blacklist. |
User preferences
Preference | Default | Comment |
---|---|---|
$wgDefaultUserOptions['echo-email-frequency']
|
0 | How often to send emails, by default:
|
$wgDefaultUserOptions['echo-email-format']
|
Depends on $wgAllowHTMLEmail
|
Default user preference for whether to use HTML or text email. Either html or plain-text .
|
$wgDefaultUserOptions["echo-subscriptions-email-{$category}"]
|
false for most categories; depends
|
Default user preference for whether to notify via email for a particular category |
$wgDefaultUserOptions["echo-subscriptions-web-{$category}"]
|
true for most categories; depends
|
Default user preference for whether to notify via web for a particular category |
Architecture
Usage
Notification negative list / positive list
There are occasionally specific users, typically bots, which perform maintenance tasks that should not generate notifications. To handle these cases, users can be globally blacklisted from the LocalSettings.php file (or InitialiseSettings.php in the case of WMF wikis):
$wgEchoAgentBlacklist = [ 'SampleBot', 'SampleUser' ];
There is also an on-wiki blacklist that can be maintained by the wiki's community. The location of the global on-wiki blacklist defaults to MediaWiki:Echo-blacklist. Individual users can override the blacklist by creating a whitelist. The whitelist location defaults to Special:MyPage/Echo-whitelist. All on-wiki lists expect to receive one case-specific username per line with no special markup or prefixes. For example:
SampleBot SampleUser
"Mention" option
One of the notification types that this extension allows is: "Notify me when someone links to my user page." It might not be obvious to some users, but this particular notification only works when the person linking to another user's page also signs (~~~~) the post.
After installation of the extension, a new tab "Notifications" is created in a user's Special:Preferences page. Under the section "Notify me about these events", in front of the "Mention" option, the hoverbox states: "Notify me when someone links to my user page." If an administrator feels, that the requirement for signing the post isn't obvious in this help text, it can be modified by changing the text in the Wiki's MediaWiki:Echo-pref-tooltip-mention page.
Terminology
- notification - Any individual notice that is delivered by Echo
- message - A notification about activity in a Flow discussion
- alert - Any notification other than a message
See also
- Notifications/API
- Manual:Echo - for details on the Mention requirements
- Extension:Echo/Creating a new notification type (current)
- Notifications/Developer_guide (outdated)
이 확장 기능은 하나 이상의 위키미디어 프로젝트에서 사용 중입니다. 이것은 아마도 이 확장 기능이 안정적이고 트래픽이 많은 웹 사이트에서 사용할 수 있을 만큼 충분히 잘 작동한다는 것을 의미합니다. 설치된 위치를 확인하려면 위키미디어의 CommonSettings.php 및 InitialiseSettings.php 구성 파일에서 이 확장 기능의 이름을 찾습니다. 특정 위키에 설치된 확장 기능의 전체 목록은 위키의 Special:Version 문서에서 볼 수 있습니다. |
This extension is included in the following wiki farms/hosts and/or packages: This is not an authoritative list. Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. |