While I really like the new Organizational Fields introduced this summer in Zendesk, I had a vital need to bring those fields into my current GoodData instance for reporting purposes. Though the functionality is not natively included (yet!), here is how I accomplished that task involving Organizational Fields that are drop-down lists.
The trick is to design a process that "brings over" the data in the Organization Field drop-down to a corresponding drop-down in the Ticket Field, which GoodData will then have access to.
Create the Organizational Fields as drop-down lists. Populate the drop-down lists with your allowable values. In my case, I created an Organizational Field named "Temperature" and allowed Red, Yellow and Green to signal our current status.
Create the same fields as Ticket Fields with drop-down lists. Populate the drop-down lists with the same allowable values. In my case, I created the same "Temperature" field, allowing Red, Yellow and Green.
Look up each Organization in your Zendesk and complete the Organizational Field(s) as desired. In my case, I populated my Organizations as Red, Yellow or Green. This could likely also be done with the API or with bulk import, but in my case it was most efficient to simply search for the Organizations natively in Zendesk and complete the field natively.
Build a Trigger which instructs Zendesk to use the Organization Field value to populate the corresponding Ticket Field value. I repeated this particular Trigger 2 more times so I had 3 Triggers total: Red, Yellow and Green Triggers.
For example, if the "Organization:Temperature" is Red, then perform the action of making the "Ticket:Temperature" field Red.
This will update the Ticket Field with your Organization Field the next time the ticket is updated. For some, this might be enough, knowing that the values in the Ticket Field will eventually populate with the values in the Organization Field over time as each ticket is updated and triggered. But I needed to update several hundred tickets immediately, so...
I built an Automation to force a minor update on all tickets.
If a ticket is created more than 1 hour ago and it does not have a particular tag (a tag that I made to mimic the date), then add that tag.
In my case, I used 3 criteria: (1) Ticket was created more than 1 hour ago; (2) Ticket does not have the tag "tag0919" and (3) Ticket Status is less than Closed. The action is to add the tag "tag0919"
Now just wait an hour until your Automation runs. This automation caused an update to every ticket in my Zendesk, forcing the Trigger I built in Step #4 to "bring over" the Organizational Field into the Ticket Field.
After your next regularly scheduled GoodData transfer, you should see the Ticket Fields you created as options for slicing and dicing.
Some notes that this is not a perfect solution:
- This does cause all of your Zendesk tickets to update. So be cautious of any other Triggers you have running, and also understand that if your processes or Agents rely on the "Last Update" timestamp for aging or other purposes, that this process will cause that timestamp to change when perhaps no meaningful activity has occurred on the ticket.
- A subsequent change to your Organization will populate to your Ticket, but only if you either re-run Step #6 or if you trip your Trigger with a ticket update. For example, if I change a Organization from Red to Yellow, the tickets "associated with" that Organization which were originally considered Red will remain Red. They will only transition to Yellow after the next update to the ticket. You could also choose to re-run your Step #5 Automation, and use a further condition that only tickets with a certain Organization be subject to the automation.
It's not a perfect solution, but it was one that worked for me and has paid enormous dividends because I can use the Organizational Fields to populate my Ticket Fields, and thus allow for GoodData slicing and dicing. The additional bonus is that once I have this set, any newly arriving tickets will automatically have the Organizational Field "brought over" to the Ticket Field because they are newly created, and thus subject to your Step #4 Trigger.
Now I can run GoodData metrics against my Red, Yellow or Green customers. I can include the values in the "How" portion or use Filtering to slice into metrics pertaining to just my customers in a particular temperature state.
Post ist für Kommentare geschlossen.