Hi everybody,
i have just started using Scriptrunner for Confluence.
A thing that i would like to do is to manage watchers of a space or blog centrally or to be able to add new users as watchers to spaces.
I had a look in Confluence API but i didn't manage to find something.
Thanx in advance for the help.
Kostas
Here is the script i have created for managing Space watchers. It has as inputs a group of users, the Space key and the content type.
import bucket.user.UserAccessor //import com.atlassian.confluence.user import com.atlassian.spring.container.ContainerManager; import com.atlassian.confluence.mail.notification.NotificationManager; import com.atlassian.confluence.user.DefaultUserDetailsManager; import com.atlassian.confluence.spaces.SpaceManager; import com.atlassian.confluence.search.service.ContentTypeEnum import org.apache.log4j.Level; import org.apache.log4j.Logger; def log = Logger.getLogger("com.onresolve.confluence.scripting.WatchSpace") // Get the default Notification Manager def notificationManager = (NotificationManager) ContainerManager.getComponent('notificationManager') //def userDetailsManager = (DefaultUserDetailsManager) ContainerManager.getComponent('userDetailsManager') // Get User Accessor def userAccessor = (UserAccessor) ContainerManager.getComponent('userAccessor') // Get Space Manager def spaceManager = ContainerManager.getComponent("spaceManager") as SpaceManager //def users = userAccessor.getUsers() //define the group that you want to add as watchers def group = userAccessor.getGroup('Add group here') def users = userAccessor.getMemberNames(group) //define the space that users will watch. def space_for_watch = spaceManager.getSpace("Add space key here") users.each{user-> log.warn (user) def username = userAccessor.getUser(user) boolean isWatching = notificationManager.isUserWatchingPageOrSpace(username, space_for_watch, null) if (!isWatching) { //Choose the content type of space that users will watch. Add BLOG for watching Space Blogs, leave blank for watching entire content notificationManager.addSpaceNotification(username, space_for_watch, BLOG) } }
Hi Kostas,
I know you got this sorted for your instance. If anyone stumbles on this and wants a turnkey solution I invite you to look at Better Blogs for Confluence. It is a paid add-on that allows Space Administrators to subscribe users and groups to email notifications of new blogs in a space.
At Twitter we needed this feature to ensure every member of our product, design and engineering organisation (>1,500 people) were notified of new blog posts in the Engineering space. The Engineering Blog enabled VP's to communicate one-to-many and teams to share details of the technology and features they were working on. It didn't make sense to ask every new employee to subscribe to the blog in that space, hence Better Blogs was born.
With Better Blogs you can keep everyone informed, and do so with ease. For those wishing to take advantage of early bird pricing use the promotion code HHYUWD before the end of October 2015.
If you have feedback on the Better Blogs for Confluence add-on contact me via nick@arijea.com or +1 415 568 7064.
Thanks Kostas, hope you don't mind me dropping this note here.
Cheers,
Nicholas Muldoon
Arijea
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Nick Muldoon, no problem at all. Thanks for the update on that. Indeed for large instances of Confluence, asking new users to subscribe to the blog doesn't make sense. Our instance has 90 users so far, so i use the script every time that a new user is added. I will take a look on Better Blogs. For any comment, feedback etc i will let you know. Cheers, Kostas
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks Kostas
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
It looks like you can do it with the RPC and SOAP APIs. Although I haven't used any of these, it looks like watching pages and spaces can be automated with the following services:
You can also do some automation by writing a user macro, although my success with page and space watching has been mixed with this approach.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey Matthew thanks for the help. I managed to write a script for adding space watchers. Is listed in my answer below. Cheers
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
And how about this feature? https://jira.atlassian.com/browse/CONF-40582 Please vote!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.