esup-multi

Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

Connecteur appelé par le module notifications. Il devra permettre et donc proposer des routes pour les actions suivantes : 

Sommaire
maxLevel12

Enregistrement du token FCM de l’utilisateur

Paramètres d'appels

URL en méthode POST

Bloc de code
<host>/<uri>/register
  • host : adresse du serveur
  • uri : chemin éventuel vers le service

Body de la requête :

Bloc de code
{
  username: String, 
  token: String,   
  platform: String, 
  ip: String        
}
  • username : Login de l'utilisateur (obligatoire)
  • token token : Token FCM retourné par Firebase (obligatoire)
  • platform : Plateforme du périphérique (iOS, Android, Web, AmazonFire) (obligatoire)
  • ip : IP depuis laquelle le périphérique s'enregistre

...

HTTP 4xx ou 5xx : En cas de problème ou erreur

Suppression du token FCM de l’utilisateur (lors du logout)

Paramètres d'appels

URL en méthode POST

Bloc de code
<host>/<uri>/unregister
  • host : adresse du serveur
  • uri : chemin éventuel vers le service

Body de la requête :

Bloc de code
{
  username: String, 
  token: String     
}
  • username : Login de l'utilisateur (obligatoire)
  • token token : Token FCM retourné par Firebase (obligatoire)

...

HTTP 4xx ou 5xx : En cas de problème ou erreur

Récupération des notifications de l’utilisateur

Paramètres d'appels

URL en méthode GET

Bloc de code
<host>/<uri>/notifications/<username>
<host>/<uri>/notifications/<username>?offset=0&length=10
  • host : adresse du serveur
  • uri : chemin éventuel vers le service
  • username : Login de l'utilisateur (obligatoire)
  • offset : offset de la prochaine notification à récupérer. Les notifications seront triées de la plus récente à la plus ancienne.
  • length : nombre de notifications à récupérer à partir de l’offset

Par défaut, si les paramètres offset et length ne sont pas renseignés, l’API retournera les 20 notifications les plus récentes.

...

title
Bloc de code
{
  id: String,             // id de la notif en base
  author: String,         // auteur de la notif (Nom prénom). Default = '@system'
  channel: String,        // canal de diffusion
  title: String,          // titre de la notification
  message: String,        // message de la notification
  state: String,          // état de la notification (READ, UNREAD)
  url?: String,           // lien de la page externe vers laquelle rediriger le user
  creationDate: Datetime, // date de la notification
}
Avertissement
Todo

détailler

  • id : Id de la notification en base
  • author : Auteur de la notification (Nom  prénom). Par défaut @system
  • channel : Canal de diffusion
  • title : Titre de la notification
  • message : Message de la notification
  • state : État de la notification (READ, UNREAD)
  • url : Lien vers une page externe
  • creationDate : Date d'emission de la notification

Cas d'erreur

HTTP 4xx ou 5xx : En cas de problème ou erreur

Marquer une ou plusieurs notifications comme lues

Paramètres d'appels

URL en méthode POST

Bloc de code
<host>/<uri>/notifications/read
  • host : adresse du serveur
  • uri : chemin éventuel vers le service

Body de la requête :

Bloc de code
{
  username: String,           
  
  notificationIdnotificationIds: [String]
}
  • username : Login de l'utilisateur (obligatoire)
  • notificationId : tableau des Id de notification à passer comme "lues"

...

HTTP 4xx ou 5xx : En cas de problème ou erreur

Marquer une ou plusieurs notifications comme non lues (pas utilisée)

Paramètres d'appels

URL en méthode POST

Bloc de code
<host>/<uri>/notifications/unread
  • host : adresse du serveur
  • uri : chemin éventuel vers le service

Body de la requête :

Bloc de code
{
  username: String,           
  notificationId: [String]
}
  • username : Login de l'utilisateur (obligatoire)
  • notificationId : tableau des Id de notification à passer comme "lues"

...

HTTP 4xx ou 5xx : En cas de problème ou erreur

Récupérer la liste des canaux pour lesquels l’utilisateur a désactivé les notifications

Paramètres d'appels

URL en méthode GET

Bloc de code
<host>/<uri>/channels/{username}
  • host : adresse du serveur
  • uri : chemin éventuel vers le service
  • username : Login de l'utilisateur (obligatoire)

Format de retour

Format attendu

...

Bloc de code
{
  channels: [String]    
}
  • channels : Liste des canaux pour lesquels l'utilisateur s'est désabonné

...

HTTP 4xx ou 5xx : En cas de problème ou erreur

Gérer les abonnements de l’utilisateur au canaux

Paramètres d'appels

URL en méthode PATCH

Bloc de code
<host>/<uri>/channels
  • host : adresse du serveur
  • uri : chemin éventuel vers le service

Body de la requête :

Bloc de code
{
  username: String,       
  channels: [String],      
}
  • username : Login de l'utilisateur (obligatoire)
  • channels : Liste des canaux pour lesquels l'utilisateur s'est désabonné

...

HTTP 4xx ou 5xx : En cas de problème ou erreur

Supprimer une notification

Paramètres d'appels

URL en méthode DELETE

Bloc de code
<host>/<uri>/notifications
  • host : adresse du serveur
  • uri : chemin éventuel vers le service

Body de la requête :

Bloc de code
{
  username: String,           
  notificationId: String
}
  • username : Login de l'utilisateur (obligatoire)
  • notificationId : Id de la notification à supprimer (obligatoire)

...