如果附件存在,向新票据添加标签
当新票有附件时,用标签标记新票。
用例:
然后,您可以使用这个标记来过滤带有一个视图附件的票据,而其他的票据没有附加到另一个视图。
也可能存在其他用例。
步骤:
1.启用API访问类型(见截图)
密码访问项目3在上面的截图-如果你想使用用户名和密码为您的API认证。
对于令牌,选择截图上的项目4——如果你打算在zendesk中生成API令牌并使用它。亚博
您不必同时启用两个,但其中一个就可以了。
2.创建目标扩展> HTTP
标题:更新标签
URL:https://domain.亚博zendesk.com/api/v2/tickets/update_many.json?ids= {{ticket.id}}
方法把
内容类型JSON
确保您的外部目标使用Basic验证。通过API令牌或管理凭据。
3.创建触发器
附件设置检查
条件-票被创建
动作-通知目标:更新标签
JSON主体:
{“票”:
{%用于票据中的注释。Public_comments offset:0 limit:1 %}
{%如果comments .attachments.size > 0 %}
{“additional_tags”(“attachments_yes”):}
{% else %}
{“additional_tags”(“attachments_no”):}
{% endif %}
{% endfor %}
}
上面的代码检查附件的注释,如果附件大于0,则用“attachments_yes”标记票据。
否则它会标记为attachment_no
注意:您将看到以下错误-
您可以忽略该错误消息,JSON目标正在尝试将您的代码验证为JavaScript而不是Liquid。
我测试了这个,它适用于所有新的门票
如果这对你有帮助,请给我投票,并随时给我留言Linkedin。
-
很棒的建议,阿什!感谢你花时间写这篇文章并与大家分享:)
-
嗨,谢谢你的建议!
然而,我在第2行收到一个解析错误:
期待'STRING', '}',得到'undefined'
有什么办法解决这个问题吗?谢谢!
-
您可以忽略该错误消息,JSON目标正在尝试将您的代码验证为JavaScript而不是Liquid。
-
谢谢阿什,扳机似乎还不起作用。
请确认您为触发器设置的所有“条件”和“动作”。
干杯
-
嗨,亚历克斯,
你能解释一下你说的“好像不工作”是什么意思吗?
您还可以检查触发器是否正在触发。
如果是,那么检查外部目标是否正常工作,检查API日志是否有任何错误。
让我知道。
-
嗨,灰,
它说它已经触发了,但是标签没有被添加到门票上。
触发器设置中的JSON脚本应该添加以下标签,对吗?“attachments_yes”
“attachments_no”
也许问题在于目标扩展:
- 基本身份验证-应该启用还是禁用?
- 在提交之前还有3个其他选项:测试目标,更新目标,删除目标-我们应该选择哪个?
-
嗨,亚历克斯,
我和你一样有扳机触发的问题,但标签没有加到罚单上。我有一位同事协助我,他说我需要Basic Authentication,这在本文中没有提到。他抓住了我:
1.创建一个API令牌,我们称之为“附件目标”,但您可以随意命名它。确保将令牌保存在某个地方,因为一旦“保存”它,就不能再次访问它。
2.我们使用上面Ash的说明创建了目标“附件标签”,并为用户名添加了带有系统管理员地址的基本身份验证:admin@ourcompany.com/令牌
3.基本身份验证密码:复制并保存的API令牌
4.创建目标并提交
5.然后我们制造了阿什的扳机
希望这对你有所帮助!
-
@……谢谢你!
是的,您需要通过API令牌或管理凭据进行基本身份验证才能对外部目标执行任何操作。
抱歉,我以为大家都知道。
-
阿什,在测试中,我无法让扳机,成功发射,击中我建造的扩展部分。
当我测试扩展时,我得到一个错误:
{"error":"Unprocessable Entity","message":"Server cannot parse JSON"}
任何想法吗?
-
@……
就我个人而言,当使用liquid创建JSON请求时,我必须删除所有无关的空格才能正确解析JSON。
带空格的示例:
{“票”:
{%用于票据中的注释。Public_comments offset:0 limit:1 %}
{%如果comments .attachments.size > 0 %}
{“additional_tags”(“attachments_yes”):}
{% else %}
{“additional_tags”(“attachments_no”):}
{% endif %}
}
{% endfor %}不带空格的示例:
{"ticket":{在ticket中注释的百分比。Public_comments offset:0 limit:1 %}{%如果评论附件。size > 0 %}{"additional_tags":["attachments_yes"]}{% else %}{"additional_tags":["attachments_no"]}{% endif %}}{% endfor %}
我会尝试将其作为故障排除步骤。
-
谢谢@……,我尝试复制/粘贴你分享的例子,但收到同样的错误。
实际JSON中是否有需要更改/添加的内容?
根据错误,我不怀疑这是身份验证问题,但可能是这种情况吗?
-
我个人没有在这篇文章中实现代码,但我看到了你的问题,我知道我过去也有过类似的问题。
您的问题可能与身份验证有关,但也可能是许多事情。我会从最基本的开始,让一些东西工作,然后从那里开始。
- 我要做的第一件事是删除液体代码,并简单地尝试在没有它的情况下发送请求。这将帮助你缩小问题的范围。
- 当然,您还需要确保身份验证工作正常。这可能很简单,比如输入一个无效的密码/令牌看看是否会出现不同的错误。
- 我可能尝试的另一件事是查看输出。我通常通过创建一个虚拟触发器并将代码复制到电子邮件中来实现这一点。然后,我可以激活触发器并通过电子邮件将输出发送给我,以便我可以引用它。这也是确认液体代码按预期工作的好方法。
- 您还可以尝试从CLI复制请求,以便更快、更容易地调整反馈循环。
这应该能帮你缩小问题的范围。
-
谢谢@……我们能够确认这似乎不是一个认证问题,因为更改凭据会导致不同的错误。我不熟悉JSON/Liquid,所以不确定什么是一个基本的请求运行,但是当我离开JSON输入空白时,它错误地出现了“400个错误请求”(“票id和参数都需要”)。
我创建了一个触发器,通过电子邮件发送液体脚本,它(我认为正确)交付了这张票没有附件:
{“票”:{“additional_tags”(“attachments_no”):}}
我不知道的是,这如何转化为在罚单上添加标签。
-
在关注了梅丽莎的帖子后,我设法让它工作了。非常感谢!
Ash发布的JSON主体最初对我来说工作得很好。
-
@……
现在,您已经排除了身份验证问题,并且看起来液体代码正在生成适当的请求。我要做的下一件事是获取您接收到的输出并将其发送到原始请求中。这将允许您确认端点正在接收适当的内容。如果这不起作用,那么它与目标有关,因为您已经验证了液体代码正在生成适当的请求,并且身份验证不是问题。
这是关于要命中哪个端点以及它所期望的内容的文档。这似乎与阿什的观点一致。
https://developer.亚博zendesk.com/rest_api/docs/support/tickets#updating-tag-lists-----------------------------------
顺便说一句,有趣的是,这个错误不是身份验证错误,但它可能是正确的错误。我不确定。
-----------------------------------
如果您不介意,可以截取您创建的目标和触发器的屏幕截图。
你可以随意在URL中删除你的公司名称,但留下其余的,因为这是至关重要的。 -
您认为我可以在任何时候使用这种方法来更新一个带有附件的公众评论的最终用户的票据吗?
-
不确定是否有人仍然有困难,但如果有,请记住,在您的目标创建中,您需要这样做作为一个例子:
用户名:steve@abccompany.com/token(即带有“/token”的电子邮件地址)密码:jghekrghoierhgoiejfgiodjfoidjoidjiodjvoi(生成的API令牌)
在我意识到格式之前,我一直很困惑 -
如果你不介意的话,截取您创建的目标和触发器的屏幕截图。您可以随意删除URL中的公司名称,但保留其他内容,因为这是至关重要的。
-
来给新票贴上标签与一个标签的时候他们有附件.用例:你可以用这个标签过滤票与附件一种观点,而另一种则没有附件另一种观点。
-
我发现这非常有用,因为我们需要知道附件的时刻票到达(提示提示眨眼眨眼- Zendesk团队为什么这个字段不在核心票API结果....?)。亚博我注意到的一件事是,偶尔我们会得到以下错误,并想知道是否有人遇到过这个问题。如果是这样,这个问题是如何解决的?
似乎只发生每隔一段时间,但有时我看到组门票在短时间内发生这种情况,并担心这个扩展可能会失败,因为我们继续添加新的组。
{
“错误”:“ParameterMissing”,
"description": "Parameter必须同时提供票证id和参数"
} -
你好,
如果你正在寻找一个功能,根据附件的存在或缺乏添加标签,我们已经在市场上发布了以下应用程序。最重要的是,它还根据文件扩展名(ri_application/pdf、ri_application/docx、ri_application/jpg等)建立它们。
-
@……我得到了相同的错误@……被接收。
另外,使用你的指南,我尝试做一些不同的事情。知道为什么这个不行吗?
{“票”:
{%用于票据中的注释。public_comments %}
{%如果评论附件。File_name包含“”。ics“%}
{“additional_tags”(“attachments_ics”):}
{% endif %}
}
{% endfor %} -
这是我们现在使用的,效果很好。我们发现了一个错误,期望附件只在公共评论中,现在使用搜索所有评论中的任何附件
{“票”:
{在ticket中注释的%。comments偏移量:0限制:1 %}
{%如果comments .attachments.size > 0 %}
{“additional_tags”(“attachments_yes”):}
{% else %}
{“additional_tags”(“attachments_no”):}
{% endif %}
}
{% endfor %} -
谢谢@……这是有帮助的。
你知道是否有理由相信下面的代码不能工作吗?
{“票”:
{在ticket中注释的%。comments偏移量:0限制:1 %}
{%如果comments .attachments.size > 0,并且comments .attachments。File_name包含“”。ics“%}
{“additional_tags”(“attachments_ics_yes”):}
{% else %}
{“additional_tags”(“attachments_ics_no”):}
{% endif %}
}
{% endfor %} -
上周执行了5万次——只有一次由于超时而失败。我想说它运行得很好
-
我很高兴看到这个代码为你们中的许多人工作。
如果您需要任何免费的解决方案建议,请随时与我联系。
-
嗨,阿什,我希望你一切都好!
我有一个关于门票事件属性的查询!我想知道Zendesk是否有一个功能/能力,可以在每张票的评论或事件数量达到“X”后自动触发升级。亚博
例如:客户端提交Zendesk亚博票证,核心代理通过宏向客户端提供指导,客户端不理解请求,然后将其发送到第2层进行澄清,第2层返回Zendesk票证,向核心代理提出问题。这将继续在票券上点击10个事件/评论。
是否有可能让第10条评论触发自动升级,或者应用一个可以路由到单独队列的标记?
我不确定是否可以在HTTP目标的帮助下设置它。如果您能提供任何信息,我将不胜感激。
亲切的问候,
Kuldeep
-
嗨@……-这很容易在一个触发器内完成。我们有一个地方,提升到高优先级时,超过8个答复
-
嗨@……,
感谢分享这个伟大的解决方案!这看起来与我的想法非常相似,但我想知道“代理回复”条件是否会解决“内部评论”问题?
由于我们正在使用升级机制来应对这些请求,并且随着团队之间来回的增加,我们在票证中得到了许多内部评论,因此希望应用一个可以路由到单独队列的标记(如果可行)。或者如果有任何其他的解决办法,请让我知道。
再次感谢!
Kuldeep
-
嗨,Kuldeep -这将给你一个座席对客户和内部座席的所有回复的计数。请参阅本文https://support.亚博zendesk.com/hc/en-us/articles/115015611647-Trigger-conditions-and-actions-reference
如果您只想确定内部注释,我认为您可以使用标记来计算内部注释的数量,并在数量超过预设限制时添加标记。
请登录留下评论。
42岁的评论