关于 activity-response
activity-response 是面向 ServiceNow CSM Agent 的技能,用于记录案件处理、联系客户和准备交接信息。它结合案件活动、相关任务、SLA 状态及知识文章,为常见处理阶段拟定回复。
主要功能
- 01查看案件状态与近期活动
- 02起草内部工作备注
- 03准备面向客户的进度更新
- 04依据案件和 SLA 情况建议后续行动
- 05生成分流、升级及交接摘要
适用场景
- 01记录调查过程或初步分流
- 02向客户更新案件进度
- 03准备案件升级或内部交接
- 04记录向客户请求的信息
MCP 相关
它通过 SN-Get-Record 和 SN-Query-Table 获取案件详情、活动、任务、SLA 数据、邮件和知识文章。输入内容未说明通过 MCP 将回复写回系统。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ happy-technologies-llc/ happy-platform-skills --skill activity-response安装后在 Claude Code 中输入/activity-response确认已加载。
详细介绍
活动响应
概述
此技能可为各种 CSM 案例活动生成符合上下文的响应,帮助 Agent 创建一致、全面且结构清晰的工作记录、客户沟通内容和状态更新。它可以帮助你:
- 分析当前案例状态、近期活动和待处理事项,以确定合适的响应内容
- 生成专业的工作记录,记录调查进展、发现和决策
- 创建语气和详细程度恰当、面向客户的附加评论
- 根据案例状态、SLA 状态和解决进度,建议后续操作
- 生成状态更新摘要,供内部交接和管理层了解情况
- 为常见活动类型起草响应:分诊、调查、升级、等待信息和解决
适用场景: CSM Agent 需要记录案例活动、向客户更新进展、创建内部交接记录,或确定并记录案例解决的后续步骤时。
前提条件
- 角色:
sn_customerservice_agent、sn_customerservice_manager或csm_admin - 访问权限: 对
sn_customerservice_case、sys_journal_field具有读写权限;对sn_customerservice_task、interaction、kb_knowledge、sn_customerservice_sla具有读取权限 - 知识: 熟悉 CSM 案例状态、工作记录规范和组织的案例处理流程
操作流程
步骤 1:获取当前案例状态和详细信息
获取案例,以了解当前情况以及需要哪种类型的活动响应。
使用 MCP(Claude Code/Desktop):
Tool: SN-Get-Record
Parameters:
table_name: sn_customerservice_case
sys_id: [case_sys_id]
fields: number,short_description,description,state,priority,urgency,impact,category,subcategory,contact,account,consumer,product,asset,assigned_to,assignment_group,opened_at,opened_by,resolved_at,resolution_code,resolution_notes,escalation,severity,sla_due,contact_type,reassignment_count,reopen_count,cause,close_notes
使用 REST API:
GET /api/now/table/sn_customerservice_case/{case_sys_id}?sysparm_fields=number,short_description,description,state,priority,urgency,impact,category,subcategory,contact,account,consumer,product,asset,assigned_to,assignment_group,opened_at,resolved_at,resolution_code,resolution_notes,escalation,severity,sla_due,contact_type,reassignment_count,reopen_count,cause,close_notes&sysparm_display_value=true
步骤 2:查看近期活动历史
检查案例中已完成的工作,避免重复记录信息,并在此前工作基础上继续处理。
使用 MCP:
Tool: SN-Query-Table
Parameters:
table_name: sys_journal_field
query: element_id=<case_sys_id>^element=work_notes^ORelement=comments^ORDERBYDESCsys_created_on
fields: sys_id,element,value,sys_created_on,sys_created_by
limit: 20
使用 REST API:
GET /api/now/table/sys_journal_field?sysparm_query=element_id=<case_sys_id>^element=work_notes^ORelement=comments^ORDERBYDESCsys_created_on&sysparm_fields=element,value,sys_created_on,sys_created_by&sysparm_limit=20
步骤 3:检查相关任务及其状态
了解可能影响案例活动的子任务状态。
使用 MCP:
Tool: SN-Query-Table
Parameters:
table_name: sn_customerservice_task
query: parent=<case_sys_id>^ORDERBYDESCsys_created_on
fields: sys_id,number,short_description,state,assigned_to,assignment_group,priority,opened_at,closed_at,work_notes
limit: 10
使用 REST API:
GET /api/now/table/sn_customerservice_task?sysparm_query=parent=<case_sys_id>^ORDERBYDESCsys_created_on&sysparm_fields=number,short_description,state,assigned_to,assignment_group,priority,opened_at,closed_at&sysparm_limit=10&sysparm_display_value=true
步骤 4:检查 SLA 状态和截止时间
根据 SLA 合规情况判断紧急程度,以调整响应优先级。
使用 MCP:
Tool: SN-Query-Table
Parameters:
table_name: sn_customerservice_sla
query: task=<case_sys_id>^stage!=cancelled
fields: sla,stage,has_breached,planned_end_time,percentage,business_percentage
limit: 5
使用 REST API:
GET /api/now/table/sn_customerservice_sla?sysparm_query=task=<case_sys_id>^stage!=cancelled&sysparm_fields=sla,stage,has_breached,planned_end_time,percentage,business_percentage&sysparm_limit=5&sysparm_display_value=true
步骤 5:查看近期客户沟通内容
查看最新的客户沟通内容,了解客户的期望。
使用 MCP:
Tool: SN-Query-Table
Parameters:
table_name: sys_email
query: instance=<case_sys_id>^type=received^ORDERBYDESCsys_created_on
fields: sys_id,subject,body_text,sys_created_on
limit: 3
使用 REST API:
GET /api/now/table/sys_email?sysparm_query=instance=<case_sys_id>^type=received^ORDERBYDESCsys_created_on&sysparm_fields=subject,body_text,sys_created_on&sysparm_limit=3
步骤 6:搜索相关知识
查找可为活动响应提供解决方案或参考资料的知识库文章。
使用 MCP:
Tool: SN-Query-Table
Parameters:
query: workflow_state=published^short_descriptionLIKE<key_terms>
table_name: kb_knowledge
limit: 3
使用 REST API:
GET /api/now/table/kb_knowledge?sysparm_query=workflow_state=published^short_descriptionLIKE<key_terms>&sysparm_fields=number,short_description,text&sysparm_limit=3&sysparm_display_value=true
步骤 7:按类型生成活动响应
根据案例状态和上下文,生成合适的活动响应。
类型 A:初步分诊工作记录
当案例刚分配,需要进行初步评估时:
=== WORK NOTE: INITIAL TRIAGE ===
Case [number] received and reviewed.
TRIAGE ASSESSMENT:
- Category: [category] / [subcategory]
- Impact: [impact] | Urgency: [urgency] | Priority: [priority]
- Product/Service: [product]
- Customer Tier: [tier]
- Contact Method: [contact_type]
INITIAL ANALYSIS:
[Summary of the reported issue based on description]
PRELIMINARY FINDINGS:
- [finding_1 based on case details]
- [finding_2 based on KB article match]
- [finding_3 based on similar cases]
NEXT STEPS:
1. [next_action_1 - e.g., "Request additional diagnostics from customer"]
2. [next_action_2 - e.g., "Check known issue KB0012345"]
3. [next_action_3 - e.g., "Engage product team if issue persists"]
SLA: [Response SLA target] | Expected follow-up by: [date]
类型 B:调查进度工作记录
记录持续进行的调查进展时:
=== WORK NOTE: INVESTIGATION UPDATE ===
Case [number] - Investigation in progress.
ACTIONS TAKEN:
1. [action_1 - e.g., "Reviewed application logs for the reported time window"]
2. [action_2 - e.g., "Confirmed issue is reproducible in test environment"]
3. [action_3 - e.g., "Consulted KB0034567 - partial match to known issue"]
FINDINGS:
- [finding_1]
- [finding_2]
CURRENT STATUS: [In Progress / Awaiting vendor response / Testing fix]
BLOCKERS: [None / Waiting for customer info / Pending vendor patch]
NEXT STEPS:
1. [next_action_1]
2. [next_action_2]
ESTIMATED RESOLUTION: [date or timeframe]
类型 C:面向客户的状态更新
通过附加评论向客户更新进展时:
=== ADDITIONAL COMMENT (CUSTOMER-VISIBLE) ===
Hello [contact_name],
Thank you for your patience regarding case [number].
Here is the latest update on your request:
- [status_summary in customer-friendly language]
- [what has been done]
- [what is happening next]
[If waiting for customer input:]
To help us proceed, could you please provide:
1. [requested_info_1]
2. [requested_info_2]
We expect to have [next update / resolution] by [date]. If you have
any questions in the meantime, please reply to this message.
Best regards,
[agent_name]
类型 D:升级工作记录
升级案例时:
=== WORK NOTE: ESCALATION ===
Case [number] escalated to [escalation_group] - Level [escalation_level].
ESCALATION REASON:
[reason - e.g., "Customer impact is broader than initially assessed" or
"Issue requires specialized product engineering knowledge"]
CASE HISTORY SUMMARY:
- Opened: [opened_at] | Age: [days] days
- Previous Assignment: [previous_group]
- Actions Taken: [summary of investigation to date]
- Customer Communications: [count] ([last_contact_date])
- SLA Status: [on_track/at_risk/breached]
WHAT HAS BEEN TRIED:
1. [action_1 and result]
2. [action_2 and result]
3. [action_3 and result]
WHAT IS NEEDED FROM ESCALATION TEAM:
1. [specific_ask_1]
2. [specific_ask_2]
CUSTOMER EXPECTATIONS: [what the customer expects and by when]
类型 E:等待信息工作记录
案例正在等待客户回复时:
=== WORK NOTE: AWAITING CUSTOMER INFO ===
Case [number] moved to Awaiting Info state.
INFORMATION REQUESTED:
1. [info_item_1] - Needed to [reason]
2. [info_item_2] - Needed to [reason]
COMMUNICATION SENT: [date] via [email/chat/phone]
FOLLOW-UP SCHEDULED: [date] if no response received
AUTO-CLOSE POLICY: Case will be auto-resolved after [X] days of
inactivity per policy [policy_reference].
RESUME ACTIONS (when customer responds):
1. [action_1]
2. [action_2]
工具使用
MCP 工具参考
| 工具 | 使用时机 |
|---|---|
SN-Natural-Language-Search | 查找与案例活动相关的知识库文章 |
SN-Query-Table | 查询日志条目、任务、SLA 数据和电子邮件 |
SN-Get-Record | 获取案例记录或特定的相关记录 |
REST API 参考
| 端点 | 方法 | 用途 |
|---|---|---|
/api/now/table/sn_customerservice_case | GET | 案例详情和状态 |
/api/now/table/sys_journal_field | GET | 工作记录和评论历史 |
/api/now/table/sn_customerservice_task | GET | 相关任务状态 |
/api/now/table/interaction | GET | 交互历史 |
/api/now/table/sys_email | GET | 电子邮件沟通历史 |
/api/now/table/kb_knowledge | GET | 知识库文章 |
/api/now/table/sn_customerservice_sla | GET | SLA 合规数据 |
最佳实践
- 区分内部和外部记录: 内部文档始终使用工作记录,面向客户的更新使用附加评论;切勿混用两者
- 工作记录应具体明确: 记录准确的时间戳、错误消息、日志引用和配置值,避免使用含糊的描述
- 记录未能解决问题的尝试: 记录已调查并排除的事项,而不只是有效的方法;这样可以避免后续 Agent 重复相同步骤
- 注明后续步骤: 每条工作记录都应以明确的后续步骤结尾,以便任何 Agent 都能接手案例
- 引用知识库文章: 如果查阅了知识库文章,请注明编号以及文章是否适用
- 采用一致的格式: 工作记录应遵循结构化模板,便于交接时快速浏览
- 记录操作时间: 注明操作执行时间,尤其是为了跟踪 SLA
- 设置跟进日期: 等待信息时,务必设置明确的跟进日期,并在工作记录中注明
- 为升级提供摘要: 升级时,应提供完整的历史摘要,避免接手团队必须阅读所有先前记录
故障排除
“无法确定案例状态”
原因: 案例状态字段可能使用数值或自定义状态
解决方案: 使用 sysparm_display_value=true 查询,以获取易读的状态名称。标准 CSM 状态:1=新建,2=处理中,3=挂起,6=已解决,7=已关闭。请检查你的实例是否有自定义状态值。
“工作记录未保存”
原因: ACL 限制或必填字段要求
解决方案: 确认 Agent 拥有 sn_customerservice_agent 角色,并对 sys_journal_field 具有写入权限。检查是否有业务规则要求在添加日志条目之前填写特定字段。
“SLA 信息不可用”
原因: 可能未为此案例类型配置 SLA 定义
解决方案: 检查 contract_sla 表,确认是否有符合案例优先级和分配组的 SLA 定义。如果不存在 SLA,请在工作记录中注明,并按照组织指南设定响应目标。
“未找到相关任务”
原因: 任务可能通过其他关系或父级字段关联
解决方案: 尝试使用 parent.number=[case_number] 查询,或检查 task_rel_task 表,查找案例与任务之间的 M2M 关系。
示例
示例 1:网络连接案例的初步分诊
场景: 为 Gold 等级客户分配了一个新的 P2 案例,问题是网络连接间歇性中断。
步骤 1 - 获取案例:
Tool: SN-Query-Table
Parameters:
table_name: sn_customerservice_case
query: number=CS0085001
fields: sys_id,number,short_description,description,state,priority,category,subcategory,product,contact,account,assigned_to,opened_at,sla_due
limit: 1
步骤 2 - 搜索知识库:
Tool: SN-Query-Table
Parameters:
query: workflow_state=published^123TEXTQUERY321=intermittent network connectivity drops VPN
table_name: kb_knowledge
limit: 3
生成的工作记录:
INITIAL TRIAGE - CS0085001
Case reviewed. Customer reports intermittent network drops affecting
VPN connectivity, occurring 3-4 times daily since March 16.
TRIAGE ASSESSMENT:
- Category: Network / Connectivity
- Product: Enterprise VPN Gateway
- Customer: Meridian Corp (Gold Tier)
- Priority: P2 | Impact: Medium | Urgency: High
PRELIMINARY FINDINGS:
- KB0019876 describes similar VPN timeout issues related to MTU
settings after firmware update 4.2.1
- Customer's description matches pattern of MTU fragmentation
- No current known outages for VPN Gateway service
NEXT STEPS:
1. Request VPN client logs from customer for affected timeframe
2. Check if customer's VPN Gateway is running firmware 4.2.1
3. If firmware matches, apply KB0019876 MTU fix procedure
SLA: Response due by Mar 19 14:00 | Follow-up scheduled: Mar 19 10:00
示例 2:升级文档
场景: 初步调查未能解决问题,需要升级案例。
步骤 1 - 获取案例和历史记录:
Tool: SN-Get-Record
Parameters:
table_name: sn_customerservice_case
sys_id: [case_sys_id]
fields: number,short_description,state,priority,escalation,assigned_to,assignment_group,opened_at,reassignment_count
Tool: SN-Query-Table
Parameters:
table_name: sys_journal_field
query: element_id=<sys_id>^element=work_notes^ORDERBYDESCsys_created_on
fields: value,sys_created_on,sys_created_by
limit: 10
生成的工作记录:
ESCALATION - CS0085001
Escalating to Platform Engineering team - Level 2.
ESCALATION REASON:
Standard MTU fix (KB0019876) did not resolve the issue. Customer
continues to experience VPN drops. Root cause appears to be in the
gateway firmware requiring engineering investigation.
CASE SUMMARY (for receiving team):
- Opened: Mar 16 | Age: 3 days | Previous Group: Network Support
- Customer: Meridian Corp (Gold) | Contact: James Wright
- Issue: Intermittent VPN drops, 3-4x daily since Mar 16
WHAT HAS BEEN TRIED:
1. Applied MTU adjustment per KB0019876 - No improvement
2. Verified firmware version 4.2.1 - Confirmed current
3. Reviewed VPN client logs - Timeout errors at gateway level
4. Tested with alternate VPN profile - Same issue
WHAT IS NEEDED:
1. Gateway-level packet capture during failure window
2. Firmware team review of timeout handling in 4.2.1
3. Potential hotfix or rollback recommendation
CUSTOMER EXPECTATIONS: Resolution by Mar 21. Customer has a
board presentation on Mar 22 requiring stable VPN access.
SLA Status: On track (resolution SLA due Mar 23).
相关技能
csm/case-summarization- 生成活动记录前,汇总完整的案例上下文csm/email-recommendation- 根据活动生成客户电子邮件更新csm/sentiment-analysis- 评估客户情绪,以调整沟通语气csm/resolution-notes- 关闭案例时生成最终解决方案文档csm/chat-recommendation- 生成实时客户更新所需的聊天回复