Video Screencast Help
Symantec to Separate Into Two Focused, Industry-Leading Technology Companies. Learn more.

Email Notification when reply email arrived into incident

Created: 18 Apr 2012 • Updated: 17 Aug 2012 | 20 comments
This issue has been solved. See solution.

I am hoping someone can help me with the customization to get ServicDesk to notify workers when a reply from an email comes into a incident.  I have tried to follow Symantecs documentation in HOWTO30369 but struggling with some of the components not giving me variables Symantec says to use (ex. Step 4. not seeing the AssigneeEmailList).  I also looked at the foumn thread below but didn't see any instructions on modifing the workflow.  Has anyone got this working on 7.1 SP2?  Really think this is bad of Symantec to not have this built in as it results in the delay of resolving issues when a reply will sit in a incident for hours before a technician will realize the user has replied.  Any help would be GREATLY appriciated.  Thanks.

https://www-secure.symantec.com/connect/forums/ema...

Discussion Filed Under:

Comments 20 CommentsJump to latest comment

Aryanos's picture

If anyone can't help you then I can do a quick article on how to do it. I think the issue with that article is that it notifies all the users that have/had tasks on that incident so I think you only want to update the person(s)that have the active task.

I like my beats fast and my bass down low

jasonhopp's picture

That would be FANTASTIC!!  I have searched the forumns and online and have come across a couple discussions on this topic but can't find anyone out there that has posted the solution for this.  I think this would be a very benificial article as I feel this shouldn't be a customization and something Symantec should of added.  I am seeing and hearing from allot of our workers that they will get cought up in other tasks and forget to go back into a ticket to look for the email response which causes delays for user's and can affect SLA's in the long run.  Any help you can provide will be greatly appriciated.  Thanks!

Aryanos's picture

I haven't forgotten about this, just been busy dealing with other issues in ServiceDesk that need fixing.

I like my beats fast and my bass down low

jasonhopp's picture

Aryanos, after spending several more hours on this and digging further into it I think I ALMOST have it.  I have attached a picture of the workflow modification that I have added.  It is working but the only bad thing I am seeing is that it is email a notification to EVERY group the ticket has touched and not just the currently assigned to user or group.  So for instance if a ticket starts off at support 1, then gets assigned to security..a email gets sent, reply recieved and both support 1 and security will get a email even though security is the actual assigned to group.  I think the issue is coming from the "To Address" variable which I have set to "AssigneeEmailList".  Does that need to be something else?

Also on a seperate note I wanted to add a link to the ticket on the email and look on one of the other email compenents and saw the element to do that is "ProcessViewerPageURL" but I don't get that as an option for my email component.

Thanks!

Reply Notification Customization.jpg
Aryanos's picture

You're almost there. What you need to do is filter the active tasks from the completed ones so you have to iterate through the ResultTaskAssignments. The way I did it was go through that collection and put the active ones in a new collection called NewResultTaskAssignment and then those were the email addresses I used to send the email update.

I included a doc for you to take a look at what I did and hopefully you can follow along. If you have any issues please let me know.

UPDATE: Sorry just to clear up what you need to do in the next step after you filtered it out. Basically the NewResultTaskAssignment.ReferenceType is split up into User and Group. For User you can use the ReferenceName property for the email. For Group, it gives it the name of the group, for example Support I. You need to get the email of the group and you can pass in the ReferenceName property to the GetGroupByName component to get the group email.

Just to be clear you will have to go through the NewResultTaskAssignment collection again to get the email addresses for both the User and Group tasks and put them in new text collection to make it easier. Hope this makes sense.

AttachmentSize
Filter Tasks.doc 0 bytes

I like my beats fast and my bass down low

jasonhopp's picture

Unforunately, not sure I am following what you are saying in your last post.  I tried looking at your document but it shows up blank with nothing in it (also the size shows 0 bytes).  Anyway you can post the document again so I can take a look at it.  Thanks.

Aryanos's picture

Sorry, it looks like my Word document was corrupt. I'll see if I can do the screenshots again later today and upload the file. You'll see what I mean when you view the Word document as I'll put a brief explanation in there as well.

I like my beats fast and my bass down low

jasonhopp's picture

Aryanos, have you had a chance to redo the Word document on how you corrected the issue of this emailing every group the ticket touches?  Thanks again for all your help with this.

Aryanos's picture

Sorry for the wait, I was busy trying to fix other things in ServiceDesk. Here's a Word document on what you need to do so please take a look a the setup and then how to configure the components. Basically you're going to do the following:

1. Retrieve all the tasks for the incident

2. Filter them out so you only have the active tasks

3. Get the emails for the Users and Groups

4. Send an email to update the worker/groups

I don't have time at the moment to go into too much detail but I hope you can view the process and how it's configured and get it to work. If you have any questions please let me know.

AttachmentSize
Update Workers By Email.doc 237 KB

I like my beats fast and my bass down low

jasonhopp's picture

Thanks.  I looked at your workflow model in the attached document and see what you did but it is quite a bit diffrent then what I have semi working now.  I went ahead and removed what I had and try to duplicate yours but ran into some issues of compent variables not showing up. 

1. On "The ForEach Element in Collection" I am not getting the Variable "ResultTaskAssignments"

