type
должно быть "видео", а не "вспышка". Вот массив параметров, который в моих тестах создал воспроизводимое видео:
array(
'type'=>'video',
'source'=>'http://www.hackerdude.com/channels-test/swfscout_VideoSample.swf',
'picture'=> 'http://fbrell.com/f8.jpg',
'name'=> 'Facebook Dialogs',
'caption'=> 'Reference Documentation',
'description'=> 'Using Dialogs to interact with users.',
);
Обратите внимание, что здесь нет атрибута link
, потому что, как мне кажется, в API facebook на данный момент есть ошибка, из-за которой, если вы предоставите ссылку, ваше видео не будет вставлено.
Теория ошибок, подкрепленная тем, что JS SDK действительно принимает ссылку и создает воспроизводимое видео, вы можете перейти на этот метод публикации, если это возможно, с такими параметрами:
FB.ui({
method:'feed',
type: 'video',
name: 'Facebook Dialogs',
link: 'https://developers.facebook.com/docs/reference/dialogs/',
picture: 'http://fbrell.com/f8.jpg',
caption: 'Reference Documentation',
source: 'http://www.hackerdude.com/channels-test/swfscout_VideoSample.swf',
description: 'Using Dialogs to interact with users.'
});
Обходной путь
Кажется, что встраивание работает нормально, если вы публикуете ссылку с правильными метатегами opengraph для встраивания видео, вот пример:
ссылка для совместного использования (видео предоставлено вам YouTube)
<html>
<head>
<title>Fly, you fools!</title>
<meta property="og:title" content="Fly, you fools!" />
<meta property="og:type" content="website"/>
<meta property="og:description" content="Content for Description" />
<meta property="og:image" content="http://i2.ytimg.com/vi/meOCdyS7ORE/mqdefault.jpg" />
<meta property="og:site_name" content="Content for caption"/>
<meta property="og:video" content="http://www.youtube.com/v/meOCdyS7ORE?version=3&autohide=1">
<meta property="og:video:type" content="application/x-shockwave-flash">
<meta property="og:video:width" content="640">
<meta property="og:video:height" content="360">
</head>
<body>
<script>
window.location = 'http://disney.com'; // redirecting users who's clicking on the link, wont affect crawlers since its in js.
</script>
</body>
</html>
вызов php sdk, чтобы поделиться им
$this->facebook->api('/me/feed', 'post', array(
'type' => 'link',
'link' => 'http://.../', // put the html file's location here
));
25.07.2012