Mini Projet

De $1

Table des matières
aucun titre

Dans ce mini projet, vous aurez à compléter l'application en y ajoutant quelques fonctionalités. La principale fonctionnalité consiste à implémenter la reception de notification dans l'application. Pour cela vous allez suivre étape par étape les instructions se trouvant à l'addresse (https://developers.google.com/cloud-...android/client). 

  1. Suivez bien les instructions et intégrer le support du GCM dans l'application que vous avez développé dans les TPs.  Vous pouvez vous inspirer de ce projet datant de l'année dernière. 
  2. Modifier le processus d'inscription d'un utilisateur en y ajoutant l'identifiant obtenu dans l'étape 1. Pour cela, il faudra ajouter un attribut supplémentaire dans la classe Person, appelez l'attribut gcmKey. Il faudra aussi ajouter l'identifiant de votre application sur Google Console. 
  3. Implementer la fonction "Buzz" qui permettra de notifier un serveur quand une commande est prête (dans le cadre du TP, on va laisser tout le monde envoyer des Buzz à tout le monde).  Pour cela, vous utiliserez le bouton "buzz" de la liste des utilisateurs. En cliquant sur le bouton :
    1. Une notification sera envoyé à l'utilisateur concerné (On buzz un utilisateur s'il est connecté)
    2. La couleur du bouton passe en bleu (et le nombre de notification en attente s'affichera dans le bouton)
  4. Concevoir un menu pour l'application avec les fonctionnalités suivantes :
    1. Afficher la liste des utilisateurs
    2. Prendre une commande 
    3. Voir mes commandes validées 
    4. Voir mes commandes en cours 
    5. Voir mes notification

Méthodes supplémentaires du Web service 

Envoyer une notification 

Type: POST 

URL : http://95.142.161.35:8080/buzz/

data: 

{
"receiver: {}, // La personne qui recoit le buzz
"sender": {}, //La personne qui envoie le buzz 
}
Une notification PUSH sera envoyée au receiver

 Liste des notifications 

Type: GET

URL : http://95.142.161.35:8080/buzz/[user_id]

Reponse 

{
  success: true, 
  data: [] //list de buzzes
}

Liste commandes en cours 

Type: GET 

URL : http://95.142.161.35:8080/person/menus/[user_id]

Réponse: 

{   
"status": true,   
"menus": [] 
}  
status = false, un message d'erreur vous est retourné  
Example : http://95.142.161.35:8080/person/menus/5833023cb549726b71281e80
 

Ajouter clef GCM : Permet de modifier la clef GCM d'un utilisateur s'il se connecte sur un autre téléphone 

Type: GET

URL : http://95.142.161.35:8080/addkey/[user_id]/[key]/[firebase_key]

user_id: ID de l'utilisateur pour lequel on veut ajouter la clef 
gcm_key: La clef GCM à enregistrer 
firebase_key: La clef obtenu à partir de Google Console 

Reponse : 

{
  "status": true,
  "message": "La clef a été ajoutée"
}
Si status = false, la cause de l'erreur est renvoyée.
Exemple: 
http://95.142.161.35:8080/addkey/58502bdc627437a050978de3/blablablablabla/AIzaSyCeEUQN13WOTERndBOabiBoVt_nMDyISW0
La clef blablablablabla sera ajoutée pour l'utilisateur 58502bdc627437a050978de3