We've installed Plumber 0.7.4-beta in Umbraco 7.7.9, and I've set up workflow on our development instance to exclude all nodes (to test that this can be done so the dev team can continue without worrying about workflow).
However, we've had the following error when trying to right-click for the menu on the Recycle Bin that we're hoping you can help with...
An error occured
Object reference not set to an instance of an object.
Exception Details
System.NullReferenceException: Object reference not set to an instance of an object.
at Workflow.Startup.WorkflowContextMenuController.ContentTreeControllerMenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e)
at Umbraco.Core.Events.TypedEventHandler2.Invoke(TSender sender, TEventArgs e)
at Umbraco.Web.Trees.TreeControllerBase.OnMenuRendering(TreeControllerBase instance, MenuRenderingEventArgs e)
at Umbraco.Web.Trees.TreeControllerBase.GetMenu(String id, FormDataCollection queryStrings)
at lambda_method(Closure , Object , Object[] )
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters)
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary2 arguments, CancellationToken cancellationToken)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ApiControllerActionInvoker._1.MoveNext()
By the way, meant to say (in case it makes a difference) our developers installed the package via NuGet.
Currently the workflow dashboard isn't updating either, nor are editors prevented from accessing a page submitted to the workflow (I've got one node in the site tree with a different approval group, which should go through the workflow).
Haha - I just thought I'd try it! We've got three environments (dev, staging and production) so I thought I'd try excluding it from dev.
I've set workflow against one node on the site tree, but it doesn't seem to be picking up any changes pushed through - so I'm not seeing anything on the 'tasks awaiting approval' or 'tasks submitted' sections. I've also got two approval groups - one for excluding everthing for the devs, and one for the specific branch; but updating one seems to update the other. Or maybe we're missing something somewhere. There shouldn't be any left over files as far as I'm aware as this was a new instance - our previous version of Plumber was on a separate instance of 7.7.4 and installed locally; this one is on 7.7.9 installed via NuGet.
The workflow logs simply say that two approval groups were created and saved successfully.
Is it still possible to select inclusions as well as exclusions via Settings? Or is this all handled via the Content menu now?
And thanks for getting back to me so quickly - I really appreciate it; it's super helpful for stakeholders who are needing to test out Plumber in a more 'real world' scenario ahead of our upcoming beta launch of our Umbraco setup.
I'll have a dig tomorrow (7pm here), but hoping (for my sake) it's a config thing rather than anything code related...
Alternative to excluding everything would be to put the devs into Umbraco's admin group, so they'll have the save and publish button in the button drawer (in the sub-button popup).
That said, it could well be due to having a workflow set below the excluded node causing issues. Will let you know.
OK, cheers!
That sounds more obvious - I think I did exclusions because we had content nodes that were after workflow config (I got the yellow error alert to say that workflow was there but not configured) - I'll take another look though.
Either way, the recycle bin context menu error is causing issues for our dev who's trying to delete swathes of content.
Thank you!
The recycle bin is all working as expected now - thank you!
I'm having some issues with the email notifications, though.
I've got a default approval group - Team - which has some excluded nodes, and no email notification enabled.
I've got another approval group - Testing - which I've applied to a specific node via the option in the Content menu.
The dashboard is updating as expected and the workflow is behaving as expected based on these settings.
However, if I try to view the Testing group under Workflow>Settings, I see the same settings as for Team. This means I can't seem to enable the email notification option for the Testing group (I've entered a specific email address in the Testing group page, but not entered one under Workflow>Settings). Is it possible to have email enabled for one group but not another? I tried enabling for both, both with and without a 'from' email entered under Settings, but didn't receive any notifications.
I'm sure I've missed something obvious somewhere but I'm not sure what...!
And am I right in thinking that:
the non-default approval groups are now set solely via the Content menu and not via the approval group page?
Workflow>Settings is essentially used just to set the default approval group?
Does this mean that individual approval groups can't have different email addresses for notifications?
Does the 'select node' option in the workflow history only select that specific node or does it also include children?
Unfortunately the log viewer still just says "could not get workflow log", even though the dashboard is updating and the workflow history is updating.
We're using Plumber version 0.7.5 and Umbraco version 7.7.9.
Approval workflows have always been set on the node itself - you can view them on the group page, but not modify. Content type workflows are set from /workflow/settings, and similarly can be viewed but not modified on the individual group page.
The notifications and exclude node settings aren't applied per group, those are global settings (as are all options found at /workflow/settings). It's not possible to exclude a set of nodes for a particular group only, exclusion is global.
If you set an email on the group itself, that address will receive the notifications, rather than sending to the individual group members. The address on the settings view is the FROM address for the notifications - means you can have them come from a specific address, and allows replying to a specific inbox rather than the Umbraco system address.
History view shows all process for all nodes, or only those for the selected node (ie choosing a single node to audit does not include children).
I'm still not receiving any email notifications, though.
I have:
Approval group 'Team' with multiple members and no group email set.
Approval group 'Testing' with one member and a group email set.
I've ticked the 'Send notifications' option under settings.
I've tried leaving the FROM address box blank, and tried entering my email address, and tried entering a fake email address.
but regardless of which option I try, I'm still not receiving an email notifcation when changes are made (by an account set up to require approval by 'Testing' group) under the section that 'Testing' is responsible for approving.
I'm assuming that:
if an approval group has more than one member but no group email set, and email notifications is enabled, then each member should receive a notification
if an approval group has more than one member, a specific group email set, and email notifications is enabled, then notifications will only be sent to the specific group email address
if an approval group has only one member but no group email set, and email notifications is enabled, then notifications will be sent to the member's email address as stored in their user account
if an approval group has only one member, a specific group email set, and email notifcations is enabled, then notifications will be sent to the specific group email address rather than that in the member's user account
I've definitely had notifications working fine in the past, so I'm sure I've missed something - any ideas? (and sorry for all the stupid questions!).
I've been doing a heap of tidying/refactoring trying to get to a V1 release, so highly likely I've broken something. Notifications tend to fail silently too, so it's not always obvious if things are broken. Will take a look tonight.
V1 is also dependent on me writing a heap of tests to prevent breaking stuff in future...
That's a strange one - I can hit the test endpoint for notifications and they process and send correctly. I've made some changes, but none that should have any functional impact (they're just dev stuff).
I'm not seeing anything under the Plumber log, but the Umbraco trace log gave me this error:
in full:
Error sending notifications
System.Net.Mail.SmtpException: Failure sending mail. ---> System.Net.WebException: The remote name could not be resolved: 'INTRANET'
at System.Net.ServicePoint.GetConnection(PooledStream PooledStream, Object owner, Boolean async, IPAddress& address, Socket& abortSocket, Socket& abortSocket6)
at System.Net.PooledStream.Activate(Object owningObject, Boolean async, GeneralAsyncDelegate asyncCallback)
at System.Net.ConnectionPool.GetConnection(Object owningObject, GeneralAsyncDelegate asyncCallback, Int32 creationTimeout)
at System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint)
at System.Net.Mail.SmtpClient.GetConnection()
at System.Net.Mail.SmtpClient.Send(MailMessage message)
--- End of inner exception stack trace ---
at System.Net.Mail.SmtpClient.Send(MailMessage message)
at Workflow.Notifications.Send(WorkflowInstancePoco instance, EmailType emailType)
Recycle bin context menu error
Hi Nathan,
We've installed Plumber 0.7.4-beta in Umbraco 7.7.9, and I've set up workflow on our development instance to exclude all nodes (to test that this can be done so the dev team can continue without worrying about workflow).
However, we've had the following error when trying to right-click for the menu on the Recycle Bin that we're hoping you can help with...
An error occured Object reference not set to an instance of an object.
Exception Details System.NullReferenceException: Object reference not set to an instance of an object.
at Workflow.Startup.WorkflowContextMenuController.ContentTreeControllerMenuRendering(TreeControllerBase sender, MenuRenderingEventArgs e) at Umbraco.Core.Events.TypedEventHandler
2.Invoke(TSender sender, TEventArgs e) at Umbraco.Web.Trees.TreeControllerBase.OnMenuRendering(TreeControllerBase instance, MenuRenderingEventArgs e) at Umbraco.Web.Trees.TreeControllerBase.GetMenu(String id, FormDataCollection queryStrings) at lambda_method(Closure , Object , Object[] ) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary
2 arguments, CancellationToken cancellationToken) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ApiControllerActionInvoker._1.MoveNext()By the way, meant to say (in case it makes a difference) our developers installed the package via NuGet.
Currently the workflow dashboard isn't updating either, nor are editors prevented from accessing a page submitted to the workflow (I've got one node in the site tree with a different approval group, which should go through the workflow).
Hi Nicola
Had never considered excluding everything! Will sort it out for you and push out a new release.
Are there any console errors on the dashboard? If it's an update to an existing install, there's possibly old files hanging around.
Hi Nathan,
Haha - I just thought I'd try it! We've got three environments (dev, staging and production) so I thought I'd try excluding it from dev.
I've set workflow against one node on the site tree, but it doesn't seem to be picking up any changes pushed through - so I'm not seeing anything on the 'tasks awaiting approval' or 'tasks submitted' sections. I've also got two approval groups - one for excluding everthing for the devs, and one for the specific branch; but updating one seems to update the other. Or maybe we're missing something somewhere. There shouldn't be any left over files as far as I'm aware as this was a new instance - our previous version of Plumber was on a separate instance of 7.7.4 and installed locally; this one is on 7.7.9 installed via NuGet.
The workflow logs simply say that two approval groups were created and saved successfully.
Is it still possible to select inclusions as well as exclusions via Settings? Or is this all handled via the Content menu now?
And thanks for getting back to me so quickly - I really appreciate it; it's super helpful for stakeholders who are needing to test out Plumber in a more 'real world' scenario ahead of our upcoming beta launch of our Umbraco setup.
Nicola.
I'll have a dig tomorrow (7pm here), but hoping (for my sake) it's a config thing rather than anything code related...
Alternative to excluding everything would be to put the devs into Umbraco's admin group, so they'll have the save and publish button in the button drawer (in the sub-button popup).
That said, it could well be due to having a workflow set below the excluded node causing issues. Will let you know.
OK, cheers! That sounds more obvious - I think I did exclusions because we had content nodes that were after workflow config (I got the yellow error alert to say that workflow was there but not configured) - I'll take another look though. Either way, the recycle bin context menu error is causing issues for our dev who's trying to delete swathes of content. Thank you!
Hi Nicola
I've released v0.7.5 which will resolve the error in the recycle bin (and on the content root). It's available via nuget now.
This will have a stack of other improvements on the v0.7.4 release, largely code refactoring and tidying.
There's a full rundown of the commit history at https://github.com/nathanwoulfe/Plumber/commits/v0.7.5/Workflow - all changes from March 13 onwards are part of 0.7.5.
N
Great - thank you! We'll give it a go; I'll let you know if we continue to have issues.
Thanks again!
Hi Nathan,
The recycle bin is all working as expected now - thank you!
I'm having some issues with the email notifications, though.
I've got a default approval group - Team - which has some excluded nodes, and no email notification enabled.
I've got another approval group - Testing - which I've applied to a specific node via the option in the Content menu.
The dashboard is updating as expected and the workflow is behaving as expected based on these settings.
However, if I try to view the Testing group under Workflow>Settings, I see the same settings as for Team. This means I can't seem to enable the email notification option for the Testing group (I've entered a specific email address in the Testing group page, but not entered one under Workflow>Settings). Is it possible to have email enabled for one group but not another? I tried enabling for both, both with and without a 'from' email entered under Settings, but didn't receive any notifications.
I'm sure I've missed something obvious somewhere but I'm not sure what...!
And am I right in thinking that:
Unfortunately the log viewer still just says "could not get workflow log", even though the dashboard is updating and the workflow history is updating.
We're using Plumber version 0.7.5 and Umbraco version 7.7.9.
Thanks very much for your help (and patience!)!
Nicola.
Hi Nicola
Approval workflows have always been set on the node itself - you can view them on the group page, but not modify. Content type workflows are set from /workflow/settings, and similarly can be viewed but not modified on the individual group page.
The notifications and exclude node settings aren't applied per group, those are global settings (as are all options found at /workflow/settings). It's not possible to exclude a set of nodes for a particular group only, exclusion is global.
If you set an email on the group itself, that address will receive the notifications, rather than sending to the individual group members. The address on the settings view is the FROM address for the notifications - means you can have them come from a specific address, and allows replying to a specific inbox rather than the Umbraco system address.
History view shows all process for all nodes, or only those for the selected node (ie choosing a single node to audit does not include children).
Hope that clarifies some things
N
Hi Nathan,
That's really helpful, thank you.
I'm still not receiving any email notifications, though.
I have:
but regardless of which option I try, I'm still not receiving an email notifcation when changes are made (by an account set up to require approval by 'Testing' group) under the section that 'Testing' is responsible for approving.
I'm assuming that:
I've definitely had notifications working fine in the past, so I'm sure I've missed something - any ideas? (and sorry for all the stupid questions!).
Thanks!
No such thing as stupid questions.
I've been doing a heap of tidying/refactoring trying to get to a V1 release, so highly likely I've broken something. Notifications tend to fail silently too, so it's not always obvious if things are broken. Will take a look tonight.
V1 is also dependent on me writing a heap of tests to prevent breaking stuff in future...
That's a strange one - I can hit the test endpoint for notifications and they process and send correctly. I've made some changes, but none that should have any functional impact (they're just dev stuff).
There's a current build at https://ci.appveyor.com/api/buildjobs/q9a4w7toomtlqho7/artifacts/BuildPackage%2Fartifacts%2FPlumber_0.7.7-beta-000184.zip, but not sure that will fix anything. If you could check the logs for any errors, that would be a good place to start.
I'm not seeing anything under the Plumber log, but the Umbraco trace log gave me this error:
in full:
Error sending notifications System.Net.Mail.SmtpException: Failure sending mail. ---> System.Net.WebException: The remote name could not be resolved: 'INTRANET' at System.Net.ServicePoint.GetConnection(PooledStream PooledStream, Object owner, Boolean async, IPAddress& address, Socket& abortSocket, Socket& abortSocket6) at System.Net.PooledStream.Activate(Object owningObject, Boolean async, GeneralAsyncDelegate asyncCallback) at System.Net.ConnectionPool.GetConnection(Object owningObject, GeneralAsyncDelegate asyncCallback, Int32 creationTimeout) at System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint) at System.Net.Mail.SmtpClient.GetConnection() at System.Net.Mail.SmtpClient.Send(MailMessage message) --- End of inner exception stack trace --- at System.Net.Mail.SmtpClient.Send(MailMessage message) at Workflow.Notifications.Send(WorkflowInstancePoco instance, EmailType emailType)
Hi Nicola
This might be one of my favourite types of issue - not mine... Probably need to get your devs to look into the SMTP setup on the server.
To verify Plumber's bits are working, you could update the web.config to use a mail drop folder:
is working on a reply...