Scripts 2026-04-20

Agency-Phone : Le smartphone conçu spécifiquement pour FiveM

TDYSKY

TDYSKY

Founder & Lead Developer at Agency Scripts

Démo en direct

Essayez Agency Phone dans votre navigateur — sans téléchargement.

Ouvrir la démo

Pourquoi construire encore un autre téléphone FiveM ?

On a construit Agency-Phone parce que chaque téléphone qu'on a essayé sur nos propres serveurs était soit beau mais mal optimisé, soit performant mais au design daté. Le marché était plein de compromis. On voulait quelque chose qui ressemble vraiment à un smartphone moderne au moment où tu l'ouvres, et qui atteigne quand même 0,00ms d'utilisation au repos quand il traîne dans la poche de quelqu'un.

Une UI qui n'a pas l'air FiveM

La plupart des téléphones FiveM trahissent leur origine deux secondes après leur ouverture. Les polices sont légèrement à côté, les animations sont saccadées, la disposition de l'écran d'accueil ressemble à un placeholder. Agency-Phone a été conçu par des gens qui utilisent de vrais smartphones au quotidien. Chaque élément — de l'horloge de l'écran verrouillé à la physique ressort du tiroir d'apps — a été itéré jusqu'à ce qu'il arrête de ressembler à un script et commence à ressembler à un vrai téléphone.

L'architecture des apps

Sous le capot, Agency-Phone utilise un système d'apps en lazy-loading. Les apps n'initialisent leur UI que quand elles sont réellement ouvertes, ce qui garde l'utilisation mémoire stable même quand on ajoute de nouvelles apps. Le bus d'événements entre le Lua client et la couche NUI est debounced pour que les actions utilisateur rapides n'inondent pas le jeu de pics resmon. C'est le genre de travail d'ingénierie que personne ne voit mais dont tout le monde profite quand son serveur tient 128 joueurs.

Framework-agnostique par défaut

Agency-Phone est livré avec des adaptateurs pour QBCore et ESX mais le cœur est indépendant du framework. Si tu fais tourner un serveur standalone avec ta propre couche de données joueur, tu peux le brancher en un après-midi en implémentant quatre fonctions de lookup. On refuse de livrer des scripts qui t'enferment dans un seul framework parce que les frameworks passent — on a vu passer au moins trois vagues de "c'est ça le standard maintenant" pendant notre temps dans la communauté.

L'intérêt d'un téléphone en RP

Un téléphone FiveM est au final un outil social. Les joueurs s'en servent pour organiser des rencards, gérer des deals de drogue, envoyer un message au perso de leur patron, écouter de la musique sur l'app radio. Tout ce qu'on ajoute ou qu'on retire d'Agency-Phone est jugé à l'aune de cette question : est-ce que ça rend l'interaction sociale plus facile ou plus fun ? C'est pour ça qu'on a livré une app galerie avant les rappels de calendrier, et pour ça que l'app de messagerie de base a des indicateurs de frappe riches avant d'avoir l'envoi programmé. Le RP d'abord, la checklist de fonctionnalités ensuite.

Installation et configuration

Agency-Phone nécessite oxmysql pour la persistance des contacts, messages et journaux d'appels. Importez phone.sql dans votre base de données, téléchargez la ressource depuis Tebex, copiez dans votre répertoire de ressources et ajoutez ensure agency-phone à server.cfg. La détection du framework est automatique pour QBCore et ESX. Pour les configurations autonomes, implémentez les quatre fonctions d'adaptateur dans config.lua.

Options de configuration

  • Raccourci clavier du téléphone — touche pour ouvrir/fermer le téléphone. Défaut : M.
  • Téléphone comme article — activer si un article téléphone est requis dans l'inventaire. Défaut : désactivé.
  • Intégration Twitter/LifeInvader — connectez Agency-LifeInvader si installé.
  • Routage des notifications — quels scripts externes peuvent envoyer des notifications au téléphone.

Compatibilité avec les frameworks

