【发布时间】:2014-12-09 22:52:51
【问题描述】:
我目前正在使用适用于 SWF 的 PHP SDK。我使用以下方法成功拉取决策任务:
$result = $client->pollForDecisionTask(array(
"domain" => "test",
"taskList" => array(
"name" => "mainTaskList"
),
"identify" => "default",
"maximumPageSize" => 50,
"reverseOrder" => true
));
$activity_type_version = "1.0";
$task_token = $result["taskToken"];
$run_id = $result["workflowExecution"]["runId"];
$last_event = $result["events"][0]["eventId"];
if($last_event == "3"){
$activity_type_name = "SlamStart";
}
然后我尝试使用以下内容注册我已完成的决策任务:
$result = $client->respondDecisionTaskCompleted(array(
"taskToken" => $task_token,
"decisions" => array(
"decisionType" => "ScheduleActivityTask",
"scheduleActivityTaskDecisionAttributes" => array(
"activityType" => array(
"name" => $activity_type_name,
"version" => $activity_type_version
),
"activityId" => "1",
"control" => "something",
"scheduleToCloseTimeout" => "300",
"scheduleToStartTimeout" => "300",
"startToCloseTimeout" => "300",
"heartbeatTimeout" => "300",
"taskList" => array(
"name" => "mainTaskList"
),
"input" => "test input"
)
)
));
echo "respondDecisionTaskCompleted call went through";
上述内容永远不会通过,并且永远不会到达带有echo 的最后一行。
为什么会这样?
【问题讨论】:
标签: amazon-web-services amazon-swf aws-php-sdk