UHA 4.0décembre 2025
Projet Push To Talk Pusheo
Application mobile de type Push To Talk en React Native
React NativeRainbow SDKLibrairie Flic2TypeScriptJavascriptAndroidAgileScrum

Contexte du projet
Ce projet a été réalisé dans le cadre de ma formation à l’UHA 4.0 en développement web full stack, au cours de l’année 2025.
Il s’agit d’un projet de groupe, mené sur une période de 6 semaines, avec une organisation agile et un suivi régulier de l’avancement.
L’objectif était de concevoir une application mobile de type Push To Talk, permettant à des utilisateurs de communiquer vocalement en temps réel au sein de canaux, à la manière de talkies-walkies numériques.
L’application devait être utilisable aussi bien via l’interface tactile du smartphone que via un bouton physique connecté.
Besoin et objectif
Développer une application mobile Push To Talk permettant à des utilisateurs :
de rejoindre des canaux de discussion vocale,
de communiquer de manière instantanée en appuyant sur un bouton,
de garantir une communication fluide, contrôlée et adaptée à des usages professionnels ou collaboratifs.
Le projet met l’accent sur la gestion du micro, la priorité de parole, et l’intégration de matériel externe pour améliorer l’ergonomie.
Fonctionnalités principales
- Connexion des utilisateurs à l’application
- Liste des canaux de communication disponibles
- Ouverture et fermeture d’un canal vocal
- Gestion du Push To Talk :
- Appui pour parler
- Relâchement pour couper le micro
- Mute automatique des autres utilisateurs lorsqu’un utilisateur parle
- Affichage des utilisateurs présents dans un canal
- Intégration d’un bouton physique Flic pour déclencher la prise de parole
- Gestion des permissions micro sur mobile
- Interface adaptée à un usage mobile (Android)
Défis rencontrés
Comprendre et intégrer un SDK tiers complexe (Rainbow) avec une documentation partiellement orientée usage natif
Gérer correctement les états du micro pour éviter les conflits audio
Synchroniser l’état de parole entre plusieurs utilisateurs connectés au même canal
Intégrer un bouton matériel externe (Flic) dans une application mobile React Native
Garantir une expérience utilisateur fluide malgré les contraintes mobiles (permissions, latence, interruptions)
Ce que j’ai appris
- Développement d’applications mobiles avec React Native
- Intégration et utilisation d’un SDK de communication temps réel
- Gestion fine de l’audio et des permissions sur Android
- Interaction entre application mobile et hardware externe
- Importance de la gestion des états et des événements dans une application temps réel
- Travail en équipe sur un projet technique avec des contraintes fortes
Galerie

Avis visiteurs
Chargement des avis...
