Jira Service Management Customers Not Impersonating as Comments Executor

Originally asked by Harold Oconitrillo on 28 September 2023 (original question)


I have this code on the incoming sync of a Jira Service Management Cloud instance.

issue.comments = commentHelper.mergeComments(issue, replica,                     
                    {
                       comment ->
                       	comment.executor = nodeHelper.getUserByEmail(comment.author?.email)
                     //debug.error(nodeHelper.getUserByEmail(comment.author?.email).toString())
                        def CommentDate = new SimpleDateFormat("MM/dd/yyyy")
                        updatedDate = CommentDate.format(comment.updated)
                        comment.body =
                          comment.author.email  +
                                  " commented on " + updatedDate +": \n" +
                          comment.body + "\n"

                     })

When the user is an internal Agent, the comment is impersonated as the user. But when the user is a customer in JSM, the comment is not being impersonated as the user.

It appears that Exalate can’t find the user even though the correct ID is being passed for the comment.executor.

I’m using the same nodeHelper method to assign the Assignee which is able to find the user and set as the Assignee

issue.reporter = nodeHelper.getUserByEmail(replica.reporter?.email) ?: defaultUser


I’ve tested by making sure the customer is set as Requested Participant and in an Organization that can view and comment on the ticket.

Is this a limitation on the JSM or on Exalate’s side?


Answer by Javier Pozuelo on 09 October 2023

Hello,

As long as the author does not exist in your local JIRA, the proxy user (Exalate) will be used instead as the author of the comment.