Posts tagged with restfb

public static void uploadVideo(String token, String urlVideo) {     FacebookClient fbClient = new DefaultFacebookClient(token, Version.LATEST);     long scheduledTime = System.currentTimeMillis() / 1000 + 30 * 60;     FacebookType scheduledPostResponse = fbClient.publish("me/videos", FacebookType.class,             Parameter.with("file_url", urlVideo),             Parameter.with("published", false),             Parameter.with("scheduled_publish_time", scheduledTime)); 

I want to post on the site with the condition that I schedule a posting appointment. I used restFB to successfully send the request and receive the ID back, but until now the post does not appear on the page

I have set up application development mode

i have been trying to publish videos on a facebook page's story, but i havent been successful, i have tried using their apis and integrating with restfb as well, As for restfb, i was able to post on a facebook page's timeline, but not on their story, i have included the code showing my implementation using the facebook api and rest fb, thanks for checking out, i appreciate any assistance

public void postVideo(String contentUrl) throws MalformedURLException, FileNotFoundException, FacebookOAuthException {         Users loggedInUser = userService.getCurrentUser();         Socials social = socialsService.getSocialByPlatform(SocialPlatform.FACEBOOK);         UserSocials userSocial= userSocialsService.findUserSocial(loggedInUser, social).orElseThrow(()-> new UserException("User social not found"));         FacebookClient defaultFacebookClient = new DefaultFacebookClient(userSocial.getAccessToken(), Version.LATEST);         File videoFile = new File("uploads/" + contentUrl);         if (!videoFile.exists()) {             throw new FileNotFoundException("Video file not found at specified path.");         }         FileInputStream fileInputStream = new FileInputStream(videoFile); //       Implementation using facebook api //        MultiValueMap<String, Object> requestBody = new LinkedMultiValueMap<>(); //        requestBody.add("file", new FileSystemResource("uploads/" + contentUrl)); //        HttpHeaders headers = new HttpHeaders(); //        headers.setContentType(MediaType.MULTIPART_FORM_DATA); //        FBVideoStoryStartResponse fbVideoStoryStartResponse = webClient.post() //                .uri("https://graph.facebook.com/v18.0/"+userSocial.getSocialUserId()+"/video_stories", uriBuilder -> uriBuilder //                        .queryParam("upload_phase", "start") //                        .build()) //                .retrieve() //                .bodyToMono(FBVideoStoryStartResponse.class) //                .block(); //        System.out.println(fbVideoStoryStartResponse); //        if(fbVideoStoryStartResponse != null){ //            FBVideoStoryUploadStatus fbVideoStoryUploadStatus = webClient.post() //                    .uri("https://rupload.facebook.com/video-upload/v18.0/" + fbVideoStoryStartResponse.getVideoId()) //                    .headers(httpHeaders -> httpHeaders.addAll(headers)) // Add the headers to the request //                    .bodyValue(requestBody) //                    .retrieve() //                    .bodyToMono(FBVideoStoryUploadStatus.class) //                    .block(); //            System.out.println(fbVideoStoryUploadStatus); //            assert fbVideoStoryUploadStatus != null; //            if(fbVideoStoryUploadStatus.isSuccess()){ //                FBVideoStoryFinishResponse fbVideoStoryFinishResponse = webClient.post() //                        .uri("https://graph.facebook.com/v18.0/"+userSocial.getSocialUserId()+"/video_stories", uriBuilder -> uriBuilder //                                .queryParam("video_id", fbVideoStoryStartResponse.getVideoId()) //                                .queryParam("upload_phase", "finish") //                                .build()) //                        .retrieve() //                        .bodyToMono(FBVideoStoryFinishResponse.class) //                        .block(); //                System.out.println(fbVideoStoryFinishResponse); //            } //        } //      Implementation using restfb         FBVideoStoryStartResponse fbVideoStoryStartResponse1 = defaultFacebookClient.publish(userSocial.getSocialUserId() + "/video_stories", FBVideoStoryStartResponse.class,                 Parameter.with("upload_phase", "start"));         String videoUploadID = fbVideoStoryStartResponse1.getVideoId();         System.out.println(videoUploadID);         GraphResponse graphResponse = defaultFacebookClient.publish(videoUploadID, GraphResponse.class, BinaryAttachment.with(videoFile.getName(), fileInputStream));         GraphResponse graphResponse1 = defaultFacebookClient.publish(userSocial.getSocialUserId() + "/video_stories", GraphResponse.class,                 Parameter.with("video_id", videoUploadID),                  Parameter.with("upload_phase", "finish"),                  Parameter.with("video_state", "PUBLISHED"),                 Parameter.with("description", "A short description text"));             try {                 fileInputStream.close();             } catch (IOException e) {                 throw new RuntimeException(e);             } } 

So using restfb, i get the error "There is a problem uploading your video, Please try again with another file" and i have tried with multiple files below a minute but still the same result.