Notify Assigned to when the Affected User updates an incident from the SSP in SCSM 2012

March 30, 2012 Posted by Stefan Allansson

There are already some great blogs about how to notify the “assigned to” user when an incident is updated by the affected user. Those explains how to do this with the Exchange connector or with the SSP for SCSM 2010.

The solution for the Exchange connector also works in SCSM 2012, but since there are a new SSP in 2012 we have to find another way to do it for the SSP.

In SCSM 2012 there is a field for user input and a button “Update request” for the affected user of an incident on the SSP. If the user updates the incident from the SSP, an entry will be added in the action log for that incident.


So to be able to notify the assigned to user that the incident is updated, we need to trigger on when a new End-User comment is added in the action log. To do that we have to create a relationship subscription in XML.
Thanks to Travis that has wrote this blog that describes how to do that: http://blogs.technet.com/b/servicemanager/archive/2010/08/30/notifying-the-affected-user-when-the-analyst-has-updated-the-action-log.aspx

To get this to work for the SSP I used the management pack that Travis have created and made some changes.
In the subscription I changed RelType from WorkItem!System.WorkItem.TroubleTicketHasAnalystComment to WorkItem!System.WorkItem.TroubleTicketHasUserComment and for TargetType I changed from WorkItem!System.WorkItem.TroubleTicket.AnalystCommentLog to System.WorkItem.TroubleTicket.UserCommentLog

I also made changes to the WriteActions. Instead of adding a notification template and a user to notify directly in the XML, I add an incident template that I have created. The only thing my template does is that it sets the UpdatedByEndUser to true.
There is a great blog from my colleague Anders Asp “A smarter way to notify the assignee when the affected user updates his incident” that describes the UpdatedByEndUser solution. http://www.scsm.se/?p=564

So when we add a template that changes the UpdatedByEndUser to true, and have configured the rest in Anders solution it will send an e-mail to the assigned to user.

Below is the management pack that I have used.
You need to change the GUID (A035C6E5-2ADA-334A-3D01-24F4398A5BB1) for the incident template to the GUID of the template that you want to use.
To get the GUID for your template, login in to your SQL Server and run this query against the ServiceManager database.(put in the display name of your template)

“select Objecttemplateid from ObjectTemplate where ObjectTemplateName=’DisplayNameOfYourTemplate’

<ManagementPack ContentReadable=”true” SchemaVersion=”2.0″ OriginalSchemaVersion=”1.1″ xmlns:xsd=”http://www.w3.org/2001/XMLSchema” xmlns:xsl=”http://www.w3.org/1999/XSL/Transform”>

