Zenodo: weltweit: Kontaktformular

Erstellt am 20. Nov. 2016  ·  12Kommentare  ·  Quelle: zenodo/zenodo

Fügen Sie ein Kontaktformular hinzu, um eine einfachere Supportverwaltung zu ermöglichen:

  • Das Formular sollte die Leute bitten, direkte Links einzufügen und präzise zu sein. Siehe zum Beispiel https://github.com/support .
  • Das Kontaktformular kann automatisch erkennen, welchen Browser und welches Betriebssystem sie verwenden.
Enhancement

Alle 12 Kommentare

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:

  • Entfernen eines Datensatzes oder Aktualisieren einer Datei zu einem Datensatz irgendwo.
  • Machen Sie etwas mit ihrem Konto.
  • Erhalten eines Fehlers auf einer Seite (500s usw.).

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

  1. Erfassen Sie grundlegende Agenteninformationen (Browser, Betriebssystem, IP). Und senden Sie es mit der E-Mail.
  2. Erfassen Sie den Benutzer, wenn er angemeldet ist und senden Sie seine E-Mail + Benutzer-ID in der E-Mail (das Formular sollte empfehlen, sich zuerst anzumelden).
  3. Textbeschreibung, die angibt, welche Informationen sie enthalten sollten:

    • Notieren Sie die URL oder den DOI, wenn dies für das Problem relevant ist.

    • Fehler-ID, wenn sie eine von einer Seite erhalten (wir können sie leicht auf Sentry überprüfen)

    • URL einer Seite, die für sie möglicherweise abstürzt

    • GItHub-Benutzername/Organisationsname/Reponame, wenn es sich um GitHub handelt.

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):

Vorlage:
https://github.com/zenodo/zenodo/blob/master/zenodo/modules/deposit/templates/zenodo_deposit/delete.html

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:

  • [ ] Verwenden Sie uap-python
  • [ ] Es sollte zwei Varianten des Formulars geben.

    • Wenn Sie angemeldet sind, sollte es vorab ausgefüllt und angezeigt werden:

    • [x] Name (vorausgefülltes Textfeld mit dem vollständigen Namen des Benutzers - kann vom Benutzer bearbeitet werden)

    • [x] Email (nur ein Label) mit der Aufschrift "Zenodo-Mitarbeiter werden sich über Ihre Zenodo-E-Mail bei Ihnen melden :

    • Wenn Sie nicht eingeloggt sind:

    • [x] Name (leeres Textfeld)

    • [x] Email (leeres Textfeld)

  • [x] ReCaptcha-Test, damit wir kein SPAMmed erhalten
  • [x] Das Formular sollte die User-Agent-Informationen anzeigen, die vom Benutzer gesendet werden, dh:
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.

  • [x] Die Kategorie sollte in 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.

    • [ ] Derzeit Webapp-Prozess aufgrund von Dateiserialisierungsproblemen mit Sellerie senden. Sollte behoben werden, indem entweder die Rohbytes und der Dateiname gesendet und dann das Dateiobjekt innerhalb der Aufgabe zusammengesetzt wird.
    • [ ] Es sollte möglich sein, mehrere Dateien zum Senden auszuwählen.
    • [ ] Überprüfen Sie, ob wir ein schöneres Drag-and-Drop-Dateiauswahl-Widget verwenden können.
  • [ ] Das Formular erfordert etwas Styling und Arbeit am Inhalt (Text/Beschreibungen/Arten von Problemen zur Auswahl usw.)

  • [ ] Modul muss mit Python-Linters überprüft werden.

@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 ?

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

bbarker picture bbarker  ·  4Kommentare

wkpalan picture wkpalan  ·  3Kommentare

christianrickert picture christianrickert  ·  3Kommentare

maurice-schleussinger picture maurice-schleussinger  ·  3Kommentare

slint picture slint  ·  5Kommentare