Send message to delivery
POST/company/delivery/msg/:id
Envoyez un message dans le chat d'une livraison, avec la possibilité de joindre des fichiers.
Objectif
Faciliter la communication directe entre l'entreprise et le transporteur dans le contexte d'une livraison spécifique.
Cas d'utilisation
- Coordonner les détails du chargement/déchargement
- Notifier des changements urgents dans l'opération
- Partager des photos ou documents pertinents
- Résoudre des incidents pendant le transport
Flux de validation
flowchart TD
A[Recevoir un message] --> B{Le message a-t-il du texte ?}
B -->|Non/Vide| C[400 NOT_MESSAGE]
B -->|Oui| D{La livraison est-elle active ?}
D -->|Non| E[403 NOT_ALLOWED]
D -->|Oui| F{Utilisateur authentifié ?}
F -->|Non| G[404 USER_NOT_FOUND]
F -->|Oui| H[Créer l'objet Message]
H --> I{Y a-t-il des fichiers ?}
I -->|Oui| J[Ajouter les clés S3 au message]
I -->|Non| K[Continuer]
J --> K
K --> L[Ajouter au tableau messages]
L --> M[Sauvegarder la livraison]
M -->|Erreur| N[503 Erreur]
M -->|Succès| O[Retourner tous les messages DESC]
Notes
- Le paramètre {id} peut être service_code ou MongoDB _id
- Accepte jusqu'à 6 fichiers (multipart/form-data)
- Les fichiers sont sauvegardés dans S3 avec la clé S3
- Seules les livraisons actives peuvent recevoir des messages (vérification isActive)
- Retourne tous les messages triés par createdAt DESC
- Les fichiers sont renvoyés avec le chemin complet /images?file=
Request
Responses
- 200
- 400
- 403
- 404
- 503
Message envoyé avec succès
Message vide ou invalide.
L'envoi n'est pas actif. Les messages ne peuvent pas être envoyés.
Utilisateur ou envoi introuvable.
Erreur lors de l'enregistrement du message.