我正在尝试使用php-facebook-sdk并在curl Facebook API的帮助下创建广告。
我已经使用curl上传了我的视频,它返回了一个id。现在,该视频ID将用于添加adcreative,但是当我提交我的adcreative时,它会返回此错误:
object(stdClass)#568 (1) {
["error"]=>
object(stdClass)#563 (8) {
["message"]=>
string(17) "Invalid parameter"
["type"]=>
string(14) "OAuthException"
["code"]=>
int(100)
["error_subcode"]=>
int(2013004)
["is_transient"]=>
bool(false)
["error_user_title"]=>
string(28) "Invalid video in ad creative"
["error_user_msg"]=>
string(144) "Unable to use the video in an ad creative. Video id 191,520,185,101,173 might not be id of a video, or you might not have permission to see it. "
["fbtrace_id"]=>
string(11) "HSK5VFCiP6u"
}
}
返回的视频ID是191520185101173。
这是我的代码:
$object_story_spec = array('page_id' => $page_id,'video_data' => array('video_id' => $video_id,'message' => $ad_message,'image_url' => $image_url,'title' => $ad_header,'call_to_action' => array('type' => 'LEARN_MORE', 'value' => array('link' => $ad_redirect))));
$params = array(
'url_tags' => 'utm_source=facebook',
'image_url' => $image_url,
'object_story_spec' => json_encode($object_story_spec),
'access_token' => $pass_token,
);
我也尝试将该ID直接放入代码(静态),如下所示:
'video_id' => '191520185101173',
通过这样做,它将运行并创建adcreative,但不知何故,当我尝试动态使用视频ID时,它会返回该错误。
有什么建议?
使用此代码来解决您的问题:
video.remote_create()
video.waitUntilEncodingReady()