-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathExample.java
126 lines (94 loc) · 4.48 KB
/
Example.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
import facebook.api.factory.FactoryFacebookLive;
import facebook.api.interfaces.IFacebookClient;
import facebook.bean.BaseLiveVideoResponseBean;
import facebook.bean.CreateLiveVideoScheduledRequestBean;
import facebook.bean.DeleteLiveVideoResponseBean;
import facebook.bean.GetOrCreateOrUpdateLiveVideoResponseBean;
import facebook.bean.LiveVideosResponseBean;
import facebook.bean.UpdateLiveVideoRequestBean;
public class Example {
public static void main(String[] args)throws Exception{
/**
* Get factory facebook live
*/
FactoryFacebookLive factoryFacebookLive = new FactoryFacebookLive();
/**
* Place a file named facebook.properties in root of you project
*
* Get facebook client.
*/
IFacebookClient facebook = factoryFacebookLive.getFacebookClient();
/**
* Create default live video
*/
BaseLiveVideoResponseBean liveVideoCreated = facebook.createDefaultLiveVideo();
GetOrCreateOrUpdateLiveVideoResponseBean response = (GetOrCreateOrUpdateLiveVideoResponseBean) liveVideoCreated;
System.out.println(response.getId());
/**
*
* response.getStream_url() return the url rtmp.
*
* Use this in your encoder, for example Wirecast and send video data on this video!!!
*/
System.out.println(response.getStream_url());
/**
* Create scheduled live video
*/
UpdateLiveVideoRequestBean liveVideoBean = new UpdateLiveVideoRequestBean();
liveVideoBean.setPlanned_start_time("1502794800");//Max is 7 days ahead
liveVideoBean.setScheduled_custom_profile_image("/path/to/my/foto.jpg");
BaseLiveVideoResponseBean scheduledLiveVideoCreated = null;
scheduledLiveVideoCreated = facebook.createScheduledLiveVideo(liveVideoBean);
GetOrCreateOrUpdateLiveVideoResponseBean response = (GetOrCreateOrUpdateLiveVideoResponseBean) scheduledLiveVideoCreated;
/**
*
* response.getStream_url() return the url rtmp.
*
* Use this in your encoder, for example Wirecast and send video data on this video!!!
*/
System.out.println(response.getStream_url());
/**
* Create continuos live video
*/
BaseLiveVideoResponseBean continuosLiveVideoCreated = facebook.createContinuosLiveVideo();
GetOrCreateOrUpdateLiveVideoResponseBean response3 = (GetOrCreateOrUpdateLiveVideoResponseBean) continuosLiveVideoCreated;
System.out.println(response3.getId());
/**
*
* response.getStream_url() return the url rtmp.
*
* Use this in your encoder, for example Wirecast and send video data on this video!!!
*/
System.out.println(response.getStream_url());
/**
* Update existing video
*/
UpdateLiveVideoRequestBean updateLiveVideo = new UpdateLiveVideoRequestBean();
updateLiveVideo.setId(response3.getId()); //video id was returned during creation
updateLiveVideo.setTitle("New Title");
updateLiveVideo.setDescription("New Description");
BaseLiveVideoResponseBean updatedLiveVideo = facebook.updateLiveVideo(updateLiveVideo);
GetOrCreateOrUpdateLiveVideoResponseBean response4 = (GetOrCreateOrUpdateLiveVideoResponseBean) updatedLiveVideo;
System.out.println(response4.getId());
/**
* Delete existing video
*/
BaseLiveVideoResponseBean deletedVideo = facebook.deleteLiveVideo(response3.getId());
DeleteLiveVideoResponseBean response5 = (DeleteLiveVideoResponseBean) deletedVideo;
System.out.println(response5.getSuccess());
/**
* Get Live Video
*/
BaseLiveVideoResponseBean liveVideo = facebook.getLiveVideo(response4.getId());
GetOrCreateOrUpdateLiveVideoResponseBean response6 = (GetOrCreateOrUpdateLiveVideoResponseBean) liveVideo;
System.out.println(response6.getId());
/**
* Get all Live Videos
*/
BaseLiveVideoResponseBean liveVideos = facebook.getLiveVideos();
LiveVideosResponseBean response7 = (LiveVideosResponseBean) liveVideos;
/**
* loop on response7 ...
*/
}
}