С помощью API можно создавать опросы в прямых видеотрансляциях со статусом LIVE
и управлять ими. Опросы представляются объектами VideoPoll, а варианты ответов на вопросы — объектами VideoPollOption.
Чтобы создать опрос для прямой видеотрансляции, отправьте такой запрос:
POST /{live-video-id}/polls?question={question}&options={options}
Поле status
целевого объекта LiveVideo должно иметь значение LIVE
. В противном случае создать объект VideoPoll не удастся. В случае успеха API вернет ID объекта VideoPoll.
{question}
— вопрос опроса.{options}
— массив возможных ответов.Полный список параметров, которые можно использовать в строке запроса при создании опроса, см. в справке по границе контекста Live Video Polls.
Тип | Описание |
---|---|
Маркер доступа пользователя или Страницы, создавших объект LiveVideo. | |
Для объекта VideoPoll в LiveVideo в группе: | |
Для объекта VideoPoll в LiveVideo для пользователя: Для объекта VideoPoll в LiveVideo на Странице: Для объекта VideoPoll в LiveVideo в группе: |
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}"
{ "id": "2318567914888258" // VideoPoll ID }
Чтобы закрыть опрос во время прямой видеотрансляции после выбора ответа пользователем, отправьте такой запрос:
POST /{video-poll-id}?action=CLOSE
Тип | Описание |
---|---|
Маркер доступа пользователя, создавшего объект VideoPoll. | |
Для объекта VideoPoll в LiveVideo в группе: | |
Для объекта VideoPoll в LiveVideo для пользователя: Для объекта VideoPoll в LiveVideo на Странице: Для объекта VideoPoll в LiveVideo в группе: |
curl -i -X POST \
"https://graph.facebook.com/{video-poll-id}?action=CLOSE&access_token={access-token}"
{ "success": true }
Чтобы вновь открыть закрытый опрос и дать пользователю возможность изменить ответ, отправьте такой запрос:
POST /{video-poll-id}?action=SHOW_VOTING
Тип | Описание |
---|---|
Маркер доступа пользователя, создавшего объект VideoPoll. | |
Для объекта VideoPoll в LiveVideo в группе: | |
Для объекта VideoPoll в LiveVideo для пользователя: Для объекта VideoPoll в LiveVideo на Странице: Для объекта VideoPoll в LiveVideo в группе: |
curl -i -X POST \
"https://graph.facebook.com/{video-poll-id}
?action=SHOW_VOTING
&access_token={access-token}"
{ "success": true }
Чтобы показывать результаты опроса после голосования пользователя, отправьте такой запрос:
POST /{video-poll-id}?action=SHOW_RESULTS
Тип | Описание |
---|---|
Маркер доступа пользователя, создавшего объект VideoPoll. | |
Для объекта VideoPoll в LiveVideo в группе: | |
Для объекта VideoPoll в LiveVideo для пользователя: Для объекта VideoPoll в LiveVideo на Странице: Для объекта VideoPoll в LiveVideo в группе: |
curl -i -X POST \
"https://graph.facebook.com/{video-poll-id}
?action=SHOW_RESULTS
&access_token={access-token}"
{ "success": true }
Чтобы получить возможные ответы на опрос, отправьте такой запрос:
GET /{video-poll-id}?fields=poll_options
GET /{video-poll-id}/poll_options
Список доступных полей и границ контекста см. в справке по VideoPoll.
Тип | Описание |
---|---|
Маркер доступа пользователя, создавшего объект VideoPoll. | |
Для объекта VideoPoll в LiveVideo в группе: | |
Для объекта VideoPoll в LiveVideo для пользователя: Для объекта VideoPoll в LiveVideo на Странице: Для объекта VideoPoll в LiveVideo в группе: |
Получение возможных ответов на опрос:
curl -i -X GET \
"https://graph.intern.facebook.com/{video-poll-id}/poll_options
?fields=poll_options
&access_token={access-token}"
Объект со списком возможных ответов (список VideoPollOption).
{ "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 }
Чтобы получить количество голосов, отданных за какой-либо вариант ответа, отправьте такой запрос:
GET /{video-poll-option-id}?fields=total_votes
Тип | Описание |
---|---|
Маркер доступа пользователя, создавшего объект VideoPollOption. | |
Для объекта VideoPoll в LiveVideo в группе: | |
Для объекта VideoPoll в LiveVideo для пользователя: Для объекта VideoPoll в LiveVideo на Странице: Для объекта VideoPoll в LiveVideo в группе: | |
Маркер доступа, который использовался для создания LiveVideo или трансляции. |
curl -i -X GET \
"https://graph.facebook.com/{video-poll-option-id}
?fields=total_votes
&access_token={access-token}"
{ "total_votes": 129, "id": "{video-poll-option}" }
Чтобы получить количество голосов, отданных за каждый вариант ответа, используйте расширение поля poll_options
. Тогда ответ будет содержать поле total_votes
для каждого возвращаемого объекта VideoPollOption:
GET /{video-poll-id}?fields=poll_options{total_votes}
Тип | Описание |
---|---|
Маркер доступа пользователя, создавшего объект LiveVideo. | |
Для объекта VideoPoll в LiveVideo в группе: | |
Для объекта VideoPoll в LiveVideo для пользователя: Для объекта VideoPoll в LiveVideo на Странице: Для объекта VideoPoll в LiveVideo в группе: |
Возвращает все объекты VideoPollOption с полями text
и total_votes
для VideoPoll.
curl -i -X GET \
"https://graph.intern.facebook.com/{video-poll-id}
?fields=poll_options{text,total_votes}
&access_token={access-token}"
{ "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 }