0

最近在我们的网站上,ooyala 的 v1 api 停止允许我们与 ooyala 的后台同步。我们的网站建立在 Drupal 第 6 版上。所以我升级到最新的第 6 版 Ooyala 模块并对我们的本地代码进行了更改。现在我可以使用 drupal_http_request() 来同步标题,但它不会将描述或标签同步到 Ooyala 的背景。下面是我正在使用的功能。

     $request_test = video_update_ooyala_info($embed_code, $node->title, $node->field_video_description[0]['value']);

        drupal_set_message("-request= 
        ".print($request_test)." 
        -Function:  </br>--".var_dump($embed_code)." 
        </br>--Title: ".$node->title." 
        </br>--Description: ".$node->field_video_description[0]['value']. "
        </br>--Failed to sync the title and description to Ooyala. Please try saving again.", 'warning');

    }

    function video_update_ooyala_info($embedcode, $title, $description) {
  $ooyala_api = new OoyalaDrupalWrapper('sksnuKYFA0t8Lxs0FT2WmgIsftVKRtLVtflJSWP8', '52OW06CJSttaayZSm0kW3ZoSKvxA.QXRId');
  $request = $ooyala_api->signed_params(
    array(
      'embedCode' => $embedcode,
      'title' => $title,
      'description' => $description,
    )
  );
 $request_headers = array('Content-Type' => 'application/x-www-form-urlencoded');
  $request_method = 'patch';
  $response = drupal_http_request("http://api.ooyala.com/v2/assets?xzOTEzYjpmjnBNLeBPSd53PVAAmSur9g",$request_headers,$request_method,$request);

  $success = FALSE;
  if ($response->data) {
    $success = ($response->data == '200');
  }

  return $response;
}

这是我得到的输出消息。

-请求= -功能:

--Title:测试标题 --Description:测试描述 --无法将标题和描述同步到 Ooyala。请再次尝试保存。

所以标题和描述附加在同一个http请求上,嵌入代码是正确的。标题确实与外景同步,但描述不同步。从 ooyala 返回的请求是空的。不知道发生了什么。任何帮助我指出正确的方向将不胜感激。

同样在错误日志中,我从 foreach 语句的 ooyala.api 收到此错误。

在第 316 行的 /sites/all/modules/ooyala/includes/ooyala.api.inc 中为 foreach() 提供的参数无效。

    function ooyala_api_video_label_add($embed_code, $labels) {
  $ooyala_api = new OoyalaDrupalWrapper();
 foreach ($embed_code as $embed) { 
    $ooyala_api->api->request(POST, "/v2/assets/$embed/labels", json_encode(array_values($labels)));
  }
}
4

1 回答 1

0

在处理这个 Ooyala 数周后,确认 drupal 模块中存在错误。这是与 Lullabot 合作编写的。

他们将在下一次更新中发布它。6.x-2.beta5

于 2013-08-22T14:32:47.050 回答