お問い合わせフォームを追加して、サポート管理を容易にします。
この拡張機能を追加してみることはできますか...?
@ jainaman224はい、それは実際に私たちのサポートに大きな助けになるでしょう:)
主なアイデアは、多くの人が一般的な問題について私たち(zenodo.org-サービス)に連絡することです。これは通常、次のとおりです。
多くの場合、それらには多くの情報(前述のOS、ブラウザーなど)が含まれておらず、削除/更新するレコードを指定していないことがよくあります。 時々彼らは彼らのZenodoメールが何であるかについて言及するのを忘れます(そしてそれは彼らが私たちに書いているものとは非常にしばしば異なります)。
主なアイデアは、その情報をできるだけ多く取得して含め、フォームから送信することです。
タスクは、ポイント1と2を実装することです。後で、フォーム(ポイント3)に素敵なテキストを一緒に考えることができます。
このフォームはおそらく私たちに電子メールを送信するはずです。電子メール本文の下部には、この情報を含む事前にフォーマットされた文字列を含めることができます。
このフォームを実装する必要がありますhttps://zenodo.org/support ...?
現在の「/ support」ページは、フォームのない静的な情報です。今のところ、このままである必要があります。
新しいページ(例:「/ support-form」の下)を作成する必要があります。ここで、GitHubsに似た簡単な連絡フォームを定義します: https :
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
もう1つの優れた機能は、フォームにラジオボタンを含めることです。このボタンで、ユーザーは問題のカテゴリを選択できます。例:
テクニカルサポート、Zenodoポリシー、アウトリーチ、その他(カテゴリは後で定義されます)。
この情報は、送信された電子メールのプレフィックスとして使用できます。
「[テクニカルサポート]:タイトルの残りの部分」
それは素晴らしいことだ。 :+1:
ユーザーエージェントの解析には、 https://github.com/ua-parser/uap-pythonを使用して
ユーザーは、送信された情報を確認できる必要があります(おそらく、オプトアウトできる必要があります)。
@lnielsen基本構造が承認されたら、後で含めることはできますか...?
いくつかの一般的な修正は別として、 @ jainaman224によるPRはすでに本当にクールに見えます: https :
この機能を本番環境に対応させるには、さらにいくつかの変更が必要です。
uap-python
使用するName
(ユーザーのフルネームが事前に入力されたテキストフィールド-ユーザーが編集可能)Email
(ラベルのみ)「ZenodoスタッフがZenodoメールで返信します: [email protected] 」(変更不可)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 :
[]確認メールは、メールが正常に送信された後にユーザーに送信する必要があります。
この種の方法では、フォームが何らかの理由でメッセージを送信しないため、ユーザーが質問をしてから返信が得られないようにします。 フォームには、20分以内に受信トレイに確認メールが届くように記載する必要があります。そうでない場合は、再試行するか、 team @ zenodo.orgに直接メールを送信して
[]メッセージと一緒にファイルをアップロードできる必要があります。メッセージは電子メールの添付ファイルとして送信されます。 最大ファイルサイズは構成可能であり、大きなファイルの場合はエラーを表示し、代わりにファイルへのURLを含めることを提案する必要があります。 どこにも保存しないでください。アプリケーション(メモリ)を介して渡され、タスクで直接電子メールの添付ファイルとして送信されます。
[]フォームには、コンテンツのスタイル設定と作業が必要です(テキスト/説明/選択する問題の種類など)
@ jainaman224あなたの貢献はすでに良いスタートです、そして私はそれらがいくつかの追加の要件であることを知っています。 それでも興味があれば、これに取り組み続けることを歓迎しますが、最初の貢献を受け入れることは必須ではないことを知ってください! :)
@ lnielsen @ krzysztofユーザーからの情報はあまり必要ないと思います。 したがって、この方法を使用すると、 https://github.com/jainaman224/zenodo/blob/patch-1/zenodo/modules/pages/views.py#L57#L60の方が適してい
ありがとうございました
@lnielsen @krzysztof uap-python
を使用することが望ましい理由