如何通过API更新Twilio中的坐席状态(可用/忙碌/不可用)?
如何同步Twilio坐席状态到账户端
Twilio的坐席状态管理依赖TaskRouter服务,坐席对应TaskRouter中的Worker资源,你需要通过TaskRouter的Worker API来更新状态,具体步骤如下:
- 先确认你的坐席已在TaskRouter Workspace中创建为
Worker,每个Worker关联到对应的Workflow和Queue。 - 在Twilio控制台的TaskRouter Workspace中,预先创建所需的状态活动(Activity),比如「在线」「离线」「忙碌」等,每个Activity会生成唯一的
ActivitySid。 - 使用TaskRouter的Worker Update API修改状态,端点为:
POST /v1/Workspaces/{WorkspaceSid}/Workers/{WorkerSid}
示例代码(Python)
from twilio.rest import Client # 替换为你的Twilio账户信息 account_sid = 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' auth_token = 'your_auth_token' workspace_sid = 'WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' worker_sid = 'WKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' # 替换为目标状态对应的ActivitySid target_activity_sid = 'WAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' client = Client(account_sid, auth_token) # 更新Worker状态 updated_worker = client.taskrouter.workspaces(workspace_sid)\ .workers(worker_sid)\ .update(activity_sid=target_activity_sid) print(f"坐席状态已同步为: {updated_worker.activity_name}")
关键注意点
- 确保你的API密钥拥有TaskRouter的Worker修改权限;
- 必须使用
ActivitySid指定状态,不能直接用状态名称; - 若需添加自定义状态属性,可通过
attributes参数传入JSON字符串,例如:attributes='{"custom_status": "午休"}'
内容的提问来源于stack exchange,提问作者haris javed
相关产品推荐
相关产品推荐

