mattermost/mattermost-plugin-nps
Fork: 10 Star: 8 (更新于 2024-10-19 22:20:04)
license: Apache-2.0
Language: Go .
Collect and Send NPS surveys
最后发布版本: v1.3.3 ( 2023-10-19 07:09:50)
Mattermost User Satisfaction Survey Plugin
A plugin for Mattermost to gather user feedback about Mattermost itself using user satisfaction surveys.
Installation
Requires Mattermost 5.12 or higher.
The NPS plugin is installed and enabled by default on Mattermost 5.12 or higher. If you'd like to install a custom version of the plugin, you can disable the built-in one and install your custom version alongside it.
Developing
This plugin contains both a server and web app portion. Read our documentation about the Developer Workflow and Developer Setup for more information about developing and extending plugins.
Releasing new versions
The version of a plugin is determined at compile time, automatically populating a version
field in the plugin manifest:
- If the current commit matches a tag, the version will match after stripping any leading
v
, e.g.1.3.1
. - Otherwise, the version will combine the nearest tag with
git rev-parse --short HEAD
, e.g.1.3.1+d06e53e1
. - If there is no version tag, an empty version will be combined with the short hash, e.g.
0.0.0+76081421
.
To disable this behaviour, manually populate and maintain the version
field.
How it works - overview
The plugin sends a survey after 45 days when a new (as in never seen before - including downgrade) version of Mattermost is detected. It also sends a message to users 7 days after their registration to get early feedback, and allows users to give feedback at any time they desire.
Surveys and feedback are sent to rudder as Track
events.
Configuration
The only configuration option is to enable or disable the surveys automated.
The "Logs in" rule
The plugin only send DM to a user when this user logs in. "Logs in" mean that the server has received a request by a user to retrieve their own info. It happens when a user logs in, but also if they refresh their browser as the webapp will do this request to the server.
Welcome feedback DM
7 days after a user created their account, they will be sent a message by the bot asking for a feedback. This event is triggered by the "logs in" rule described in the previous paragraph, so the message is not technically sent 7 days after the account creation, but as soon as they get online, at least 7 days after the account creation.
While this message is not a survey per say, it will not be send if the configuration disables surveys.
New version survey
When the plugin is enabled (first time install, after being disabled and reenabled, or when the server starts/restarts), we are checking if the server is running on a new version. important note that in this case, new does not mean more recent, it just means a version for which we never sent a survey before. Including downgrade. If the server is running on a new version, we are scheduling a survey to be sent to all users 45 days after the new version is detected. A notice letting sysadmin know know that a survey is scheduled is sent by email, and a DM is schedulded to be sent once them next time they login. When a user logs in, we do check if they are due for a survey. If they are, we are sending them a DM with a survey. The survey consist in rating the app between 1 and 10, and giving a comment. The user also have the option to opt out of future surveys.
Feedback
At any point, a user can engage in a DM with the bot and send a feedback. When the user is done typing, a modal will appear asking the user to confirm the feedback and optionnaly asks for email address.
Rudder
Here are all the Track
events sent to rudder:
-
nps_survey
, with the propertyscore
containing the score given by the user -
nps_feedback
, with the propertyfeedback
containing the feedback given by the user andemail
containing the email address given by the user (can be empty) -
nps_disable
with no extra property
All of those events also contains the following property (when available):
-
PluginID
, containing the plugin ID -
PluginVersion
, containing the plugin version -
ServerVersion
, containing the server version -
UserActualID
. containing the curremt user ID -
timestamp
, containing the timestamp of the event -
server_install_date
, containing the server install date -
user_role
, containing the user role -
user_create_at
, containing the user creation date -
license_id
, containing the license ID -
license_sku
, containing the license SKU
How to Release
To trigger a release, follow these steps:
-
For Patch Release: Run the following command:
make patch
This will release a patch change.
-
For Minor Release: Run the following command:
make minor
This will release a minor change.
-
For Major Release: Run the following command:
make major
This will release a major change.
-
For Patch Release Candidate (RC): Run the following command:
make patch-rc
This will release a patch release candidate.
-
For Minor Release Candidate (RC): Run the following command:
make minor-rc
This will release a minor release candidate.
-
For Major Release Candidate (RC): Run the following command:
make major-rc
This will release a major release candidate.
最近版本更新:(数据更新于 2024-10-09 14:10:29)
2023-10-19 07:09:50 v1.3.3
2023-06-10 02:19:12 v1.3.2
2022-12-15 04:36:21 v1.3.1
2022-10-27 22:07:46 v1.3.0
2022-04-25 20:47:35 v1.2.0
2020-09-19 03:11:04 v1.1.0
2020-04-24 01:52:08 v1.0.4
2019-07-19 01:54:16 v1.0.3
2019-07-17 22:47:06 v1.0.2
2019-07-03 02:28:34 v1.0.1
主题(topics):
golang, hacktoberfest, mattermost, mattermost-plugin
mattermost/mattermost-plugin-nps同语言 Go最近更新仓库
2024-11-06 07:46:48 dolthub/dolt
2024-11-06 03:37:39 containerd/containerd
2024-11-05 20:42:00 aurora-develop/aurora
2024-11-05 08:55:31 XTLS/Xray-core
2024-11-05 00:03:47 SagerNet/sing-box
2024-11-04 20:34:19 Permify/permify