Dokumen ini sudah diperbarui.
Terjemahan ke Bahasa Indonesia belum selesai.
Bahasa Inggris diperbarui: 8 Des 2022

Polling

Anda dapat menggunakan API untuk membuat dan mengelola polling di video siaran langsung yang berstatus LIVE. Polling diwakili oleh objek VideoPoll dan terdiri dari VideoPollOptions, yang mewakili kemungkinan jawaban untuk pertanyaan polling.

Membuat Polling

Untuk membuat polling di video siaran langsung, kirim permintaan ke:

POST /{live-video-id}/polls?question={question}&options={options}

Objek LiveVideo yang ditargetkan dengan status: LIVE agar Polling Video bisa dibuat. Setelah berhasil, API akan menanggapi dengan ID objek VideoPoll.

Parameter String Kueri

  • {question} — Pertanyaan polling.
  • {options} — Array kemungkinan jawaban.

Bacalah referensi edge Polling Video Siaran Langsung untuk melihat daftar lengkap parameter string kueri yang dapat Anda sertakan saat membuat polling.

Persyaratan

JenisDeskripsi

Token Akses

Token akses dari Pengguna atau Halaman yang membuat Video Siaran Langsung.

Fitur

Untuk Polling Video di Video Siaran Langsung pada Grup:


Izin

Untuk Polling Video di Video Siaran Langsung pada Pengguna:


Untuk Polling Video di Video Siaran Langsung pada Halaman:


Untuk Polling Video di Video Siaran Langsung pada Grup:


Contoh Permintaan

