subhim Ответов: 0

Facebook advideos upload, проблема при загрузке video_file_chunk


Всем Привет,
Facebook Facebook Я пытаюсь загрузить рекламное видео на facebook, используя шаги, приведенные ниже url-адрес и Facebook SDK для Dot.NET.

https://developers.facebook.com/docs/marketing-api/advideo/v3.2[^]

мой код:

var fbClient = GetFB();
                FileStream fs = new FileStream("E:\\cnp.mp4",
                                   FileMode.Open,
                                   FileAccess.Read);
                BinaryReader br = new BinaryReader(fs);

                dynamic parameters = new System.Dynamic.ExpandoObject();
                parameters.upload_phase = "start";
                Console.WriteLine("file_size: {0}", fs.Length);
                parameters.file_size = fs.Length;
                dynamic result = fbClient.Post("/" + FBAccountID + "/advideos", parameters);
                Console.WriteLine("upload_session_id: {0}", (string)result["upload_session_id"]);
                string upload_session_id = (string)result["upload_session_id"];
                Console.WriteLine("Video Id: {0}", (string)result["video_id"]);
                Console.WriteLine("start_offset: {0}", (string)result["start_offset"]);
                Console.WriteLine("end_offset: {0}", (string)result["end_offset"]);

                int startOffset = 0;
                int endOffset = int.Parse((string)result["end_offset"]);

                while (endOffset > startOffset)
                {
                    byte[] buff = new byte[endOffset - startOffset];
                    buff = br.ReadBytes((endOffset - startOffset));

                    dynamic transfer = new System.Dynamic.ExpandoObject();
                    transfer.upload_phase = "transfer";
                    transfer.upload_session_id = upload_session_id;
                    transfer.start_offset = startOffset;
                    transfer.video_file_chunk = buff;
                    //--Getting Error

                    dynamic TransferResult = fbClient.Post("/" + FBAccountID + "/advideos", transfer);
                    Console.WriteLine("start_offset: {0}", (string)TransferResult["start_offset"]);
                    Console.WriteLine("end_offset: {0}", (string)TransferResult["end_offset"]);
                    startOffset = int.Parse((string)TransferResult["end_offset"]);
                    endOffset = int.Parse((string)TransferResult["end_offset"]);
                }

                dynamic finish = new System.Dynamic.ExpandoObject();
                finish.upload_phase = "finish";
                finish.upload_session_id = upload_session_id;
                finish.title = "Video title";
                dynamic result2 = fbClient.Post("/" + FBAccountID + "/advideos", finish);
                Console.WriteLine("success: {0}", (string)result2["success"]);
                if ((string)result2["success"] == "true")
                {

                }


Первый запрос на запуск был успешным, и мы получаем Видеоид и загружаем SessionID, а второй запрос терпит неудачу с ошибкой


Фейсбук.FacebookOAuthException: '(OAuthException - #2) служба временно недоступна'

Ошибка Название Пользователя: "Тайм-Аут Загрузки Видео"

Сообщение пользователя об ошибке: "время загрузки вашего видео истекло до того, как оно было завершено. Вероятно, это происходит из-за медленного сетевого подключения или из-за того, что видео, которое вы пытаетесь загрузить, слишком велико. Пожалуйста, попробуйте еще раз."

Фейсбук.Произошло исключение FacebookOAuthException
HResult=0x80131500
Message=(OAuthException - #2) служба временно недоступна
Источник=Facebook
Трассировка стека:
на Facebook.FacebookClient.ProcessResponse(HttpHelper httpHelper, String responseString, Type resultType, Boolean containsEtag, IList`1 batchEtags)
на Facebook.FacebookClient.АПИ(HttpMethod httpMethod, строка пути, параметров объекта, параметром resulttype, имеющим значение тип )
на Facebook.FacebookClient.Post(путь к строке, Параметры объекта)
в WebApplication1._По умолчанию.Facebook() in C:\Users\suneel.CLICKANDPLEDGE\documents\visual studio 2017\Projects\TestConsoleApp\WebApplication1\Default.aspx.cs:строка 132
в WebApplication1._По умолчанию.Page_Load(отправитель объекта, EventArgs e) in C:\Users\suneel.CLICKANDPLEDGE\documents\visual studio 2017\Projects\TestConsoleApp\WebApplication1\Default.aspx.cs:строка 16


Что я уже пробовал:

Я передаю байт[] в video_file_chunk. Согласно документации, он говорит двоичный файл.

Я попробовал манипулировать
video_file_chunk
но получаю ту же ошибку,

Заранее спасибо за любую помощь.

0 Ответов