이 프로젝트는 더 이상 사용되지 않습니다. 새롭고 개선 된 버전이 출시되었습니다.
https://github.com/bearle/django_private_chat2
확인하십시오.
다른 패키지 https://github.com/bearle/django_mail_admin도 확인하십시오
Django 일대일 WebSocket 기반 Asyncio Handled Chat, Bearle Team이 개발했습니다

이 앱은 Django 컨텍스트에서 WebSockets를 실행하기 위해 별도의 관리 명령 인 run_chat_server를 사용합니다. Supervisor 또는 SystemD와 같은 Asyncio Webserver를 Django와 별도로 실행하는 데 사용됩니다. 우리는 앱이 Django 채널과 함께 사용되기를 원하지 않았습니다. 그래서 우리는 그렇게했습니다.
https://github.com/bearle/django-private-chat/blob/dev/example.service에서 서비스로 실행하려면 Systemd 구성 예제를 찾을 수 있습니다.
추신 chat_ws_server_host && chat_ws_server_port && chat_ws_server_protocol 설정을 변경하는 것을 잊지 마십시오!
전체 문서는 (마지막으로) https://django-private-chat.readthedocs.io입니다. 당신은 또한 docstrings & this readme를 확인할 수 있습니다.
Repo를 복제하고 예제/ 디렉토리로 향하여 예제 프로젝트를 확인할 수 있습니다. 확인할 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-Private-Chat 설치 :
PIP 설치 Django-Private-Chat
마이그레이션 :
Python manage.py Migrate django_private_chat
참고 : UVLoop의 유무에 관계 없이이 패키지를 사용할 수 있습니다.
python manage . py run_chat_server또는 실행
python manage . py run_chat_server_uvloopinstalled_apps에 추가하십시오.
INSTALLED_APPS = (
...
'django_private_chat' ,
...
)Asyncio 서버의 서버 및 포트를 설정에 추가하십시오.
CHAT_WS_SERVER_HOST = 'localhost'
CHAT_WS_SERVER_PORT = 5002
CHAT_WS_SERVER_PROTOCOL = 'ws'DateTime 형식을 사용하여 메시지를 변경할 수 있습니다
DATETIME_FORMATDjango-Private-Chat의 URL 패턴 추가 :
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 파일이어야합니다. 그런 다음 인증서 (.key 및 .crt 파일을 연결하는 것일 수 있음). WSS는 Python 3.5 & 3.4에 기본적으로 TLSV1을 사용하며 SSL.Protocol_TLS_SERVER를 3.6 이상으로 사용합니다. 특징 --------
-: White_check_mark : 현재 앱 모델을 사용합니다 (get_user_model () 및 settings.auth_user_model)
-: white_check_mark : translatable (ugettext and { % 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 백엔드 인터 삽입
코드가 실제로 작동합니까?
소스 <yourvirtualenv>/bin/activate (MyEnv) $ pip 설치 독소 (myenv) $ tox
이 패키지 렌더링에 사용되는 도구 :