Challenge:

When our Sitecore Instance is live, we have many content editor users, page editor users and publishers working day in and day out to keep the content up to date as well as making the new content available as soon as possible.
Now, lets consider a case when there are multiple users publishing simultaneously. Obviously, as Publishing is a pipeline, one user's publishing would be going on while the rest of them are waiting for their turn to come. They get a queued message in the publishing dialog. Now if the users are say in one geographical location, still thing is OK, they may talk to each other and perform publishing but think of a case where the users publishing are managing two different websites in two different geographical locations, but on the same Sitecore instance.
Now, as the users have other critical tasks too, they do not want to sit and wait for their publishing to be started and get completed, but rather close the publish dialog and continue with their work and somewhere, get the information that their publishing is completed.


Solution

The solution of all the above cases in different combinations is just one - Sitecore Interactive Publish.

So, when this Sitecore module is installed, we get the following functionalities:
1. Information of why the publishing is queued, and where does my publishing stand in the queue
2. If the user closes the publishing dialog, still he gets the notification on Desktop.
3. In case the user is so busy he/she misses that notification, still nothing to worry about. Sitecore Interactive Publish has added a new chunk of Publish History in Sitecore Desktop as well as Content Editor, where the user can go anytime, and quickly check whether his/her publishing is completed or not.


Quick Tour

When publishing is going on, only by one user in Sitecore, the Publish Dialog looks same as it normally looks, no change at all. It looks like below:

Normal Publishing Scenario - Single User Publishing

Now, the moment a second user publishes items in Sitecore, when a Publish is in progress, this is what seen by the user whose publishing is going on.

A table showing Publishing is running for him, and queued for the second user

And this is what the second users sees on his/her screen:

Publishing Queued for the second user.

From the above screenshots, we can see that the Publish dialog by default shows the Publish Job selected user wise - as well as the Owner and message is available so he/she can get a clear picture of whether his/her items are queued or in publishing. ALso, the status keeps on updating regularly. So the user gets a clear picture of what's going on in the system.

Next, say the user is so frustrated, that he/she closes the Publish Dialog and started working on other things in Sitecore. In that case, the user can check for the following notification in Sitecore Desktop:

Notification in Desktop

Next, lets consider a case, the user is extremely busy and missed the notification. Oh, nevermind, we have a simple way of showing him/her that their publishing was done and successful. We call that part of Sitecore Interactive Publish, as the Publish History. The Publish History, can be easily accessed from besides the Switch to another database icon on Sitecore Desktop.

Recent Publish History in Sitecore Desktop

This shows recent history and the number of items shown here, can be controlled form the Configuration file - Sitecore.Interactive.Publish.config The Recent Publish History looks like this in the Sitecore Desktop:

Recent Publish History in Sitecore Desktop

The Recent Publish History is also available from the Content Editor in the Publish Tab

Recent Publish History from Content Editor

Next, if we want to see the complete Publish History, we have a detail page to show that too. Also, its accesible from 3 places:

Publish History Detail from Sitecore Desktop

Publish History Detail from Sitecore Start Menu

Publish History Detail from Sitecore Content Editor

And this is how the Publish History Detail looks like

Publish History Detail Page


Advantages of the Sitecore Module

From the Business User's Perspective:

From the Developer's Perspective:

Drawbacks of this Sitecore Module


Future Enhancements


Contribute to the Sitecore Module

Well, if you wish to contribute to this Sitecore Module, then you need to take the following steps:
1. Fork the Development Branch of the Module on Github.
2. Add the code that you wish to.
3. Create a Pull request, so that we can understand that you have added some functionality.
4. You also need to update the readme and tell us why you added it and which files were updated.
5. We will test the code on our side and will include it in the main dev branch and then the master branch if we don't find anything malicious. Also, its not like if you send a code we will add it, if it doesn't go with the concept or if it contains some malicious code, we might reject the code too. So sorry if that happens with you.