<Manifest>
<Identity>
<ID>ActionLogAddRelationshipSubscription</ID>
<Version>1.0.0.0</Version>
</Identity>
<Name>Action Log Add Relationship Subscription</Name>
<References>
<Reference Alias=”Console”>
<ID>Microsoft.EnterpriseManagement.ServiceManager.UI.Console</ID>
<Version>7.0.5826.859</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”NotificationsLibrary”>
<ID>System.Notifications.Library</ID>
<Version>7.0.5826.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”WorkItem”>
<ID>System.WorkItem.Library</ID>
<Version>7.0.5826.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”ServiceManager.IncidentLibrary”>
<ID>ServiceManager.IncidentManagement.Library</ID>
<Version>7.0.5826.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”System”>
<ID>System.Library</ID>
<Version>7.0.5826.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”IncidentLibrary”>
<ID>System.WorkItem.Incident.Library</ID>
<Version>7.0.5826.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”Subscriptions”>
<ID>Microsoft.SystemCenter.Subscriptions</ID>
<Version>7.0.5826.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”Administration”>
<ID>Microsoft.EnterpriseManagement.ServiceManager.UI.Administration</ID>
<Version>7.0.5826.859</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
</References>
</Manifest>
<Categories>
<Category ID=”Category.ActionLogAddRelationshipSubscriptions.ManagementPack” Value=”Console!Microsoft.EnterpriseManagement.ServiceManager.ManagementPack”>
<ManagementPackName>ActionLogAddRelationshipSubscription</ManagementPackName>
<ManagementPackVersion>7.0.5826.0</ManagementPackVersion>
</Category>
<Category ID=”Category.ActionLogAddRelationshipSubscriptionRule” Target=”ActionLogAddRelationshipSubscriptionRule” Value=”Administration!Microsoft.EnterpriseManagement.ServiceManager.Rules.WorkflowSubscriptions” />
</Categories>
<Monitoring>
<Rules>
<Rule ID=”ActionLogAddRelationshipSubscriptionRule” Enabled=”true” Target=”ServiceManager.IncidentLibrary!System.WorkItem.Incident.WorkflowTarget” ConfirmDelivery=”true” Remotable=”true” Priority=”Normal” DiscardLevel=”100″>
<Category>System</Category>
<DataSources>
<DataSource ID=”DS” TypeID=”Subscriptions!Microsoft.SystemCenter.CmdbInstanceSubscription.DataSourceModule”>
<Subscription>
<RelationshipSubscription RelType=”$MPElement[Name=’WorkItem!System.WorkItem.TroubleTicketHasUserComment’]$” SourceType=”$MPElement[Name=’WorkItem!System.WorkItem.TroubleTicket’]$” TargetType=”$MPElement[Name=’WorkItem!System.WorkItem.TroubleTicket.UserCommentLog’]$”>
<AddRelationship />
</RelationshipSubscription>
<PollingIntervalInSeconds>30</PollingIntervalInSeconds>
<BatchSize>100</BatchSize>
</Subscription>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID=”WA” TypeID=”Subscriptions!Microsoft.EnterpriseManagement.SystemCenter.Subscription.WindowsWorkflowTaskWriteAction”>
<Subscription>
<EnableBatchProcessing>true</EnableBatchProcessing>
<WindowsWorkflowConfiguration>                <AssemblyName>Microsoft.EnterpriseManagement.ServiceManager.Incident.Workflows</AssemblyName>
<WorkflowTypeName>Microsoft.EnterpriseManagement.ServiceManager.Incident.Workflows.AutomaticIncidentChangeWorkflow</WorkflowTypeName>
<WorkflowParameters>
<WorkflowArrayParameter Name=”InstanceIds” Type=”guid”>
<Item>$Data/BaseManagedEntityId$</Item>
</WorkflowArrayParameter>
<WorkflowParameter Name=”IncidentTemplate” Type=”guid”>A035C6E5-2ADA-334A-3D01-24F4398A5BB1</WorkflowParameter>
<WorkflowParameter Name=”NotificationRulesEnabled” Type=”boolean”>False</WorkflowParameter>
</WorkflowParameters>
<RetryExceptions />
<RetryDelaySeconds>60</RetryDelaySeconds>
<MaximumRunningTimeSeconds>7200</MaximumRunningTimeSeconds>
</WindowsWorkflowConfiguration>
</Subscription>
</WriteAction>
</WriteActions>
</Rule>
</Rules>
</Monitoring>
<LanguagePacks>
<LanguagePack ID=”ENU” IsDefault=”true”>
<DisplayStrings>
<DisplayString ElementID=”ActionLogAddRelationshipSubscription”>
<Name>Action Log Add Relationship Subscription</Name>
</DisplayString>
<DisplayString ElementID=”ActionLogAddRelationshipSubscriptionRule”>
<Name>Action log entry added to action log</Name>
</DisplayString>
</DisplayStrings>
</LanguagePack>
</LanguagePacks>
</ManagementPack>

 

Here is a summarize of the steps that is needed for this: (since I use Anders solution for templates and workflows, there is a more detailed description how to do that in his blog http://www.scsm.se/?p=564.

  1. Create an Incident Template with settings that you want to apply for an updated incident. This is the template that we adds in the management pack with a GUID. My template just changes the UpdatedByEndUser to true. I think this is a great solution to use, but you can also have a template that for example just change the status to updated.(read Anders blog to see the advantages with his solution)
  2. Create a workflow that triggers on when your template is added that will send an e-mail to the Affected User. (see more information in Anders blog)
  3. Copy my mp and change the GUID to match your incident template.
  4. Import the mp

In step 3 in Anders article where he adds a template for the Exchange Connector I use a template that doesn´t do any change at all. We don´t need to set the UpdatedByEndUser to true since that will be done by our mp when an End-User comment is aded to the action log )

Step 5 in Anders description where you creates two workflows is little special in 2012 or at least in my environment. I don´t know if it´s a bug or if it´s unique in my environment.
I can´t create the criteria changed from NOT EQUAL true for the UpdatedByEndUser.
I have to set criteria EQUAL and then change it to NOT EQUAL in XML after I have exported the mp.
If I then import the mp again it work as expected but when you look at the workflow in the console it still says EQUAL. If I export the management pack again I can see that it says NOT EQUAL in XML as it also should do in the console.

This solution doesn´t send a notify if the Affected User resolves the incident on the SSP by clicking “cancel request”. Because when they do that it doesn´t creates an End-User comment in the Action log, it will create a “Record Resolved” entry instead. If I find a good solution for how to cover that I will create a new blog post.

 

 

To do the same for a service request you need to use a different relationship type. I haven´t created that mp yet but will create a blog for that also when I´m done with that.

