При обновлении приложения убедитесь, что вы используете последнюю версию файла конфигурации, поскольку некоторые выпуски могут содержать новые функции, требующие определенных параметров конфигурации. Если эти параметры отсутствуют, приложение может не запуститься правильно.
Open Poll+ — бесплатное приложение с открытым исходным кодом для создания опроса в Slack.
Открытый опрос+ เป็นแอปฟรีและ Открытый исходный код Слабость.
Open Poll+ — это бесплатное приложение с открытым исходным кодом для создания зондов в Slack.
Открытый опрос+ — это бесплатное приложение с открытым исходным кодом для Erstellen von Umfragen в Slack.
Open Poll+ — это бесплатное приложение с кодовым названием для создания запросов в Slack.
Открытый опрос+ — это бесплатное приложение с открытым исходным кодом для Erstellen von Umfragen в Slack.
Open Poll+ — бесплатное приложение с открытым исходным кодом для создания опросов в Slack.
Открытый опрос + Slack для Slack.
Открытый опрос+ — Slack.
Открытый опрос+Slack.
Open Poll+ доступен для использования в Slack.
Я внес некоторые изменения, чтобы сделать его более настраиваемым, например:
Разрешение выбора другим пользователям
Простой запланированный опрос
Расширенное расписание и повторяющийся опрос с использованием выражения Cron
Настоящее анонимное голосование (опросник не может видеть голоса пользователей, если этот режим включен): по умолчанию включено.
Поддержка Enterprise Grid и Slack Connect от Slack
Создайте опрос в частном канале, не добавляя бота в этот канал, используя только /poll
(За исключением создания с помощью ярлыка и расписания/повторяющегося опроса, для которого по-прежнему требовалось добавление бота на канал)
Настраиваемый пользовательский интерфейс (упорядочение, отображение/скрытие элементов, которые вы не хотите делать более чистыми)
i18n, язык пользовательского интерфейса, поддержка нескольких языков (пожалуйста, не стесняйтесь сообщать о любых неправильных переводах)
Отдельная конфигурация для каждой команды Slack.
Улучшенная обработка ошибок для предотвращения сбоев на сервере.
Войти в файл
(Подробнее см. ниже)
Вы можете использовать кнопку «Добавить в Slack» на этом сайте или посетить каталог приложений Slack.
ПОЖАЛУЙСТА, ОБРАТИТЕ ВНИМАНИЕ: по приведенной выше ссылке будет запущена последняя версия кода на моем сервере разработки. Вы можете использовать ее бесплатно, но она может содержать ошибки или быть отключена на техническое обслуживание без какого-либо уведомления. Если вы обнаружите какие-либо ошибки, пожалуйста, сообщите о них. .
После добавления приложения в Slack используйте команду /poll config
чтобы настроить, какие параметры вы хотите включить или отключить в своей команде Slack.
Если у вас возникли проблемы с добавлением приложения в Slack или созданием опроса, попробуйте сначала удалить его, а затем переустановить, поскольку у вас может быть старая версия, несовместимая с текущей версией (версия до того, как приложение было опубликовано в папке приложения Slack).
Если вы не использовали ни одну из этих функций, возможно, вы захотите использовать оригинальное приложение здесь GitLab.
Просто введите /poll
(без каких-либо опций) в канале, который вы хотите опубликовать!
/poll
(Если /poll
используется другим приложением, вы также можете использовать /openpoll
)
/poll "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
И вопрос, и ваш выбор заключайте в кавычки.
Для опций НЕ заключайте их в кавычки, если не указано иное.
Если в вашем вопросе или выборе есть «двойная кавычка», экранированные кавычки заключаются в "
. (Поддерживается двойная кавычка: "
“
”
‟
„
〝
〞
〟
)
Для
сбежал с
Вы можете использовать @mention и смайлы Slack ? ? ? , *bold*
~strike~
_italics_
и `code`
в вопросах и вариантах ответа.
/poll "Please select "HELLO" ?" "HELLO" "HELlo" "helLo" "HE"LL"O"
/poll anonymous "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
/poll limit 2 "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
/poll hidden "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
/poll anonymous limit 2 "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
/poll add-choice "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
/poll add-choice anonymous limit 2 "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
/poll lang th "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
/poll add-choice "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
/poll lang th "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
Запланировать публикацию
/poll on 2023-11-15T10:30:00+07:00 "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
Запланировать публикацию и закрыть
/poll on 2023-11-15T10:30:00+07:00 end 2023-11-30T00:00:00+07:00 "What's your favourite color ?" "Red" "Green" "Blue" "Yellow"
Отметка времени должна быть в формате ISO8601 YYYY-MM-DDTHH:mm:ss.sssZ
Если установлено время окончания, будет предпринята попытка закрыть опрос в это время один раз. Если владелец повторно откроет его, запланированное закрытие не будет выполнено снова.
Для расширенных повторяющихся опросов используйте простой опрос в качестве шаблона, а затем используйте POLL_ID
этого опроса в команде /poll schedule
. Если вы не хотите, чтобы кто-либо из участников видел ваш шаблонный опрос или отвечал на него, вы можете создать его в. пустой частный канал и укажите CH_ID
в команде планирования.
Запланируйте опрос, который создадите сами:
/poll schedule create [POLL_ID] [TS] [CH_ID] "[CRON_EXP]" [MAX_RUN]
Пример:
/poll schedule create 0123456789abcdef01234567 2023-11-18T08:00:00+07:00 /poll schedule create 0123456789abcdef01234567 2023-11-15T10:30:00+07:00 - "30 12 15 * *" 12 /poll schedule create 0123456789abcdef01234567 2023-11-15T10:30:00+07:00 C0000000000 "30 12 15 * *" 12
Запланируйте опрос, созданный другими членами вашей команды (эта команда работает только для пользователей, установивших приложение в Slack):
/poll schedule create_force [POLL_ID] [TS] [CH_ID] "[CRON_EXP]" [MAX_RUN]
Бот ДОЛЖЕН быть на канале.
Только одно расписание для каждого опроса, новое расписание заменит предыдущее.
POLL_ID
= идентификатор опроса для планирования (например, 0123456789abcdef01234567
).
Чтобы получить идентификатор опроса: перейдите в раздел «Существующий опрос» > Menu
> Command Info.
TS
= отметка времени первого запуска (формат ISO8601 YYYY-MM-DDTHH:mm:ss.sssZ
, например 2023-11-17T21:54:00+07:00
).
CH_ID
= (Необязательно) Идентификатор канала для публикации опроса. Установите значение -
для публикации на исходном канале, на котором был создан опрос (например, A0123456
).
Чтобы получить идентификатор канала: перейдите на свой канал, нажмите стрелку вниз рядом с названием канала, идентификатор канала будет в самом низу.
CRON_EXP
= (Необязательно) Не устанавливайте однократный запуск и не помещайте сюда выражение cron в часовом поясе UTC (с "
двойной кавычкой "
) (например, "30 12 15 * *"
, публикация опроса в 12:30 15-го числа каждого месяц по UTC).
MAX_RUN
= (Необязательно) Не устанавливайте максимальное время работы, которое позволяет сервер ( schedule_max_run
times). После того, как счетчик запусков превысит это число, расписание отключится само.
ПРИМЕЧАНИЕ. Если выражение cron приводит к появлению более 1 задания в течение schedule_limit_hrs
часов, опрос будет опубликован один раз, а затем задание будет отключено.
* * * * * ┬ ┬ ┬ ┬ ┬ │ │ │ │ | │ │ │ │ └ day of week (0 - 7, 1L - 7L) (0 or 7 is Sun) │ │ │ └───── month (1 - 12) │ │ └────────── day of month (1 - 31, L) │ └─────────────── hour (0 - 23) └──────────────────── minute (0 - 59)
30 8 * * *
-> в 8:00, каждый день
10 * * 1,3,5
-> в 10:00 каждый понедельник, среду и пятницу.
45 13 * * 1-5
-> в 13:45 с понедельника по пятницу.
15 9 * * 5L
-> в 9:15 в последнюю пятницу каждого месяца.
Список всех запланированных опросов, созданных текущим пользователем:
/poll schedule list /poll schedule list_self
Перечислите все запланированные опросы в рабочей области (эта команда работает только для пользователя, установившего приложение в Slack):
/poll schedule list_all
Удалить расписание, созданное самостоятельно:
/poll schedule delete [POLL_ID]
Удалить расписание, созданное другими членами вашей команды (эта команда работает только для пользователя, установившего приложение в Slack):
/poll schedule delete_force [POLL_ID]
Удалите все расписания, которые уже завершены, выполнены, больше не действительны, отключены (если их запускает пользователь, установивший приложение в Slack, он очистит недействительный опрос для всей рабочей области):
/poll schedule delete_done
Запускать /poll schedule delete_done
не требуется, так как сервер очистит неиспользуемые расписания. Если вы размещаете это самостоятельно, вы можете изменить это в schedule_auto_delete_invalid_day
Существует три уровня конфигурации: сервер, группа и пользователь.
Конфигурация пользователя имеет наивысший приоритет, за ней следует команда, а затем сервер.
Обратите внимание, что некоторые конфигурации могут быть недоступны для переопределения на определенных уровнях.
Прочтите или установите конфигурацию для себя. Если существует как пользовательская, так и групповая конфигурация. Использование:
/poll user_config read /poll user_config write [config_name] /poll user_config write user_allow_dm [true/false] /poll user_config reset
Если кто-то из вашей команды хотел бы использовать конфигурацию, отличную от той, которая указана в default.json, вы можете использовать /poll config
.
Эта команда работает только для пользователей, которые установили приложение только в Slack.
Если приложение было повторно добавлено в рабочую область, все настройки Override будут перенесены для вас.
Использование:
/poll config read /poll config write app_lang [zh_tw/zh_cn/th/ru/kr/jp/fr/es/en/de/(or language file)] /poll config write app_lang_user_selectable [true/false] /poll config write app_allow_dm [true/false] /poll config write menu_at_the_end [true/false] /poll config write create_via_cmd_only [true/false] /poll config write compact_ui [true/false] /poll config write show_divider [true/false] /poll config write show_help_link [true/false] /poll config write show_command_info [true/false] /poll config write true_anonymous [true/false] /poll config write add_number_emoji_to_choice [true/false] /poll config write add_number_emoji_to_choice_btn [true/false] /poll config write delete_data_on_poll_delete [true/false]
command
: команда косой черты
command2
: команда косой черты
bot_name
: имя бота
mongo_db_name
: имя вашей базы данных mongo (основная БД)
app_lang
для перевода (поместите языковой файл в языковую папку), переведите текст на тайский (th-ภาษาไทย)
app_lang_user_selectable
, если установлено значение true
; Разрешить пользователю, создающему опрос (через модальный режим), выбирать язык пользовательского интерфейса опроса.
app_allow_dm
Разрешить приложению отправлять прямое сообщение пользователю (при возникновении ошибки или расписания)
app_datetime_format
Формат даты и времени для отображения пользователю
use_response_url
, если установлено значение true
; приложение будет отвечать на запрос, используя response_url
вместо использования app.client.chat.post
, поэтому пользователь сможет создавать опрос в частном канале, не добавляя бота в этот канал (используя /command или модальный режим, вызываемый / команда, но не через ярлык), но может произойти тайм-аут, если пользователь не ответит после создания модального окна (нажмите «Создать опрос») в течение определенного времени (30 минут).
create_via_cmd_only
, если установлено значение true
(доступно, только если включен use_response_url
); Пользователь НЕ сможет создать опрос с помощью ярлыка; вместо этого будет отображаться строка modal_ch_via_cmd_only
, чтобы попросить пользователя создать опрос с помощью команды /.
menu_at_the_end
, если установлено значение true
; Переместить меню в конец опроса, чтобы при использовании смартфона не было большой кнопки меню между вопросом и ответом.
add_number_emoji_to_choice
и add_number_emoji_to_choice_btn
, если установлено значение true
; числовые смайлы (настраиваемые) будут отображаться в тексте/кнопке варианта голосования.
compact_ui
, если установлено значение true
; Текст выбора будет сжат до имени избирателя.
show_divider
, если установлено значение false
; Опрос будет более компактным (разделитель между вариантами выбора будет удален)
show_help_link
, если установлено значение false
, ссылка на справку будет удалена из опроса;
show_command_info
, если установлено значение false
; команда, используемая для создания опроса, будет удалена (вы все равно можете увидеть команду в меню)
true_anonymous
, если установлено значение true
; опросчик больше не будет видеть, кто и за какие варианты голосовал, если опрос анонимный. Если этот режим отключен, будет отображаться info_anonymous_notice
, чтобы пользователи знали, что опросчик все еще может видеть голоса;
delete_data_on_poll_delete
, если установлено значение true
; Когда опросчик запросит удаление опроса, все данные в базе данных, относящиеся к этому опросу, будут удалены (запланированный опрос, относящийся к удаленному опросу, также перестанет работать. Если вы хотите отключить его, убедитесь, что он соответствует требованиям). с вашей политикой.
log_level_app
Уровень журнала приложения (консоль); допустимые параметры: debug
verbose
info
warn
error
log_level_app_file
Уровень журнала приложения (файла); допустимые параметры: debug
verbose
info
warn
error
log_level_bolt
Уровень журнала Bolt (консоль); допустимые параметры: debug
verbose
info
warn
error
log_level_bolt_file
Уровень журнала Bolt(файл); допустимые параметры: debug
verbose
info
warn
error
Допустимые параметры log_to_file
: true
false
папка log_dir
файла журнала
schedule_limit_hrs
расписание не будет перезапускаться, если запланированные задания короче этого числа (часов)
schedule_max_run
Максимальное количество запусков/по умолчанию для одного расписания, которое можно установить.
schedule_auto_delete_invalid_day
Расписания, которые уже завершены, выполнены, больше не действительны, отключены, будут автоматически удалены после этого значения (дней)
если response_url
не включен или не используется, пользователь получит обратную связь, можно ли создать опрос в этом канале или нет (обязательные channels:read
, groups:read
, mpim:read
)
Выбор языка пользователя
Пользователь добавляет выбор
Конфигурация пользовательского интерфейса
Эмодзи вкл./выкл.
Если для true_anonymous
установлено значение false
, вы также можете добавить уведомление пользователю при создании анонима (поскольку создатель все еще может видеть свои голоса), добавив нужный текст в info_anonymous_notice
языкового файла.
self_host.md
webpage.md
apache-ssl.md
channels:read
, groups:read
, mpim:read
: проверить, находится ли бот на выбранном канале (если не использовать response_url
)
Код находится под лицензией GNU GPL. Таким образом, вы можете изменять код и распространять его под той же лицензией.
Помните четыре свободы GPL:
свободу использовать программное обеспечение для любых целей,
свободу изменять программное обеспечение в соответствии с вашими потребностями,
свободу делиться программным обеспечением с друзьями и соседями, а также
свобода делиться внесенными вами изменениями.
Чтобы поддержать или поблагодарить меня, вы можете связаться со мной, я буду рад предоставить вам свой адрес PayPal.