Mallory Lehuault-Parc - FIPA SE 2023
SendApp est un application de messagerie instantannée qui permet d'entretenir des conversations chiffrées de bout en bout entre tous les utilisateurs.
Vous pourrez retrouver dans le répertoire doc toutes les informations et les recherches liées à ce projet. Dans le répertoire sendapp se trouve les codes faisant fonctionner la messagerie.
Le projet ce base sur Django qui est un framework web open source en Python. L'application utlise le protocole Websocket, le serveur fonctionne de paire avec Daphne qui est un serveur qui gère ce type de protocoles.
Copie des fichiers sources depuis Github :
git clone https://github.com/MalloryLP/sendapp.git
Le projet fonctionne avec Python et dépend de ces paquets :
- django
- channels
- django-sslserver
Mise en place de l'environnement virtuel Python sur Linux :
export PIPENV_VENV_IN_PROJECT=1
pipenv install -r requirements.txtLancement de l'environnement pipenv : pipenv shell
Mise en place de l'environnement virtuel Python sur Windows:
$env:PIPENV_VENV_IN_PROJECT=1
python -m pipenv install -r ./requirements.txtLancement de l'environnement pipenv : python -m pipenv shell
Sur Linux dans deux shells pipenv distincs :
cd sendapp
python manage.py migrate --run-syncdb
python manage.py runsslserver --certificate sendapp/certif.pem --key sendapp/code.pem 0.0.0.0:8000cd sendapp
export DJANGO_SETTINGS_MODULE = 'sendapp.settings'
daphne -e ssl:8001:privateKey=sendapp/code.pem:certKey=sendapp/certif.pem sendapp.asgi:applicationSur windows dans deux shells pipenv distincs :
cd ./sendapp
python ./manage.py migrate --run-syncdb
python ./manage.py runsslserver --certificate ./sendapp/certif.pem --key ./sendapp/code.pem 0.0.0.0:8000cd ./sendapp
$env:DJANGO_SETTINGS_MODULE = 'sendapp.settings'
daphne -e ssl:8001:privateKey=./sendapp/code.pem:certKey=./sendapp/certif.pem sendapp.asgi:applicationSi vous rencontrez un problème lié aux modèles de données :
- Supprimez la base de données
db.sqlite3 - Lancez la commande :
python ./manage.py migrate --run-syncdb
Si vous avez besoin de créer un compte administrateur :
python ./manage.py createsuperuserAllez à l'url suivante dans votre navigateur internet préféré sur smartphone :
https://[host_machine_ip]:8000/homeConnectez-vous ou créez un compte, discutez 😃