Добавьте контактную форму, чтобы упростить управление службой поддержки:
Можно попробовать добавить это улучшение ...?
@ jainaman224 Да, это действительно очень помогло бы нашей поддержке :)
Основная идея заключается в том, что к нам (zenodo.org - сервис) обращаются многие люди по поводу общих проблем, которые обычно:
Очень часто они не включают много информации (например, упомянутую ОС, браузер), и очень часто они не указывают, какую запись они хотят удалить / обновить. Иногда они забывают указать, какой у них адрес электронной почты Zenodo (и очень часто он отличается от того, с которого они нам пишут).
Основная идея состоит в том, чтобы получить и включить как можно больше этой информации и отправить ее нам через форму, поэтому
Задача состоит в том, чтобы реализовать пункты 1. и 2. Позже мы вместе сможем придумать красивый текст на форме (пункт 3.).
Эта форма, вероятно, должна отправить нам электронное письмо, где нижняя часть тела письма может включать предварительно отформатированную строку с этой информацией.
Нужно ли мне внедрять эту форму https://zenodo.org/support ...?
Текущая страница «/ support» - это просто статическая информация без какой-либо формы - пока она должна оставаться такой.
Вам нужно будет создать новую страницу (например, «/ support-form»), где вы должны определить простую контактную форму, похожую на GitHubs: https://github.com/support
Вот пример формы в Zenodo (эта форма предназначена для удаления записей администратором):
Форма:
https://github.com/zenodo/zenodo/blob/master/zenodo/modules/deposit/forms.py
Вид:
https://github.com/zenodo/zenodo/blob/master/zenodo/modules/deposit/views.py#L142 -L211
Еще одна приятная функция - включить в форму радиокнопку, где пользователь может выбрать категорию проблемы, например:
Техническая поддержка, Политики Zenodo, Информационная поддержка, Другое (категории будут определены позже).
Эта информация может быть префиксом отправленного электронного письма:
«[Техническая поддержка]: остальная часть названия»
Было бы здорово. : +1:
Для парсинга пользовательского агента используйте https://github.com/ua-parser/uap-python
Пользователь должен иметь возможность видеть, какая информация отправляется нам (и, вероятно, иметь возможность отказаться)
@lnielsen Могу ли я включить его позже, когда будет утверждена базовая структура ...?
Помимо некоторых общих исправлений, PR от @ jainaman224 уже выглядит действительно круто: https://github.com/zenodo/zenodo/pull/1008
Чтобы сделать эту функцию готовой к эксплуатации, необходимы некоторые дальнейшие изменения:
uap-python
Name
(предварительно заполненное текстовое поле с полным именем пользователя - доступно для редактирования пользователем)Email
(только ярлык) с надписью «Сотрудники Zenodo свяжутся с вами по электронной почте Zenodo : Name
(пустое текстовое поле)Email
(пустое текстовое поле)To better address your problem, the following information can be sent to us (recommended) alongside with your message:
Operating system: ...
Browser: ...
(more User-Agent info)
Рядом с ним должен быть флажок (включен по умолчанию) с надписью «[x] Отправить информацию о браузере и системе».
config.py
следующим образом:PAGES_SUPPORT_CATEGORIES = [
('Technical Support', "Please describe the error you are getting, include any error messages or link to screenshots which might be relevant"),
('File upload request', "Please include the URL of the updated file, and specify which record and file you want to replace. Please use publicly accessible URLs."),
(...)
]
Когда пользователь выбирает категорию, отображается текст ниже, который добавляет дополнительную информацию о том, что пользователь должен включить в свое сообщение (в зависимости от категории).
[] Категория должна показывать плавный переход между вариантами выбора, в идеале без излишнего количества (если таковой имеется) настраиваемого javascript, например этого элемента начальной загрузки: http://getbootstrap.com/javascript/#collapse
[] Электронное письмо с подтверждением должно быть отправлено пользователю после того, как оно было успешно отправлено нам.
Этот вид не позволяет пользователю задать нам вопрос, а затем не получить ответ, потому что форма по какой-то причине не отправляет нам его сообщение. В форме должно быть указано, что он должен получить электронное письмо с подтверждением на свой почтовый ящик в течение 20 минут - в противном случае он должен повторить попытку или отправить нам электронное письмо непосредственно на [email protected].
[] Должна быть предусмотрена возможность загрузки файлов вместе с сообщением, которое следует отправить нам в виде вложения к электронному письму. Максимальный размер файла должен быть настраиваемым и отображать ошибку для больших файлов, предлагая вместо этого включить URL-адрес файла. Его не следует нигде хранить, а передавать через приложение (память) и отправлять в виде вложения электронной почты непосредственно в задаче.
[] Форма требует некоторого стиля и работы над содержанием (текст / описания / типы задач на выбор и т. Д.)
@ jainaman224 Ваш вклад - уже хорошее начало, и я знаю, что это некоторые дополнительные требования. Если вам все еще интересно, вы можете продолжить работу над этим, но знайте, что принимать свой первый взнос не обязательно! :)
@lnielsen @krzysztof Я думаю, нам не нужно много информации от пользователя. Так что лучше пойти этим путем https://github.com/jainaman224/zenodo/blob/patch-1/zenodo/modules/pages/views.py#L57 # L60. Пожалуйста, поправьте меня, если я ошибаюсь.
Спасибо
@lnielsen @krzysztof Почему предпочтительнее использовать uap-python
?