2012-04-25 17 views
2

C#SDKを使用してFacebookオープングラフに動画をアップロードしようとしています。動画はうまくアップロードされているように見えますが、アクティビティのIDが表示されますが、サンプルのメタデータだけが表示されます。ユーザーのためにグラフを開くアクションを公開することができることと、ステップ3で、それに対応する接続​​オブジェクト型を定義した前Facebook Open Graph APIにパラメータを渡す

、あなたが今作成する必要があります。

は少し掘削した後、私はこれを見つけましたOpen Graphメタタグを使用してこのオブジェクトを表す公開アクセス可能なWebページ。このオブジェクトページを作成したら、Graph APIを使用してアクションをパブリッシュできます。

これはクライアントサイドのアプリなので、私はFacebookを参照できるウェブページを持っていません。どうすれば適切なパラメータを渡すことができますか?

ここに私のコードは次のとおりです。

var parameters = new Dictionary<string, object>(); 
parameters["source"] = new FacebookMediaObject { ContentType = "video/mpeg", FileName = "video.mpeg" }.SetValue(File.ReadAllBytes(@"D:\sample video.MP4")); 
parameters["og:title"] = "Sample video"; 
parameters["title"] = "Sample video"; 
parameters["og:description"] = "Test description"; 
parameters["highlight"] = "http://samples.ogp.me/287287444686523"; // If I don't put this, the upload fails 
fb.PostAsync("/me/myobjectname:share", parameters); 

ありがとう!

答えて

0

バージョン6の場合は、あなたが行うことができます:

var fb = new FacebookClient(accessToken); 
string attachementPath = @"C:\image.jpg"; 

using (var stream = File.OpenRead(attachementPath)) 
{ 
    dynamic result = fb.Post("me/photos", 
           new 
            { 
             message = "upload using Facebook C# SDK", 
             file = new FacebookMediaStream 
               { 
                ContentType = "image/jpg", 
                FileName = Path.GetFileName(attachementPath) 
               }.SetValue(stream) 
            }); 
} 

詳細here

+0

私はSDKのバージョン6を使用しています。あなたのコードはOpen Graph APIのカスタムオブジェクトを活用しません。それは私が把握しようとしているものです。 –