Fügen Sie ein Kontaktformular hinzu, um eine einfachere Supportverwaltung zu ermöglichen:
Kann ich versuchen, diese Verbesserung hinzuzufügen...?
@jainaman224 Ja, das wäre tatsächlich eine große Hilfe für unseren Support :)
Die Grundidee ist, dass viele Leute uns (zenodo.org - der Service) kontaktieren, um häufige Probleme zu haben, die normalerweise sind:
Sehr oft enthalten sie nicht viele Informationen (wie das erwähnte Betriebssystem, Browser) und sehr oft geben sie nicht an, welchen Datensatz sie entfernen/aktualisieren möchten. Manchmal vergessen sie zu erwähnen, was ihre Zenodo-E-Mail ist (und sehr oft ist sie anders als die, von der sie uns schreiben).
Die Hauptidee wäre, so viele dieser Informationen wie möglich abzurufen, einzufügen und über das Formular an uns zu senden
Die Aufgabe besteht darin, die Punkte 1. und 2. umzusetzen, wir können uns später gemeinsam einen schönen Text auf dem Formular (Punkt 3.) ausdenken.
Dieses Formular sollte uns wahrscheinlich eine E-Mail senden, in der der untere Teil des E-Mail-Texts eine vorformatierte Zeichenfolge mit diesen Informationen enthalten kann.
Muss ich dieses Formular https://zenodo.org/support ... implementieren?
Die aktuelle "/support"-Seite besteht nur aus statischen Informationen ohne jegliche Form - es sollte vorerst so bleiben.
Sie müssten eine neue Seite erstellen (unter zB: "/support-form"), auf der Sie ein einfaches Kontaktformular ähnlich wie bei GitHubs definieren: https://github.com/support
Hier ist ein Beispiel für ein Formular in Zenodo (dieses dient zum Löschen von Datensätzen durch den Administrator):
Form:
https://github.com/zenodo/zenodo/blob/master/zenodo/modules/deposit/forms.py
Sicht:
https://github.com/zenodo/zenodo/blob/master/zenodo/modules/deposit/views.py#L142 -L211
Ein weiteres nettes Feature wäre, ein Optionsfeld in das Formular einzufügen, mit dem der Benutzer eine Kategorie des Problems auswählen kann, z.
Technischer Support, Zenodo-Richtlinien, Outreach, Sonstiges (Kategorien werden später definiert).
Diese Informationen könnten als Präfix für die gesendete E-Mail verwendet werden:
"[Technischer Support]: Der Rest des Titels"
Es wäre toll. :+1:
Verwenden Sie für das Parsing des Benutzeragenten https://github.com/ua-parser/uap-python
Ein Benutzer sollte sehen können, welche Informationen an uns gesendet werden (und sich wahrscheinlich abmelden können).
@lnielsen Kann ich es später
Abgesehen von einigen allgemeinen Fixes sieht die PR von @jainaman224 schon richtig cool aus: https://github.com/zenodo/zenodo/pull/1008
Um dieses Feature produktionsreif zu machen, sind einige weitere Änderungen erforderlich:
uap-python
Name
(vorausgefülltes Textfeld mit dem vollständigen Namen des Benutzers - kann vom Benutzer bearbeitet werden)Email
(nur ein Label) mit der Aufschrift "Zenodo-Mitarbeiter werden sich über Ihre Zenodo-E-Mail bei Ihnen melden : Name
(leeres Textfeld)Email
(leeres Textfeld)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)
Daneben sollte ein Kontrollkästchen (standardmäßig aktiviert) mit der Aufschrift "[x] Senden Sie die Browser- und Systeminformationen" sein.
config.py
wie folgt konfigurierbar sein: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."),
(...)
]
Wenn der Benutzer die Kategorie auswählt, wird unten ein Text angezeigt, der weitere Informationen darüber hinzufügt, was der Benutzer in seine Nachricht aufnehmen sollte (je nach Kategorie).
[ ] Kategorie sollte einen reibungslosen Übergang zwischen den Auswahlmöglichkeiten aufweisen, idealerweise ohne zu viel (falls vorhanden) benutzerdefiniertes Javascript, zum Beispiel dieses Bootstrap-Element: http://getbootstrap.com/javascript/#collapse
[ ] Eine Bestätigungs-E-Mail sollte an den Benutzer gesendet werden, nachdem die E-Mail erfolgreich an uns gesendet wurde.
Dies verhindert, dass der Benutzer uns eine Frage stellt und dann keine Antwort erhält, weil das Formular aus irgendeinem Grund seine Nachricht nicht an uns sendet. Auf dem Formular sollte angegeben werden, dass er innerhalb von 20 Minuten eine Bestätigungs-E-Mail in seinem Posteingang erhalten soll - wenn nicht, sollte er es erneut versuchen oder uns eine E-Mail direkt an [email protected] senden
[ ] Es sollte möglich sein, neben der Nachricht eine Datei hochzuladen, die als E-Mail-Anhang an uns gesendet werden soll. Die maximale Dateigröße sollte konfigurierbar sein und bei größeren Dateien einen Fehler anzeigen, der vorschlägt, stattdessen die URL zu der Datei einzuschließen. Es sollte nirgendwo gespeichert werden, sondern über die Anwendung (Speicher) übergeben und als E-Mail-Anhang direkt in einer Aufgabe gesendet werden.
[ ] Das Formular erfordert etwas Styling und Arbeit am Inhalt (Text/Beschreibungen/Arten von Problemen zur Auswahl usw.)
@jainaman224 Ihr Beitrag ist bereits ein guter Anfang, und ich weiß, dass dies einige zusätzliche Anforderungen sind. Sie können gerne weiter daran arbeiten, wenn Sie noch Interesse haben, aber wissen Sie, dass es nicht zwingend ist, Ihren ersten Beitrag anzunehmen! :)
@lnielsen @krzysztof Ich denke, wir brauchen nicht viele Informationen vom Benutzer. Es wäre also besser, diesen Weg zu gehen https://github.com/jainaman224/zenodo/blob/patch-1/zenodo/modules/pages/views.py#L57 #L60. Bitte korrigiert mich, wenn ich falsch liege.
Dankeschön
@lnielsen @krzysztof Warum ist es vorzuziehen, uap-python
?