أضف نموذج اتصال للسماح بإدارة الدعم بشكل أسهل:
هل يمكنني محاولة إضافة هذا التحسين ...؟
@ jainaman224 نعم ، سيكون ذلك في الواقع مساعدة كبيرة
الفكرة الرئيسية هي أن الكثير من الناس يتصلون بنا (zenodo.org - الخدمة) ، بخصوص المشاكل الشائعة ، والتي عادة ما تكون:
في كثير من الأحيان لا تتضمن الكثير من المعلومات (مثل نظام التشغيل ، المتصفح) ، وفي كثير من الأحيان لا يحددون السجل الذي يريدون إزالته / تحديثه. في بعض الأحيان ينسون ذكر ما هو بريدهم الإلكتروني Zenodo (وغالبًا ما يكون مختلفًا عن البريد الإلكتروني الذي يكتبون إلينا منه).
الفكرة الرئيسية هي جلب وتضمين أكبر قدر ممكن من تلك المعلومات وإرسالها إلينا من خلال النموذج ، لذلك
المهمة هي تنفيذ النقطتين 1. و 2. ، يمكننا التفكير في نص جميل في النموذج (النقطة 3.) معًا لاحقًا.
من المحتمل أن يرسل هذا النموذج إلينا بريدًا إلكترونيًا ، حيث يمكن أن يتضمن الجزء السفلي من نص البريد الإلكتروني سلسلة منسقة مسبقًا تحتوي على هذه المعلومات.
هل أحتاج إلى تطبيق هذا النموذج https://zenodo.org/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 هل يمكنني إدراجه لاحقًا بمجرد الموافقة على الهيكل الأساسي ...؟
بصرف النظر عن بعض الإصلاحات العامة ، تبدو العلاقات العامة بواسطة @ jainaman224 رائعة بالفعل: https://github.com/zenodo/zenodo/pull/1008
لجعل هذه الميزة جاهزة للإنتاج ، يلزم إجراء بعض التغييرات الإضافية:
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."),
(...)
]
عندما يختار المستخدم الفئة ، يتم عرض نص أدناه ، والذي يضيف بعض المعلومات الإضافية عما يجب على المستخدم تضمينه في رسالته (حسب الفئة).
[] يجب أن تعرض الفئة انتقالًا سلسًا بين الاختيارات ، من الناحية المثالية بدون الكثير من جافا سكريبت المخصص (إن وجد) ، على سبيل المثال عنصر التمهيد هذا: http://getbootstrap.com/javascript/#collapse
[] يجب إرسال بريد إلكتروني للتأكيد إلى المستخدم بعد إرسال البريد الإلكتروني إلينا بنجاح.
يمنع هذا النوع المستخدم من طرح سؤال علينا ومن ثم عدم الحصول على رد لأن النموذج لا يرسل لنا رسالته لسبب ما. في النموذج ، يجب الإشارة إلى أنه يجب أن يتلقى رسالة تأكيد بالبريد الإلكتروني على صندوق الوارد الخاص به في غضون 20 دقيقة - إذا لم يكن كذلك ، فيجب عليه إعادة المحاولة أو إرسال بريد إلكتروني إلينا مباشرة إلى [email protected]
[] ينبغي أن يكون من الممكن تحميل الملفات جنبًا إلى جنب مع الرسالة ، والتي يجب إرسالها إلينا كمرفق بالبريد الإلكتروني. يجب أن يكون الحد الأقصى لحجم الملف قابلاً للتكوين وعرض خطأ للملفات الأكبر حجمًا مما يقترح تضمين عنوان URL للملف بدلاً من ذلك. لا ينبغي تخزينها في أي مكان ، ولكن يتم تمريرها عبر التطبيق (الذاكرة) وإرسالها كمرفق بريد إلكتروني مباشرة في مهمة.
[] يتطلب النموذج بعض التصميم والعمل على المحتوى (النص / الأوصاف / أنواع المشكلات للاختيار وما إلى ذلك)
@ jainaman224 مساهمتك هي بالفعل بداية جيدة ، وأنا أعلم أن هذه بعض المتطلبات الإضافية. أنت مرحب بك لمواصلة العمل على هذا إذا كنت لا تزال مهتمًا ، ولكن اعلم أنه ليس من الإلزامي قبول مساهمتك الأولى! :)
lnielsenkrzysztof أعتقد أننا لا نحتاج الكثير من المعلومات من المستخدم. لذلك ، سيكون السير بهذه الطريقة أفضل https://github.com/jainaman224/zenodo/blob/patch-1/zenodo/modules/pages/views.py#L57 # L60. يرجى تصحيح لي إذا كنت مخطئا.
شكرا لك
lnielsenkrzysztof لماذا يفضل استخدام uap-python
؟