8 Responses to Notify Assigned to when the Affected User updates an incident from the SSP in SCSM 2012

  1. Geert says:

    Hi Stefan

    Great post. I’ll be back when you post your Service Request Mgt Pack. Will be a great addition!

  2. Gabriel says:

    Hi Stefan,

    I’m wondering if you made any progress on the Service Request version of this yet? I’ve been looking over it as well, but the problem I’m having is that the Service Request class doesn’t contain the TroubleTicketHasUserComment or TroubleTicketHasAnalystComment relationships, rather, it only has WorkItemHasCommentLog to relate to the Work Item Comments Log class which then connects to the TroubleTicketUserComment and TroubleTicketAnalystComment classes storing the user and analyst comments. I’m not aware of how to structure the relationship subscription, or even if it is possible (which I am feeling is probably the answer), in order to fire notifications off whenever an end user or analyst updates the ticket. Is there another way you know of or have found which can be used?

    Thanks for any advice you can give.

  3. David Buchta says:

    What about the other way around? Notifying the affected user when the assigned analyst updates the incident via e-mail? I can easily see an instance where the analyst is out and has only his smartphone, it would be very handy to be able to reply via e-mail and request more info, etc, and have SCSM e-mail the affected user just as if he used the console.

    Thanks!

  4. Pingback: SCSM.SE » Blog Archive » Notify Assigned to when the Affected User updates a Service Request from the SSP in SCSM 2012

  5. Depoxito.Com says:

    Depoxito is the best online gambling site in Indonesia, past Depoxito you
    will atmosphere the sensation of playing further and protester online gambling.
    We always innovate correspondingly that every our members can setting a sensation gone playing
    at a genuine casino. Depoxito find the money for you the best breathing casino feelings you can acquire
    subsequent to every the beautiful and sexy dealers, or grand vip saloon private room
    for our VIP devotee where you can be active one on one later than our special Dealer all just for yourself.

    Luxurious site and VIP class assist for you, a unprejudiced and easy-to-use site, friendly and always friendly
    Customer advance to help you. Depoxito is the right unconventional for those of you who want
    to conduct yourself online gambling without painful that your winnings will not be paid, Depoxito guarantees that
    every bet you area and win is real and will be paid without incurring any unwritten deductions.

    Depoxito as a site that is a partner of international big bookmakers enormously will not disappoint you as a faithful believer of the Depoxito site
    and will continue to take aim new updates and revolutionize our security system correspondingly that it can prevent our faithful members from the threat of personal data leakage,
    scam or fraud.
    Depoxito is then a trusted online gambling dealer that provides the most perfect
    gambling games in Indonesia, such as sportsbook, slot games, enliven casino, lottery and online poker that you can feint past just 1
    Account.
    In adjunct to the conclusive VIP sustain game on our site, we will pamper you our loyal
    members because you don’t compulsion a lot of IDs to piece of legislation substitute gambling
    games. As a gambling site accredited by PAGCOR (Philippines Amusement and Gaming Corporation) Depoxito is moreover one of the number one gambling sites in Indonesia and has
    a good reputation from all online gambling players in Indonesia.

    As we have said, we have a customer give support to that is always upon standby to assist all your needs even though playing on our
    site, including for withdrawals and deposits that unaccompanied resign yourself
    to less than 3 minutes, as a result we can be the best for advocate relieve in addition to our customer relieve will standby 24 hour a daylight and 7 days a week
    to advance our zealot and VIPs.
    And the most special from our site compared to new sites is the extra that we
    find the money for to our faithful members who continue
    to play a role upon our site will get the best promos and bonuses that we will have the funds for you,
    we always follow the publicize and trends that are viral now as a result the promos that we create
    are of course no less than any site. For VIP members we always come up with the money for special promos that are not written consequently that our
    members continue to be in on our site depoxito.

  6. mabosway says:

    Mabosway interchange sites and mobile sports login links – There are lots of
    online gambling agent sites scattered upon the internet. Each
    of these sites has offers and features provided, including the types of gambling games
    available. Many online gambling sites single-handedly manage to pay for 1
    to 3 types of games and certainly have excellent games they offer.

    Mabosway.com is an online gambling agent site that offers not without help 1 or 3 types of gambling games but 7 engaging types of gambling games that
    you can play. This proves that Mabosway is the most given betting site that offers not without help online soccer gambling, but Casino,
    Poker, Toto 4D, Bola Tangkas, Fish Hunter and online cockfighting gambling.

    This site is known as Mabosway Indonesia for members who come from Indonesia.

    Various types of online gambling games are sufficiently supported
    by the maximum utility from Mabosway.com. One of them is the Customer support feature which is 24 hours standby to
    relief layer and invalidation transactions for members.
    How to register is along with simple to do, especially
    for beginner bettors who are starting to bet for the first time.

    How to Apply for Mabosway

    How to register mabosway is certainly easy for unknown people who desire to start playing online gambling.
    You abandoned have to click the associate NOW button on the home page which will go directly to the
    registration form page. After successfully registering you will acquire a user ID as an identity in the game.

    After whatever is done, you are officially associated and become
    a member.

    After you officially become a fanatic you are offered
    to pick the type of online gambling game that you
    can play. Here are 5 types of favorite online gambling games that you can piece
    of legislation at Mabosway.com.

Leave a Reply

Your email address will not be published. Required fields are marked *

*