mattermost-community / mattermost-plugin-confluence Goto Github PK
View Code? Open in Web Editor NEWA Mattermost Plugin to receive events from Confluence
License: Apache License 2.0
A Mattermost Plugin to receive events from Confluence
License: Apache License 2.0
The term "Alias" is not that friendly to a non-dev audience. Maybe use Subscription Name?
When using slash commands the subscription will not be found if the the capitalization of the alias does not match. This can become frustrating to use.
When passing in an alias in a slash command, it would be better if these were case insensitive.
Since v5.24 slash commands can provide an svg
via AutocompleteIconData
in model.Command
that is then shown in the autocomplete list. This ticket is about adding the icon in assets
to the slash command.
Include screenhots from a dark and a bright theme in the PR description, as there might be the need for a separate icon with a white background for autocomplete.
Similar PRs:
For GitHub plugin mattermost/mattermost-plugin-github#359
For Jira plugin mattermost/mattermost-plugin-jira#653
Normal user can't use /confluence xxx ,it said "/confluence commands can only be run by a system administrator"
How to grant to Normal users or team admin the permission to use /confluence
mattermost version:5.34.2
confluence plugon:1.2.0
conflucen version:server 7.0.5
Right now the outdated Confluence logo is displayed. This should be updated with the current Confluence logo as defined in #53
Hi,
The latest plugin release 1.2.0 crashes after upgrade to Mattermost 5.28.1. I can enable it and view the help with /confluence help but then if I try to install a new Confluence server with /confluence install server it fails with this and does not react to any commands anymore. Turning on DEBUG logging didn't show any additional messages.
2020-10-31T11:50:23.620-0400 info [email protected]/stream.go:15 2020/10/31 11:50:23 RPC call to GetConfig API failed: reading body gob: bad data: field numbers out of bounds {"plugin_id": "com.mattermost.confluence", "source": "plugin_stderr"}
2020-10-31T11:50:23.620-0400 info [email protected]/stream.go:15 2020/10/31 11:50:23 RPC call to SendEphemeralPost API failed: connection is shut down {"plugin_id": "com.mattermost.confluence", "source": "plugin_stderr"}
Maybe there is an API change in the new server?
Thanks,
Ilya
Mattermost is currently in the process of using golangci-lint
as the default linter for all go projects. mattermost-community/mattermost-plugin-autolink#108 serves as an example of how the migration should look like:
.golangci.yml
from https://github.com/mattermost/mattermost-plugin-autolink/ into this repository.Makefile
from https://github.com/mattermost/mattermost-plugin-autolink/ into this repository.build/
from https://github.com/mattermost/mattermost-plugin-autolink/ into this repository.go mod tidy
and make dist
to ensure the build system works fine.linters-settings.goimports.local-prefixes
to the go module path i.e. to github.com/mattermost/mattermost-plugin-aws-SNS
.make golangci-lint
and fix all issues that arise.Fixing an linter issue is sometimes trivial but can also be quite complicated. There might be cases, where ignoring an issue using issues.exclude-rules
is needed. If you don't know how to resolve an error, please reach out to @hanzei
on the Mattermost Community Server or ask the question here.
To receive notifications about something in Confluence, users often start "watching" to subscribe to its updates. The task here is to send a DM to each person watching.
Note that the OAuth foundation needs to be implemented first. Ticket for this here: #49
Can you describe the features of this plugin?
I don't know โ without looking into the Code โ what this plugin can do for me and why I should install it.
Pasting a server url each time creating a subscription is not user friendly. Admins should be able to maintain a list of server name / server URL mappings. Users should then be able to pick from this list in case more than one mapping is configured.
There is no way to limit access to create subscriptions to the sysadmin role. This should be implemented.
Since there is no user mapping and permission checking on the Atlasian side, we should at least have the ability to restrict the functionality on the Mattermost side.
As always, do not collect any PII nor data that may be sensitive. These are just 'counts" of usage, so shouldn't be a problem.
@jfrerich Let's consider adding this before release.
Ideally the subscribe modal would contain some explanation of what goes into the ID field.
There is not much space to work with but ideally there could be text explaining that the ID is numerical and how to find it.
Similar to mattermost/mattermost-plugin-jira#1071
This error occurs in the browser when the plugin is deployed:
You attempted to set the key `display_name` with the value `""` on an object that is meant to be immutable and has been frozen.
The error itself is unrelated to the plugin's code, and occurs on the call to registerReducer
. This was fixed in the Jira plugin by moving the registerReducer
call to the top of initialize
, but it still happens intermittently in the Jira plugin.
The call is already at the top of initialize
in this plugin, so that fix can not be applied. Instead I think we should just ignore the error specifically if this is the error that occurs.
Ideally the edit functionality should allow you to edit all details of the subscription.
At the least, user should be able to edit the alias and page/space ID. this would allows users to correct errors if they make a subscription for the wrong page or space.
Steps:
All PRs required for the 1st release of confluence have now been merged. We need a version bump PR for Confluence as well as a corresponding Market Place PR.
@aaronrothschild the last release was v1.1.0
So I'm assuming we're going with v1.2.0
From here:
"For some more context, see here. The short version though is that we updated the web app to React 17, and there's a chance that plugins will have some issues with it because they're compiled with the React 16 version of ReactDOM. I'm submitting PRs to the 3 products, the demo plugin, and the plugin template to have them use the web app's version of React DOM to fix any immediate issues, but we'll want to properly migrate them to React 17 going forward."
Ticket Link
https://mattermost.atlassian.net/browse/MM-47046
Related Pull Requests
mattermost/mattermost-plugin-playbooks#1489
mattermost/focalboard#3861
mattermost-community/mattermost-plugin-todo#190
mattermost/mattermost-plugin-starter-template#169
We are using a very old library for mocking, and It doesn't support non-Intel archs (last release form 2020).
It would be nice to replace that with another lib, like GoMock
As a user I'd like to be notified of updates to documents I've worked on and comments on documents I've worked on or been tagged in.
Propose we add functionality to the Confluence plugin to have a bot just like the Jira plugin that could notify users of these kinds of updates.
We should consider making the following changes to clarify the installation process in the GitBook
A. On server when directing users to managing applications Settings > Apps > Manage Apps Should say Settings > Atlasian Marketplace > Manage Apps.
B. On server install there is a step for: Choose Settings at the bottom of the page, enable development mode, and apply the change. Development mode allows you to install apps from outside of the Atlassian Marketplace.
This is not applicable to server instances and no such change is needed for the installation. Please remove.
C. On Server install the following steps are listed:
1. Upload the OBR file you downloaded earlier.
2. Once the app is installed, press Configure to open the configuration page.
Please add info to step 1. explicitly telling not to add my from URL yet in this modal. Since I've already seen this value earlier it is confusing to me if I should just save it in the field along with the uploaded file.
potential enhancement to the plugin would be the ability to set the "Confluence URL" on the Plugin Configuration level if companies only have one confluence site. This would then remove the users need to enter it
Even better, show a dropdown of the installed confluence server URL's available to the user.
From 5.24 MM server has a slash command autocomplete functionality feature. An API can be found here
To implement the feature add AutocompleteData
struct to the Command
when registering a slash command.
Similar PRs:
For Todo plugin mattermost-community/mattermost-plugin-todo#69
For Agenda plugin mattermost-community/mattermost-plugin-agenda#40
This request is to implement the following changes:
/confluence list
This is the only command that will be allowed for non-sysadmin users
The current message can be seen below but is incorrect. Give the change mentioned above, please modify the help text to move the following below the For System Administrators
Section and above the Setup Instructions
/confluence subscribe
/confluence unsubscribe
/confluence edit
@ahmad.danial @aaron.rothschild and I discussed this in our team meeting this morning. We will investigate the option for allowing reduced restrictions for handling subscriptions, but for now, the user will need to contact the system admin to add or edit subscriptions.
What we will do for now is update the help text to show only the available commands for sysadmin versus non-sysadmin users.
We will also allow the non-sysadmins to run /confluence list
How does that sound?
Issue created from a Mattermost message by @jfrerich.
Currently, a sysadmin must install both a plugin on Mattermost and Confluence in order to integrate the two systems together. Confluence recently introduced webhooks for their server platform. We can use these webhooks instead of requiring a plugin to be installed on Confluence.
https://confluence.atlassian.com/doc/managing-webhooks-1021225606.html
Issue created from a Mattermost message by @levb.
There are warnings being printed to the console in the browser when running /confluence subscribe
, like the following:
Warning: React does not recognize the `addValidation` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `addvalidation` instead. If you accidentally passed it from a parent component, remove it from the DOM element.
There are some properties being passed to DOM elements that are part of the plugin's logic, that are not supported by the native DOM elements. The task here is to avoid sending these props to the DOM elements.
When saving a subscription, it is possible to save when there are no events selected
We should validate against this to prevent the creation of subscriptions which deliver no events
The text "Update text: A subscription with the same url and space key already exists." Should be updated to:
"A subscription with the same url and space key already exists In this channel"
Currently there is no way to Delete or deactivate a subscription once you've created it in the channel.
Since this functionality does not exist, and space/page IDs can't be edited the only way to stop the events is to remove all events from the existing subscription.
We should be able to delete subscriptions via a slash command.
When we created this plugin, Confluence did not have webhooks capabilities. I believe that is now part of the platform and would remove the need for an admin to install an OBR file as part of the installation process.
When creating a subscription to a page, other page events are available to subscribe to (Page Create, Page Update, Page Trash etc...). I'm not sure if these should be there.
Since they are listed, I assumed they would deliver events for other pages created below the target page in the hierarchy. But this does not work.
Steps:
make apply
does output the files with escaped \n
resulting in the output:
// This file is automatically generated. Do not modify it manually.\n\npackage config\n\nconst (\n\tPluginName = "com.mattermost.confluence"\n)
This should be fixed by synchronising the build tools with https://github.com/mattermost/mattermost-plugin-starter-template
Currently, the confluence plugin has no per user authentication - so that will be one of the features we'd like to work on. Then specific users could be notified via MM when one of their watched pages is updated.
Additionally, the user creating the subscription should then be limited to selecting only pages that they are permitted access to view with their account.
I'm a co-maintainer of github.com/stretchr/testify
. In v1.9.0
we have deprecated mock.AnythingOfTypeArgument
.
I had a look at this project. All instances of mock.AnythingOfTypeArgument
must just be replaced by mock.AnythingOfType
. That fix will work both with v1.9.0
and with previous releases of testify.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.