2. The "Add Task" component after it has allot more required configuration then what your "Task Editor" shows which threw me off

I temporarily was able to put in a rule at least that stated if contains more then 1 group to leave off support 1 as they were getting a heavy load of email since they do allot of reassigning tickets.  Starting to think this fix is more fustrating then anything.  I guess I will need to work with this some more and see if I can figure out what is going on any why I am missing the variables.

Also, by any chance do you know why I wouldn't be able to add the link to the ticket in the email thats sent out.  Looking at the other templates it is the ProcessViewerPageURL but not seeing that as an option for my send email component.  Thanks again for all your help.

Aryanos's picture

Update 2: Looking at your diagram it looks like you already have it in place so you would use what you've named it to go through the tasks and filter out the active ones. You can still filter out emails to Support I if you wanted to. If you need more details please let me know.

Update: Just checked and I guess it's not there by default so I must've added it. Look at the document and you need to put a GetTaskAssignmentForProcess after the Add Response to History component. Input is GUID and then name the output ResultsTaskAssignments. Sorry, throught is was there all along but I guess it was a customization. 

The ResultsTaskAssignment should already be there by default I think after the Add Response to History. The 'Add Task' component is actuall a 'Task' component so you're not adding any tasks, you're checking the tasks and it should only have one input.

You have to build the link to the ticket as the ProcessViewerPageURL is not available because it is not in a Workflow Dialog. You can use the following in a Merge Text component and then in the email use a Variable Web Link and choose the Merge Text

[Profile.Properties.service_desk_settings_process_manager_url/Reports/OpenProcess.aspx?ReportProcessID=IncidentTrackingID&notabs=1&SideBar=false

The bolded are values that you have to use from the project.

AttachmentSize
ResultsTask.doc 58 KB

I like my beats fast and my bass down low

jasonhopp's picture

Thanks!  I will need to play with this some more now that I have your documentation and see if I can get it up and working.  I put a temporary rule in to bypass Support 1 if more then 2 groups exist so it is working ok now in production and not hearing to many complaints but would like to get it setup the way you have it to email on the one group.

One thing I would like to get working though and have been hounded on is the link to the ticket on the email.  A couple questions on using the Merge Text component as you stated.  What does the Output Variable need to be in the Merge Text Editor?  Also I didn't see a Merge Text in the Variable Web Link but a MergedClassificationText under the Incident section not sure that would work.  Thanks.

Aryanos's picture

Update: Argh, noticed that you might not have the IncidentTrackingID.ProcessID that you need to build the string. To get this variable you need to put a GetIncidentByTrackingID component before your Merge Text one. Basically this component will give you details to the incident so you can put that in the email.

Before the send email you would put a Merge Text. This way you have the link to the incident to use in the email body. You can name the output whatever you want but in my example it is TicketLink

Build the url to the incident in that component.

Then in the email body, select Variable Web Link from the drop-down, search for your merge text ouput name (TicketLink in this case) and drag it to the email body

I like my beats fast and my bass down low

jasonhopp's picture

Ok.  I think I missing something here.  I have the Get Incident By Tracking ID component but the Output variable I have set to Incidnet and not IncidentTrackingID.

My TicketLink component has an Output variable and I see yours does not?

Also I noticed your using diffrent componets for sending the email.  Can the send email component like I have work or does it need to be changed?

See attached Word Document

AttachmentSize
TicketLink.docx 161.01 KB
Aryanos's picture

I named it TicketLink but you can name it whatever you want. You should be able to put whatever you want in the Send Email component so it should be the same. I just created the email body in a HTML Merge component first instead of creating it directly in the Send Email component but the same options are there.

I like my beats fast and my bass down low

Aryanos's picture

They just published my article on how to do this. It will probably be easier for you to see the entire process and then make adjustments to yours where needed

https://www-secure.symantec.com/connect/articles/how-notify-workergroup-if-incident-has-been-updated-email-sd71-sp1?om_ext_cid=biz_con_cmgr_cp_20120503_pm

I like my beats fast and my bass down low

SOLUTION
jasonhopp's picture

I finally got around to following your document (which I must say was fantastic) and having some issues when testing it.  When replying to a helpdesk ticket I am getting back "Email Monitor Process has Failed".  The issue is in the Send email compent.  I have it exactly setup like you do in your document ("ToEmails" in the "To Address" field).  I want the email to go to just the assigned worker or group that is currently assigned to the ticket.  The below error is what I am getting on the bottom of the Action Required email.  I double checked all compents to your document and everything looks right.  Any thoughts?  Thanks again for publishing this article!!!!

Exception in Component: Send Email To Assigned worker/queue of email reply

Exception Message:
The parameter 'addresses' cannot be an empty string. Parameter name: addresses

Aryanos's picture

Check if you have emails setup for your  groups as it uses that email address to update incidents assigned to groups. Do you get an error when it's assigned to just a user?

I like my beats fast and my bass down low

jasonhopp's picture

That did it!!  Added email addresses to the groups email field and worked like a charm.  Thanks again for your help

Koen van Carglass's picture

I followed your procedure and behold... henceforth we will be notified when an aswer to a mail enters the ticket.

Thanks for your help, this was a big one at our company.

Kind regards

Koen