تم إهمال هذا المشروع. تم إصدار نسخة جديدة ومحسّنة:
https://github.com/bearle/django_private_chat2
يرجى التحقق من ذلك.
يرجى أيضًا التحقق من حزمة أخرى https://github.com/bearle/django_mail_admin
دردشة معالجة من Django من Django واحد إلى واحد ، تم تطويرها بواسطة Team Bearle

يستخدم هذا التطبيق أمر إدارة منفصل ، Run_Chat_Server لتشغيل WebSockets في سياق Django. يهدف إلى استخدام شيء مثل المشرف أو SystemD لتشغيل خادم الويب Asyncio كواحد منفصل عن Django. لا نريد أن يكون تطبيقنا محدودًا لاستخدامه مع قنوات Django - ولهذا السبب فعلنا ذلك بهذه الطريقة.
يمكنك العثور على مثال على تكوين SystemD لتشغيله كخدمة على https://github.com/bearle/django-private-chat/blob/dev/example.service
PS لا تنس تغيير chat_ws_server_host && chat_ws_server_port && chat_ws_server_protocol!
الوثائق الكاملة هي (أخيرًا) على https://django-private-glist.readthedocs.io. يمكنك أيضًا التحقق من docstrings وهذا readme.
يمكنك التحقق من مشروع المثال الخاص بنا عن طريق استنساخ الريبو والتوجه إلى المثال/ الدليل. يوجد ملف ReadMe للتحقق من البيانات الأولية للتحقق من الدردشة المضمنة.
كيفية تخصيص القالب؟ فقط نسخ:
VenV/lib/pythonx.x/site-packages/django_private_chat/templates/django_private_chat/dialogs.html ل yourapp/templates/django_private_chat/dialogs.html
لا تتردد في تعديلها كما تريد! لقد تركنا رمز JS عن قصد حتى يكون قابلاً للتحرير بسهولة.
تثبيت Django-Priper-Chat:
PIP تثبيت Django-priper-chat
ترحيل:
Python Manage.py Migrate Django_private_chat
ملاحظة: يمكنك استخدام هذه الحزمة مع أو بدون Uvloop ، فقط قم بتشغيل أيضًا
python manage . py run_chat_serverأو الجري
python manage . py run_chat_server_uvloopأضفه إلى installed_apps:
INSTALLED_APPS = (
...
'django_private_chat' ,
...
)أضف الخادم والمنفذ لخادم Asyncio الخاص بك إلى الإعدادات:
CHAT_WS_SERVER_HOST = 'localhost'
CHAT_WS_SERVER_PORT = 5002
CHAT_WS_SERVER_PROTOCOL = 'ws'من الممكن تغيير تنسيق رسائل DateTime باستخدام
DATETIME_FORMATأضف أنماط عنوان URL لـ Django-Priper-Chat:
from django_private_chat import urls as django_private_chat_urls
urlpatterns = [
...
url ( r'^' , include ( 'django_private_chat.urls' )),
...
]يضيف
{ % block extra_js % }{ % endblock extra_js % }إلى القالب الأساسي الخاص بك
الآن يمكنك بدء مربع حوار باستخدام
/مربعات الحوار/some_existing_username
لإنشاء خادم WSS (TLS) بدلاً من ذلك:
python manage . py run_chat_server "path/to/cert.pem"(يعمل أيضًا مع Uvloop). يجب أن يكون ملف "cert.pem" عبارة عن ملف PEM Plain Text يحتوي على مفتاح خاص أولاً ، ثم شهادة (قد تكون سلسلة من ملفات .key و .crt). يرجى ملاحظة أن WSS ستستخدم TLSV1 افتراضيًا لـ Python 3.5 و 3.4 وسوف تستخدم ssl.protocol_tls_server لمدة 3.6 وما فوق. سمات --------
-: white_check_mark: يستخدم نموذج التطبيق الحالي (get_user_model () و settings.auth_user_model)
-: white_check_mark: translatable (يستخدم ugettext و {٪ trans ٪})
-: White_check_mark: دردشة مستخدم فردية
-: white_check_mark: يعمل باستخدام WebSockets
-: white_check_mark: يعمل (اختياريًا) باستخدام اتصالات WSS (TLS) (إخلاء المسئولية - الأمان غير مضمون)
-: white_check_mark: يعرض حالة الإنترنت/غير متصل بالإنترنت
-: white_check_mark: عرض الكتابة/عدم الكتابة
-: white_check_mark: نموذج الرسائل الناعم الحذف -تأكد من الاحتفاظ بالرسائل للامتثال لقوانين حفظ الرسائل
-: white_check_mark: فلاش زر الحوار عندما يكون المستخدم الذي لا تتحدث إليه حاليًا قد كتب لك رسالة
-: point_right: TODO: أضف مربعًا مربعًا إلى القائمة عندما يبدأ جديد
-: Point_Right: TODO: أضف مستخدمًا غير موجه وتنبيهات أخرى
-: point_right: redis redis backend intergration
هل يعمل الرمز بالفعل؟
المصدر <yourvirtualenv>/bin/تنشيط (myenv) $ pip install tox (myenv) توكس $
الأدوات المستخدمة في تقديم هذه الحزمة: