Recent searches


No recent searches

Tip: Dynamic Agent Signatures with Zignatures App



Posted Feb 09, 2021

There are a number of posts in Zendesk Community space about the need to have dynamic Agent signatures or signatures with a conditional element. In this post I would like to share few tips how to use the Zignatures App to achieve the desired Agent signature behaviour.

How Zignatures App works?

In essence the App logic is the following: when Agent presses Submit button the App will interrupt the submission process => inject the signature code => let Zendesk calculate and render it => allow ticket submission process to be completed.

The native Zendesk Agent signature is added after the submit occurred.

The key difference between the Zignatures App and the native Zendesk signature is the scope of accessible user/ticket/account attributes. The native signature can access the current user attributes and the account attributes. While the Zignatures App can access the current user, account, ticket, comments and all other attributes available one a ticket. For example, render a signature depending on a ticket field is only possible using Zignatures App.

For Zignatures App to work:

  • Install the Zignatures App from Zendesk marketplace
  • Configure the App. The only mandatory field is "Text or HTML of the signature". It accepts the text, raw HTML or any other objects that are accepted by Zendesk comment editor (for example, Dynamic Content)

  • Complete the installation
  • Refresh the page
  • Go to a test ticket and add a public comment to see the signature

Signature configuration

There are a number of ways how signature in the App can be configured. 

  • Add a simple signature text into "Text or HTML of the signature". It may contain Zendesk placeholders
  • Add pure HTML that can also contain Zendesk placeholders The HTML has to be supported by the Zendesk Comment editor. The editor tend to be very restrictive and sanitise any HTML input. For example, many "exotic" HTML tags will not work nor fancy CSS
  • Add your HTML with Zendesk placeholders into a Dynamic content record and inject the Dynamic content into the App setting. This approach allows using any HTML with all sort of in line styles and rare HTML tags

Advanced configuration

The key advantage of using Zignatures App is the ability to use Liquid (Zendesk article and technical documentation). The Liquid is very powerful language that allows text manipulation, conditional statements and more.

Examples:

Render signature only for tickets created via email:

{% if ticket.via == "Mail" %} SIGNATURE {% else %} no signature {% endif %}

Render signature depending on a ticket tag:

<br>
{% if ticket.tags contains 'tag1' %}
{% elsif ticket.tags contains 'tag2' %}
{% elsif ticket.tags contains 'tag3' %}
{% elsif ticket.tags contains 'tag4' %}
<SIGNATURE 1 HTML>
{% elsif ticket.tags contains 'tag5' %}
<SIGNATURE 2 HTML>
{% else %}
<DEFAULT SIGNATURE HTML>
{% endif %}

Render signature with dynamic Agent name and the avatar. This code should be added into Dynamic Content to work.

{% assign avatar_url = 'https://DEFAULT_IMAGE_URL' %}
{% case current_user.email %}
{% when 'AGENT 1 EMAIL VALUE' %}
{% assign avatar_url = 'https://AGENT_1_IMAGE_URL' %}
{% when 'AGENT 2 EMAIL VALUE' %}
{% assign avatar_url = 'https://AGENT_2_IMAGE_URL' %}
{% else %}{% endcase %}
<div style="color:#262626;padding: 10px 0; width: 500px;font-family:Calibri;font-size:12px;">
<div style="font-weight: bold">{{current_user.name}} </div>
<img src="{{avatar_url}}" alt="{{current_user.name}} " width="144" style="padding: 0;" />
</div>

There are a number of other use cases that the Zignatures App can help solving. Feel free to share your signature requirements in the comments and rate the Zignatures App on the marketplace.


1

6

6 comments

image avatar

Brett Bowser

Zendesk Community Manager

Awesome write up Andrey :)

Thanks for taking the time to share this with everyone!

1


Hi Team,

Can we have multiple signature for a particular agent using this app?

0


@prakash.sati

Yes you can. Assuming you can come with a condition for that.

1


@Andrey: condition can be the ticket brand/group..

0


I'm trying this out in my sandbox but I'm having trouble getting the signature to fire. I set up a test code to check for a tag in the ticket as you used above, but it doesn't seem to work. Here's the test code I set up:

<br>

{% if ticket.tags contains ‘tf_premium_premium_service_member’ %}

A Premium Member

{% else %}

Not a premium member

{% endif %}

0


image avatar

Brett Bowser

Zendesk Community Manager

Hey Charlie,
 
It may be worth reaching out to the Zignatures team to see if they can assist with this. You can find their contact information on this page: https://www.zendesk.com/apps/support/130282/zignatures/?q=mkp_zign
 
I hope this helps!

0


Please sign in to leave a comment.

Didn't find what you're looking for?

New post