curl -i -X POST \
  "https://graph.facebook.com/v3.3/10214959467675612/polls
    ?question=What%20kind%20of%20bear%20is%20best%3F
    &options=%5B%22Black%20bear%22%2C%20%22Brown%20bear%22%2C%20%22That's%20a%20ridiculous%20question%22%5D
    &access_token={access-token}"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/10214959467675612/polls",
  new JSONObject("{\"question\":\"What kind of bear is best?\",\"options\":\"[\"Brown bear\", \"Black bear\", \"That is a stupid question\", \"Basically, there are two schools of thought\"]\"}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/10214959467675612/polls"
           parameters:@{ @"question": @"What kind of bear is best?",@"options": @"['Brown bear', 'Black bear', 'That is a stupid question', 'Basically, there are two schools of thought']",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/10214959467675612/polls',
  'POST',
  {"question":"What is the best bear?","options":"['Brown bear', 'Black bear', 'That is a stupid question', 'Basically, there are two schools of thought']"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->post(
    '/10214959467675612/polls',
    array (
      'question' => 'What is the best bear?',
      'options' => '["Brown bear", "Black bear", "That is a stupid question", "Basically, there are two schools of thought"]'
    ),
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Contoh Tanggapan

{
  "id": "2318567914888258"  // VideoPoll ID
}

Menutup Polling

Untuk menutup polling di video siaran langsung setelah seseorang memilih opsi polling, kirim permintaan ke:

POST /{video-poll-id}?action=CLOSE

Persyaratan

JenisDeskripsi

Token Akses

Token akses Pengguna yang membuat Polling Video.

Fitur

Untuk Polling Video di Video Siaran Langsung pada Grup:


Izin

Untuk Polling Video di Video Siaran Langsung pada Pengguna:


Untuk Polling Video di Video Siaran Langsung pada Halaman:


Untuk Polling Video di Video Siaran Langsung pada Grup:


Contoh Permintaan

curl -i -X POST \
 "https://graph.facebook.com/{video-poll-id}?action=CLOSE&access_token={access-token}"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/{video-poll-id}",
  new JSONObject("{\"action\":\"CLOSE\"}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{video-poll-id}"
           parameters:@{ @"action": @"CLOSE",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{video-poll-id}',
  'POST',
  {"action":"CLOSE"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->post(
    '/{video-poll-id}',
    array (
      'action' => 'CLOSE'
    ),
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Contoh Tanggapan

{
  "success": true
}

Membuka Kembali Polling

Untuk membuka kembali polling yang sudah ditutup agar orang dapat mengubah opsi polling-nya, kirim permintaan ke:

POST /{video-poll-id}?action=SHOW_VOTING

Persyaratan

JenisDeskripsi

Token Akses

Token akses Pengguna yang membuat Polling Video.

Fitur

Untuk Polling Video di Video Siaran Langsung pada Grup:


Izin

Untuk Polling Video di Video Siaran Langsung pada Pengguna:


Untuk Polling Video di Video Siaran Langsung pada Halaman:


Untuk Polling Video di Video Siaran Langsung pada Grup:


Contoh Permintaan

curl -i -X POST \
 "https://graph.facebook.com/{video-poll-id}
   ?action=SHOW_VOTING
   &access_token={access-token}"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/{video-poll-id}",
  new JSONObject("{\"action\":\"SHOW_VOTING\"}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{video-poll-id}"
           parameters:@{ @"action": @"SHOW_VOTING",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{video-poll-id}',
  'POST',
  {"action":"SHOW_VOTING"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->post(
    '/{video-poll-id}',
    array (
      'action' => 'SHOW_VOTING'
    ),
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Contoh Tanggapan

{
  "success": true
}

Tampilkan Hasil Polling

Untuk mengonfigurasi polling agar menampilkan hasil setelah orang memberikan suara, kirim permintaan ke:

POST /{video-poll-id}?action=SHOW_RESULTS

Persyaratan

JenisDeskripsi

Token Akses

Token akses Pengguna yang membuat Polling Video.

Fitur

Untuk Polling Video di Video Siaran Langsung pada Grup:


Izin

Untuk Polling Video di Video Siaran Langsung pada Pengguna:


Untuk Polling Video di Video Siaran Langsung pada Halaman:


Untuk Polling Video di Video Siaran Langsung pada Grup:


Contoh Permintaan

curl -i -X POST \
 "https://graph.facebook.com/{video-poll-id}
    ?action=SHOW_RESULTS
    &access_token={access-token}"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/{video-poll-id}",
  new JSONObject("{\"action\":\"SHOW_RESULTS\"}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{video-poll-id}"
           parameters:@{ @"action": @"SHOW_RESULTS",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{video-poll-id}',
  'POST',
  {"action":"SHOW_RESULTS"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->post(
    '/{video-poll-id}',
    array (
      'action' => 'SHOW_RESULTS'
    ),
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Contoh Tanggapan

{
  "success": true
}

Mendapatkan Opsi Polling

Untuk mendapatkan kemungkinan jawaban polling, kirim permintaan ke:

GET /{video-poll-id}?fields=poll_options
GET /{video-poll-id}/poll_options

Buka referensi Polling Video untuk melihat daftar kolom dan edge yang tersedia.

Persyaratan

JenisDeskripsi

Token Akses

Token akses Pengguna yang membuat Polling Video.

Fitur

Untuk Polling Video di Video Siaran Langsung pada Grup:


Izin

Untuk Polling Video di Video Siaran Langsung pada Pengguna:


Untuk Polling Video di Video Siaran Langsung pada Halaman:


Untuk Polling Video di Video Siaran Langsung pada Grup:


Contoh Permintaan

Mendapatkan kemungkinan jawaban polling:

curl -i -X GET \
 "https://graph.intern.facebook.com/{video-poll-id}/poll_options
   ?fields=poll_options
   &access_token={access-token}"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/{video-poll-id}",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "poll_options");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{video-poll-id}"
           parameters:@{ @"fields": @"poll_options",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{video-poll-id}',
  'GET',
  {"fields":"poll_options"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/{video-poll-id}',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Contoh Tanggapan

Objek yang berisi daftar kemungkinan jawaban (daftar Opsi Polling Video).

{
  "poll_options":
    {
      "data": [
        {
          "text": "Brown bear",
          "id": 145049637
        },
        {
          "text": "Black bear",
          "id": 145049638
        }
        {
          "text": "That is a stupid question",
          "id": 145049639
        }
        {
          "text": "Basically, there are two schools of thought",
          "id": 145049640
        }
      ]
    },
  "id": 12345
}

Mendapatkan Jumlah Suara Opsi Polling

Untuk mendapatkan jumlah suara untuk opsi polling, kirim permintaan ke:

GET /{video-poll-option-id}?fields=total_votes

Persyaratan

JenisDeskripsi

Token Akses

Token akses Pengguna yang membuat Opsi Polling Video.

Fitur

Untuk Polling Video di Video Siaran Langsung pada Grup:


Izin

Untuk Polling Video di Video Siaran Langsung pada Pengguna:


Untuk Polling Video di Video Siaran Langsung pada Halaman:


Untuk Polling Video di Video Siaran Langsung pada Grup:


Token Akses

Token akses yang sama dengan yang digunakan untuk membuat Video Siaran Langsung atau Siaran.

Contoh Permintaan

curl -i -X GET \
 "https://graph.facebook.com/{video-poll-option-id}
   ?fields=total_votes 
   &access_token={access-token}"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/{video-poll-option-id}",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "total_votes");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{video-poll-option-id}"
           parameters:@{ @"fields": @"total_votes",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{video-poll-option-id}',
  'GET',
  {"fields":"total_votes"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/{video-poll-option-id}',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Contoh Tanggapan

    {
  "total_votes": 129,
  "id": "{video-poll-option}"
}

Mendapatkan Jumlah Seluruh Suara Opsi Polling

Untuk mendapatkan jumlah suara untuk setiap kemungkinan jawaban dalam polling, gunakan ekspansi kolom pada kolom poll_options agar tanggapan mencakup kolom total_votes pada VideoPollOptions yang dihasilkan:

GET /{video-poll-id}?fields=poll_options{total_votes}

Persyaratan

JenisDeskripsi

Token Akses

Token akses Pengguna yang membuat Video Siaran Langsung.

Fitur

Untuk Polling Video di Video Siaran Langsung pada Grup:


Izin

Untuk Polling Video di Video Siaran Langsung pada Pengguna:


Untuk Polling Video di Video Siaran Langsung pada Halaman:


Untuk Polling Video di Video Siaran Langsung pada Grup:


Contoh Permintaan

Mendapatkan semua VideoPollOptions serta kolom text dan total_votes pada VideoPoll.

curl -i -X GET \
 "https://graph.intern.facebook.com/{video-poll-id}
   ?fields=poll_options{text,total_votes}
   &access_token={access-token}"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/{video-poll-id}",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "poll_options{text,total_votes}");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{video-poll-id}"
           parameters:@{ @"fields": @"poll_options{text,total_votes}",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{video-poll-id}',
  'GET',
  {"fields":"poll_options{text,total_votes}"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/{video-poll-id}',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Contoh Tanggapan

{
  "poll_options":
    {
      "data": [
        {
          "text": "Brown Bear",
          "total_votes": 12,
          "id": 145049637
        },
        {
          "text": "Black Bear",
          "total_votes": 87,
          "id": 67890
        }
        {
          "text": "That's a stupid question",
          "total_votes": 45,
          "id": 145049639
        }
        {
          "text": "Basically, there are two schools of thought",
          "total_votes": 12,
          "id": 145049640
        }
      ]
    },
  "id": 12345
}