Agency-Phone est livré avec des adaptateurs QBCore et ESX. Pour les serveurs autonomes, le même schéma à quatre fonctions s'applique. Une fois l'adaptateur écrit pour un script Agency, les scripts suivants partagent les mêmes fonctions.

Pourquoi c'est important pour le roleplay

Un téléphone est le prop le plus personnel qu'un personnage porte. Les joueurs interagissent avec lui chaque session — passer des appels, envoyer des SMS, vérifier leur solde bancaire, regarder la carte. Quand cette interaction ressemble à un vrai téléphone, les sessions RP qui impliquent l'utilisation du téléphone semblent aussi plus réelles. La coordination sociale est la fonction RP la plus critique du téléphone. La plupart des événements RP importants commencent par une communication — quelqu'un tend la main, organise une réunion, fournit des coordonnées. Toute cette communication est plus immersive quand elle passe par des canaux en-personnage.

Choisir Agency-Phone plutôt que les alternatives

Il existe une poignée de scripts de téléphone FiveM bien maintenus. L'architecture de performance est fondamentalement différente. De nombreuses alternatives réduisent les coûts d'inactivité en désactivant des fonctionnalités quand le téléphone est fermé. L'usage inactif de 0,00ms d'Agency-Phone provient de l'architecture de chargement paresseux, pas de la désactivation de fonctionnalités. Le schéma d'adaptateur de framework est rare dans la catégorie téléphone. Les décisions de design ont été prises par de vrais utilisateurs de smartphones quotidiens.

Foire aux questions

Les numéros de téléphone peuvent-ils persister entre les réinitialisations de serveur ?

Les numéros de téléphone sont stockés dans oxmysql contre l'identifiant de personnage. Tant que l'identifiant de personnage est préservé lors d'une réinitialisation, le numéro persiste.

La police peut-elle tracer les appels et messages en temps réel ?

Oui. Activez le système de traçage dans config.lua. Les officiers de police avec le flag de permission requis peuvent ouvrir le panneau de traçage et rechercher par numéro.

Prérequis

  • Serveur FiveM (QBCore, ESX ou autonome)
  • oxmysql
  • Compte cfx.re avec licence Agency-Phone valide
  • Optionnel : Agency-LifeInvader, Agency-Pad

Architecture technique d'Agency Phone

Sous le capot, Agency Phone est construit sur une architecture NUI (Native UI) qui utilise HTML, CSS et JavaScript pour l'interface. Cela signifie que les développeurs familiers avec le développement web peuvent personnaliser et étendre l'interface facilement.

Points techniques clés :

  • Interface en React.js pour une expérience fluide et réactive
  • Communication NUI événementielle avec le backend Lua
  • Données persistées via oxmysql pour les contacts, messages et paramètres
  • Support des ressources de téléphonie tierces via un système de callbacks

API pour développeurs

Agency Phone expose une API pour que les développeurs puissent ajouter des fonctionnalités. Vous pouvez créer de nouvelles "applications" qui s'intègrent dans l'interface du téléphone, envoyer des messages et notifications depuis d'autres ressources, accéder aux contacts et à l'historique d'appels avec les permissions appropriées. Cette extensibilité fait d'Agency Phone une plateforme, pas seulement une application.

Gestion des contacts et organisation

Les contacts dans Agency Phone supportent les groupes, les favoris, les photos de profil, et des notes personnalisées. Pour un personnage de criminel, ses contacts peuvent être organisés en groupes séparés pour "fournisseurs", "clients", et "contacts de confiance". Cette organisation aide les joueurs à maintenir leurs relations RP de manière réaliste.

Compatibilité et mises à jour

Agency Phone est maintenu activement et mis à jour pour rester compatible avec les nouvelles versions de FiveM et les changements de framework. Les mises à jour sont disponibles via le système de gestion de ressources Agency Scripts, avec des notes de version détaillées pour chaque changement. La communauté Agency Discord est active pour le support et les demandes de fonctionnalités.

Share this article

Ready to upgrade your server?

Check out our premium FiveM scripts in the Agency Scripts store or join our Discord community for support and updates.