Модуль опроса. API: відмінності між версіями
Перейти до навігації
Перейти до пошуку
Sv (обговорення | внесок) Немає опису редагування |
Sv (обговорення | внесок) м (→Коды ошибок) |
||
(Не показані 23 проміжні версії цього користувача) | |||
Рядок 1: | Рядок 1: | ||
==Список опросов== | |||
<source lang="bash"> | <source lang="bash"> | ||
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=list' \ | curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=list' \ | ||
Рядок 4: | Рядок 5: | ||
</source> | </source> | ||
Если в ответе ключ err_cod - ошибка. Иначе в polls - список опросов. | |||
Данные опроса: | Данные опроса: | ||
Рядок 15: | Рядок 16: | ||
start : дата старта опроса в виде timestamp | start : дата старта опроса в виде timestamp | ||
end : дата завершения опроса в виде timestamp | end : дата завершения опроса в виде timestamp | ||
stats_voted_users : | stats_voted_users : количество проголосовавших пользователей | ||
can_see_results : 1 - пользователь может видеть результаты голосования, 0 - нет | can_see_results : 1 - пользователь может видеть результаты голосования, 0 - нет | ||
can_see_results_before_vote : 1 - может видеть результаты до голосования, 0 - только после | can_see_results_before_vote : 1 - может видеть результаты до голосования, 0 - только после | ||
can_revote : 1 - может переголосовать, 0 - нет | can_revote : 1 - может переголосовать, 0 - нет | ||
can_multi_choice : 1 - можно голосовать за несколько пунктов, 0 - нет | can_multi_choice : 1 - можно голосовать за несколько пунктов, 0 - нет | ||
can_anonymous : 1 - можно голосовать анонимно, 0 - нет | |||
voted : 1 - голосовал, 0 - нет | voted : 1 - голосовал, 0 - нет | ||
vote_time : дата голосования в виде строки, '' если не голосовал | vote_time : дата голосования в виде строки, '' если не голосовал | ||
viewed_time : дата первого просмотра опроса в виде строки, '' если не просматривал еще | viewed_time : дата первого просмотра опроса в виде строки, '' если не просматривал еще | ||
ignore : пользователь просил не показываеть ему этот опрос | ignore : пользователь просил не показываеть ему этот опрос | ||
</pre> | |||
* Если не разрешено просматривать результаты опроса или пользователь не голосовал, то stats_voted_users = -1. | |||
* ignore - флаг, который указывает на то, что ранее пользователь давал команду не показывать этот опрос. Показывать или нет - на усмотрение. | |||
* viewed_time установлен, если пользователь вызывал cmd=choices, т.е. видел названия пунктов меню и возможно статистику (если разрешен ее показ). | |||
* vote_time - дата последнего голосования, если голосовал несколько раз. | |||
==Получить данные опроса== | |||
В параметре poll_id - id опроса в списке polls | |||
<source lang="bash"> | |||
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=choices&poll_id=1' \ | |||
--cookie 'noses=zpP6gc2lJjeYKzskLBK7zA' | |||
</source> | |||
Если в ответе ключ err_cod - ошибка. Иначе в choices - пункты опроса: | |||
<pre> | |||
id : id пункта опроса | |||
title : пункт опроса | |||
description : описание | |||
voted : 1 - проголосовал за этот пункт | |||
votes : количество пользователей проголосовавших за этот пункт | |||
</pre> | |||
* Если не разрешено просматривать результаты опроса или пользователь не голосовал, то votes = -1. | |||
==Голосование== | |||
В параметре: | |||
* poll_id - id опроса в списке polls | |||
* choice - id пункта или список id, разделенных запятыми | |||
* as_anon - голосовать анонимно (1 - да, 0 - нет) | |||
<source lang="bash"> | |||
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=vote&poll_id=1&choice=1,2' \ | |||
--cookie 'noses=zpP6gc2lJjeYKzskLBK7zA' | |||
</source> | |||
==Игнорировать опрос== | |||
<source lang="bash"> | |||
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=ignore&poll_id=1' \ | |||
--cookie 'noses=zpP6gc2lJjeYKzskLBK7zA' | |||
</source> | |||
==Не игнорировать опрос== | |||
<source lang="bash"> | |||
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=dont_ignore&poll_id=1' \ | |||
--cookie 'noses=zpP6gc2lJjeYKzskLBK7zA' | |||
</source> | |||
==Коды ошибок== | |||
<pre> | |||
temporary : ошибка на сервере API | |||
poll_id_required : в параметре poll_id не задан id опроса | |||
poll_not_found : опрос не найден (неверный id/опрос в статусе "неактивный"/ | |||
время опроса еще не наступило или уже закончилось) | |||
choice_required : в параметре choices не указан ни один пункт опроса | |||
only_one_choice : опрос позволяет выбирать только один пункт | |||
cannot_revote : пользователь уже голосовал и в данном опросе не разрешено менять выбор | |||
wrong_choice_id : в параметре choices как минимум один id не указывает на существующий активный пункт меню | |||
anonymous_deny : опрос не позволяет голосовать анонимно | |||
</pre> | </pre> |
Поточна версія на 08:55, 31 липня 2021
Список опросов
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=list' \
--cookie 'noses=zpP6gc2lJjeYKzskLBK7zA'
Если в ответе ключ err_cod - ошибка. Иначе в polls - список опросов.
Данные опроса:
id : id опроса, целое число больше нуля title : заголовок description : описание start_date : дата старта опроса в виде строки end_date : дата завершения опроса в виде строки start : дата старта опроса в виде timestamp end : дата завершения опроса в виде timestamp stats_voted_users : количество проголосовавших пользователей can_see_results : 1 - пользователь может видеть результаты голосования, 0 - нет can_see_results_before_vote : 1 - может видеть результаты до голосования, 0 - только после can_revote : 1 - может переголосовать, 0 - нет can_multi_choice : 1 - можно голосовать за несколько пунктов, 0 - нет can_anonymous : 1 - можно голосовать анонимно, 0 - нет voted : 1 - голосовал, 0 - нет vote_time : дата голосования в виде строки, '' если не голосовал viewed_time : дата первого просмотра опроса в виде строки, '' если не просматривал еще ignore : пользователь просил не показываеть ему этот опрос
- Если не разрешено просматривать результаты опроса или пользователь не голосовал, то stats_voted_users = -1.
- ignore - флаг, который указывает на то, что ранее пользователь давал команду не показывать этот опрос. Показывать или нет - на усмотрение.
- viewed_time установлен, если пользователь вызывал cmd=choices, т.е. видел названия пунктов меню и возможно статистику (если разрешен ее показ).
- vote_time - дата последнего голосования, если голосовал несколько раз.
Получить данные опроса
В параметре poll_id - id опроса в списке polls
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=choices&poll_id=1' \
--cookie 'noses=zpP6gc2lJjeYKzskLBK7zA'
Если в ответе ключ err_cod - ошибка. Иначе в choices - пункты опроса:
id : id пункта опроса title : пункт опроса description : описание voted : 1 - проголосовал за этот пункт votes : количество пользователей проголосовавших за этот пункт
- Если не разрешено просматривать результаты опроса или пользователь не голосовал, то votes = -1.
Голосование
В параметре:
- poll_id - id опроса в списке polls
- choice - id пункта или список id, разделенных запятыми
- as_anon - голосовать анонимно (1 - да, 0 - нет)
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=vote&poll_id=1&choice=1,2' \
--cookie 'noses=zpP6gc2lJjeYKzskLBK7zA'
Игнорировать опрос
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=ignore&poll_id=1' \
--cookie 'noses=zpP6gc2lJjeYKzskLBK7zA'
Не игнорировать опрос
curl 'http://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_poll&cmd=dont_ignore&poll_id=1' \
--cookie 'noses=zpP6gc2lJjeYKzskLBK7zA'
Коды ошибок
temporary : ошибка на сервере API poll_id_required : в параметре poll_id не задан id опроса poll_not_found : опрос не найден (неверный id/опрос в статусе "неактивный"/ время опроса еще не наступило или уже закончилось) choice_required : в параметре choices не указан ни один пункт опроса only_one_choice : опрос позволяет выбирать только один пункт cannot_revote : пользователь уже голосовал и в данном опросе не разрешено менять выбор wrong_choice_id : в параметре choices как минимум один id не указывает на существующий активный пункт меню anonymous_deny : опрос не позволяет голосовать анонимно