Модуль опроса. API: відмінності між версіями
Перейти до навігації
Перейти до пошуку
Sv (обговорення | внесок) |
Sv (обговорення | внесок) м (→Коды ошибок) |
||
(Не показані 3 проміжні версії цього користувача) | |||
Рядок 46: | Рядок 46: | ||
id : id пункта опроса | id : id пункта опроса | ||
title : пункт опроса | title : пункт опроса | ||
description : описание | |||
voted : 1 - проголосовал за этот пункт | voted : 1 - проголосовал за этот пункт | ||
votes : количество пользователей проголосовавших за этот пункт | votes : количество пользователей проголосовавших за этот пункт | ||
</pre> | </pre> | ||
Рядок 58: | Рядок 58: | ||
* poll_id - id опроса в списке polls | * poll_id - id опроса в списке polls | ||
* choice - id пункта или список id, разделенных запятыми | * choice - id пункта или список id, разделенных запятыми | ||
* as_anon - голосовать анонимно (1 - да, 0 - нет) | |||
<source lang="bash"> | <source lang="bash"> | ||
Рядок 81: | Рядок 82: | ||
poll_id_required : в параметре poll_id не задан id опроса | poll_id_required : в параметре poll_id не задан id опроса | ||
poll_not_found : опрос не найден (неверный id/опрос в статусе "неактивный"/ | poll_not_found : опрос не найден (неверный id/опрос в статусе "неактивный"/ | ||
время опроса еще не наступило или уже закончилось) | |||
choice_required : в параметре choices не указан ни один пункт опроса | choice_required : в параметре choices не указан ни один пункт опроса | ||
only_one_choice : опрос позволяет выбирать только один пункт | only_one_choice : опрос позволяет выбирать только один пункт | ||
cannot_revote : пользователь уже голосовал и в данном опросе не разрешено менять выбор | cannot_revote : пользователь уже голосовал и в данном опросе не разрешено менять выбор | ||
wrong_choice_id : в параметре choices как минимум один id не указывает на существующий активный пункт меню | 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 : опрос не позволяет голосовать анонимно