如何在Twilio Taskrouter工作流上配置skip_

如何在Twilio Taskrouter工作流上配置skip_,twilio,twilio-api,twilio-php,Twilio,Twilio Api,Twilio Php,我正在开发Twilio任务路由器 我无法在控制台上配置skip_if并更新API。 我尝试更新API,JSON的响应已跳过 但是,控制台JSON没有skip_if 如何配置skip_if 谢谢你,菲尔纳什。 我的代码如下 public function test_retrieveWorkflow() { $account_sid = "ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; $auth_token = "xxxxx

我正在开发Twilio任务路由器

我无法在控制台上配置skip_if并更新API。

我尝试更新API,JSON的响应已跳过

但是,控制台JSON没有skip_if

如何配置skip_if

谢谢你,菲尔纳什。 我的代码如下

   public function test_retrieveWorkflow()
    {
        $account_sid = "ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
        $auth_token = "xxxxxxxxxxxxxxx";
        $client = new Client($account_sid, $auth_token);

        $workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
        $workflow_sid = 'WWxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
        $workflow = $client->taskrouter
            ->workspaces($workspace_sid)
            ->workflows($workflow_sid)
            ->fetch();

        $configurations = json_decode($workflow->configuration, true);
        $filters = $configurations['task_routing']['filters'];
        foreach ($filters as &$filter) {
            foreach ($filter['targets'] as &$target) {
                $target['skip_if'] = 'workers.available == 0';
            }
        }

        $configurations['task_routing']['filters'] = $filters;
        $configurations = json_encode($configurations);
        $workflow = $workflow->update(['configuration' => $configurations]);
        var_dump($workflow);
    }
对不起,我忘了写预期结果。 之前,执行上述代码

{
"task_routing": {
    "filters": [
        {
            "targets": [
                {
                    "queue": "WQyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy",
                    "expression": "task.email==worker.email",
                    "timeout": "10"
                },
                {
                ...
                }
            ],
            "filter_friendly_name": "filter by email",
            "expression": "1==1"
        }
    ],
    "default_filter": {
        "queue": "WQxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    }
}
之后,执行上述代码,结果应该是JSON

{
    "task_routing": {
        "filters": [
            {
                "targets": [
                    {
                        "queue": "WQyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy",
                        "expression": "task.email==worker.email",
                        "timeout": "10",
                        "skip_if": "workers.available == 0"
                    },
                    {
                    ...
                    }
                ],
                "filter_friendly_name": "filter by email",
                "expression": "1==1"
            }
        ],
        "default_filter": {
            "queue": "WQxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
        }
    }
}

但是,我的twilio控制台显示在执行JSON之前

这里是任务路由器PM。我已经更新了此功能的文档,它将回答您的所有问题:


它当前不会显示在控制台的任一视图中-当您说我无法配置skip_时,请参阅文档中的说明。如果在控制台上,您试图在哪里配置它?它应该在工作流的目标中。您到底尝试了什么?你能包括你正在使用的代码和你期望的结果吗?谢谢@RobDiMarco。我试图配置任务路由>过滤器>目标>跳过如果。谢谢,我了解这些功能;