LB Phone est le script de telephone in-game le plus repandu sur les serveurs FiveM roleplay. Son interface de smartphone reproduit un systeme iOS complet avec appels, messages, reseau social, marketplace et camera, le tout exploitable par vos joueurs sans quitter le jeu. Cote serveur, la resource consomme entre 0,00 et 0,09 ms au repos : un impact negligeable, meme sur un VPS d'entree de gamme. Ce tutoriel detaille chaque etape pour installer et configurer LB Phone sur un serveur FiveM heberge sur VPS Linux ou serveur dedie, que vous utilisiez le framework ESX Legacy ou QBCore.
Ce guide s'adresse aux administrateurs qui hebergent et administrent un serveur FiveM et souhaitent deployer LB Phone proprement. Chaque operation est expliquee : prerequis materiels, transfert de fichiers, dependances, import SQL dans la base de donnees, ordre de demarrage dans server.cfg, configuration du framework, parametrage des applications integrees et upload de medias.
Prerequis materiels et acces au serveur
Avant d'installer LB Phone, verifiez que votre machine (VPS ou serveur dedie) repond aux exigences minimales pour heberger un serveur FiveM avec des scripts RP. LB Phone lui-meme est leger, mais il s'ajoute au framework, a l'inventaire, aux vehicules et aux dizaines d'autres resources de votre serveur.
| Composant | Minimum recommande | Pourquoi |
|---|---|---|
| RAM | 8 Go | Le framework ESX ou QBCore, la base de donnees MariaDB et les resources FiveM occupent 4 a 6 Go en exploitation courante. 8 Go de RAM offrent une marge pour les pics de charge. |
| Stockage | SSD 50 Go | Un disque SSD accelere les requetes de la base de donnees et le chargement des resources au demarrage du serveur. Les medias uploades par les joueurs augmentent l'espace disque utilise au fil du temps. |
| Processeur | 4 vCPU | FiveM est essentiellement mono-thread : privilegiez la frequence au nombre de coeurs. |
| Systeme d'exploitation | Debian 12 ou Ubuntu 22.04 LTS | Les deux distributions Linux les plus utilisees pour heberger un serveur FiveM. Windows Server fonctionne aussi. |
| Acces | Root (ou sudo) via SSH | Necessaire pour installer les packages systeme (MariaDB, etc.), administrer la base de donnees et gerer les fichiers du serveur en ligne de commande. |
Votre hebergeur doit fournir un acces SSH avec une adresse IP dediee et un compte root ou sudo. Si vous n'avez pas encore de serveur, consultez le guide des exigences d'hebergement pour FiveM et nos offres VPS Linux.
Prerequis logiciels
- Un serveur FiveM fonctionnel avec txAdmin ou un acces direct aux fichiers de configuration du serveur. Si ce n'est pas encore le cas, suivez d'abord le guide de configuration txAdmin.
- Un framework ESX Legacy ou QBCore deja installe et operationnel. LB Phone supporte aussi QBOX, ox_core et vRP 2.0, mais ce tutoriel se concentre sur ESX et QBCore. Si vous hesitez entre les deux : comparatif ESX Legacy vs QBCore. Pour installer ESX : guide d'installation ESX Legacy.
- Une base de donnees MariaDB 10.11 ou superieure accessible depuis le serveur FiveM. MariaDB 10.11 est requise par LB Phone : les versions anterieures provoquent des erreurs a l'import SQL. Si votre base de donnees n'est pas encore en place, consultez le guide de liaison MySQL pour FiveM. Pour verifier votre version de MariaDB, connectez-vous en SSH et lancez :
mysql -u root -p -e "SELECT VERSION();" - La resource oxmysql installee et demarree : c'est le connecteur de base de donnees standard de l'ecosysteme FiveM.
- Un acces SFTP (ou FTP securise) ou au gestionnaire de fichiers de votre panel (Pterodactyl, txAdmin) pour deposer les fichiers de la resource sur le serveur.
- La licence LB Phone achetee sur le site officiel de LB Scripts et liee a votre compte Cfx.re.
Transferer les fichiers sur le serveur
Une fois la licence LB Phone obtenue et le package telecharge depuis votre espace client LB Scripts, vous devez deposer les fichiers sur votre serveur. Trois methodes courantes selon votre facon d'administrer votre machine :
Via un client SFTP
Connectez-vous a votre serveur avec un client SFTP comme FileZilla ou WinSCP en utilisant votre adresse IP, votre identifiant SSH et votre cle ou mot de passe. Naviguez jusqu'au dossier resources/ de votre serveur FiveM et deposez-y les dossiers lb-phone et lb-phoneprop (le modele 3D du telephone, fourni dans le package).
Via le gestionnaire de fichiers du panel
Si vous utilisez Pterodactyl ou txAdmin, le gestionnaire de fichiers integre permet d'uploader un fichier ZIP puis de l'extraire directement sur le serveur, sans client FTP externe. C'est souvent la methode la plus rapide quand vous administrez votre serveur depuis un navigateur.
Via la ligne de commande (SCP)
Si vous preferez travailler en ligne de commande via un terminal SSH, utilisez scp pour copier les fichiers depuis votre machine locale vers le serveur :
scp -r lb-phone/ user@ADRESSE_IP:/chemin/vers/resources/
scp -r lb-phoneprop/ user@ADRESSE_IP:/chemin/vers/resources/
Remplacez user par votre identifiant SSH (souvent root ou un compte sudo) et ADRESSE_IP par l'adresse IP de votre VPS ou serveur dedie.
Installer les dependances
LB Phone repose sur deux dependances principales, a installer avant la resource du telephone :
oxmysql (obligatoire)
oxmysql est le connecteur MySQL/MariaDB utilise par la quasi-totalite des scripts FiveM modernes pour acceder a la base de donnees. Si votre framework (ESX ou QBCore) fonctionne deja, oxmysql est probablement en place. Verifiez sa presence dans votre dossier resources/ et dans votre fichier server.cfg :
ensure oxmysql
Si oxmysql n'est pas installe, telechargez la derniere release depuis le depot officiel, placez le dossier dans resources/, puis configurez la chaine de connexion a la base de donnees dans server.cfg :
set mysql_connection_string "mysql://user:password@localhost/votre_base_fivem?charset=utf8mb4"
loaf_bcrypt (recommande)
La fonction bcrypt integree a FiveM s'execute sur le thread principal du serveur et provoque un blocage d'environ 80 ms a chaque hachage ou verification de mot de passe. loaf_bcrypt deplace cette operation dans un thread secondaire, ce qui supprime le gel perceptible par les joueurs connectes.
Telechargez la derniere release depuis le depot GitHub loaf_bcrypt, placez le dossier dans resources/, puis ajoutez ces lignes dans server.cfg avant le demarrage de LB Phone :
add_unsafe_worker_permission loaf_bcrypt
start loaf_bcrypt
La directive add_unsafe_worker_permission est requise parce que loaf_bcrypt utilise un worker thread natif. Sans elle, FiveM refuse de demarrer la resource.
screenshot-basic (optionnel)
Si vous voulez activer la fonctionnalite de camera in-game (prise de photos par les joueurs), installez screenshot-basic, la resource officielle Cfx.re de capture d'ecran. LB Phone l'utilise pour capturer le rendu du jeu et l'envoyer vers votre service d'hebergement de medias. Sans cette resource, l'application camera sera desactivee.
Importer le schema dans la base de donnees
LB Phone stocke les contacts, messages, photos et donnees applicatives dans votre base de donnees MySQL/MariaDB. L'import du schema cree les tables necessaires dans la database.
- Effectuez une sauvegarde complete de votre base de donnees avant toute manipulation. En ligne de commande via SSH sur votre VPS ou serveur dedie :
sudo mysqldump -u root -p votre_base_fivem > backup_avant_lbphone.sql
Consultez notre guide sauvegarder et restaurer une base de donnees MySQL FiveM pour la procedure detaillee. - Si vous avez deja eu une version anterieure de LB Phone, supprimez toutes les tables commencant par
phone_dans votre base de donnees avant d'importer. Un schema ancien provoque des conflits de colonnes. - Importez le fichier
lb-phone/phone.sqldans votre base de donnees. Deux options :- Via HeidiSQL (recommande par la documentation officielle) : Fichier, Executer un fichier SQL, selectionnez
phone.sql. HeidiSQL gere correctement les fichiers SQL volumineux, contrairement a phpMyAdmin qui tronque parfois les requetes a l'import. - Via la ligne de commande SSH : connectez-vous au serveur et executez :
sudo mysql -u root -p votre_base_fivem < /chemin/vers/resources/lb-phone/phone.sql
- Via HeidiSQL (recommande par la documentation officielle) : Fichier, Executer un fichier SQL, selectionnez
- Verifiez que les tables
phone_phones,phone_messages,phone_contacts(entre autres) apparaissent dans la base de donnees apres l'import. En ligne de commande :
mysql -u root -p -e "USE votre_base_fivem; SHOW TABLES LIKE 'phone_%';"
Ne pas utiliser XAMPP pour gerer la base de donnees d'un serveur FiveM de production. Sur un VPS Linux (Debian, Ubuntu), MariaDB s'installe depuis les depots officiels avec sudo apt install mariadb-server, ce qui fournit un serveur de base de donnees stable et a jour.
Configurer server.cfg et l'ordre de demarrage
L'ordre de demarrage des resources dans le fichier de configuration server.cfg est critique. LB Phone doit se charger apres toutes les resources dont il depend, et avant les applications custom qui s'y greffent. Voici l'ordre a respecter :
- Le framework (ESX, QBCore ou equivalent)
oxmysql(connexion a la base de donnees)loaf_bcrypt(si installe)screenshot-basic(si installe)lb-phoneprop(le modele 3D du telephone, fourni avec LB Phone)lb-phone- Les applications custom LB Phone (si vous en avez)
Exemple de bloc dans server.cfg pour un serveur ESX heberge sur VPS :
# Framework et base de donnees (deja en place)
ensure oxmysql
ensure es_extended
# Dependances LB Phone
add_unsafe_worker_permission loaf_bcrypt
start loaf_bcrypt
ensure screenshot-basic
# LB Phone
ensure lb-phoneprop
ensure lb-phone
# Apps custom (apres lb-phone)
# ensure mon-app-custom
Attention : si vous utilisez start au lieu de ensure, le comportement est identique au premier demarrage. La difference apparait au redemarrage a chaud : ensure ne relance pas une resource deja active, start echoue silencieusement si elle tourne deja. Privilegiez ensure pour les resources de type framework et start pour loaf_bcrypt (qui necessite la directive add_unsafe_worker_permission au prealable).
Configuration pour ESX et QBCore
LB Phone detecte automatiquement le framework installe sur votre serveur FiveM. Dans la majorite des cas, aucune configuration manuelle n'est necessaire : si ESX Legacy ou QBCore demarre correctement avant LB Phone, le telephone s'y connecte tout seul.
Verifier la detection automatique
Au demarrage du serveur, la console affiche le framework detecte par LB Phone. Si le message indique standalone alors que vous utilisez ESX ou QBCore, verifiez que votre framework demarre bien avant lb-phone dans server.cfg.
Inventaire
LB Phone s'integre au systeme d'inventaire de votre framework. Sur ESX, il supporte ox_inventory nativement. Sur QBCore, la plupart des inventaires courants sont compatibles (qb-inventory, ox_inventory, qs-inventory). Le telephone apparait comme un item utilisable : le joueur l'ouvre depuis son inventaire.
Si vous n'utilisez pas de systeme d'inventaire, LB Phone peut fonctionner en mode keybind : le joueur ouvre le telephone avec une touche configuree dans le fichier de configuration de la resource.
Systeme monetaire
L'application de banque integree au telephone se connecte au systeme economique de votre framework. Sur ESX, elle lit les comptes bank et money du joueur dans la base de donnees. Sur QBCore, elle s'appuie sur le systeme de comptes natif. Aucune configuration supplementaire n'est requise si votre framework economique fonctionne.
Parametrer les applications integrees
LB Phone embarque une vingtaine d'applications preconfigurees. Les principales :
| Application | Fonction | Configuration |
|---|---|---|
| Messages | SMS entre joueurs, conversations de groupe | Aucune, fonctionne nativement |
| Contacts | Carnet d'adresses avec recherche et favoris | Aucune |
| Telephone | Appels vocaux, video, mode haut-parleur | Compatible pma-voice, mumble-voip |
| Camera / Photos | Prise de photos en jeu, galerie, albums | Necessite screenshot-basic + service d'upload |
| Birdy | Reseau social de type Twitter, fil public | Renommable dans les locales |
| InstaPic | Partage de photos, stories | Necessite un service d'upload |
| Marketplace | Annonces d'achat et vente entre joueurs | Aucune |
| DarkChat | Messagerie anonyme | Aucune |
| Banque | Consultation de solde, virements | Connecte au framework automatiquement |
| Crypto | Cryptomonnaie in-game | Activable dans config.json |
| Maps | Carte GPS, points d'interet, itineraires | Aucune |
| Garage | Liste des vehicules du joueur | Connecte au framework automatiquement |
| Musique | Lecteur audio in-game | Aucune |
| Services | Annuaire d'entreprises RP, appel de service | Configurable dans config.lua |
Desactiver ou renommer une application
Pour retirer une application, ouvrez le fichier de configuration lb-phone/config/config.json et supprimez l'entree correspondante dans l'objet apps. L'application disparait du telephone sans laisser de trace.
Pour renommer une application (par exemple remplacer "Birdy" par le nom de votre reseau social RP), modifiez les chaines dans lb-phone/config/locales/fr.json (ou en.json) dans la section APP_NAMES. LB Phone est disponible en plus de 20 langues grace aux traductions communautaires. Pour changer l'icone, remplacez le fichier .jpg correspondant dans lb-phone/ui/dist/assets/img/icons/apps/.
Applications custom
LB Phone permet d'ajouter des applications tierces via la table Config.CustomApps dans lb-phone/config/config.lua. Une application custom peut avoir sa propre interface (UI) ou simplement declencher un export au lancement. Les applications custom doivent demarrer apres lb-phone dans server.cfg.
Le choix de vos scripts et applications merite attention : consultez notre guide ou trouver des scripts FiveM et lesquels eviter avant d'installer des resources tierces.
Configurer l'upload de medias sur VPS
Les fonctionnalites de camera, de partage de photos et d'enregistrement video de LB Phone necessitent un service d'hebergement de fichiers pour stocker les medias uploades par les joueurs. Deux options principales :
Service externe (Fivemanage)
La methode recommandee par la documentation officielle. Fivemanage est un service cloud prevu pour l'ecosysteme FiveM. Vous creez un compte, generez une cle API, et la renseignez dans le fichier de configuration lb-phone/server/apiKeys.lua. LB Phone uploade ensuite les captures directement vers le CDN du service.
Stockage auto-heberge (S3 / R2)
Si vous preferez garder le controle de vos medias et les heberger vous-meme, LB Phone supporte le stockage compatible S3 via la resource lb-presigned. Vous pointez vers un bucket S3 (AWS) ou R2 (Cloudflare) et configurez les identifiants dans le fichier de cles API. Cette option est adaptee aux serveurs RP heberges sur un serveur dedie ou un VPS avec suffisamment d'espace de stockage SSD pour gerer le volume de photos et videos uploades par vos joueurs.
Dans les deux cas, configurez les cles dans lb-phone/server/apiKeys.lua :
-- Exemple pour Fivemanage
ApiKeys = {
Fivemanage = "votre-cle-api-ici"
}
Sans configuration d'upload, les applications Camera, InstaPic et toute fonctionnalite de partage de photo/video seront desactivees.
LB Phone face aux autres scripts telephone FiveM
Plusieurs scripts de telephone coexistent dans l'ecosysteme FiveM. Voici un comparatif pour situer LB Phone face aux alternatives courantes :
| Critere | LB Phone | GCPHONE | NPWD | qb-phone |
|---|---|---|---|---|
| Frameworks supportes | ESX, QBCore, QBOX, ox_core, vRP 2.0, standalone | ESX, QBCore | ESX, QBCore, standalone | QBCore uniquement |
| Interface | iOS complet, personnalisable | Interface basique | Interface moderne | Interface QBCore native |
| Applications integrees | 20+ (Birdy, InstaPic, DarkChat, Crypto, Maps, Services, etc.) | Messages, appels, contacts | Messages, appels, Twitter, photos | Messages, appels, camera |
| Applications custom (API) | Oui, via exports | Limitee | Oui | Non nativement |
| Base de donnees | MariaDB 10.11+ via oxmysql | MySQL via mysql-async ou oxmysql | MySQL via oxmysql | MySQL via oxmysql |
| Licence | Payante (Cfx.re Tebex) | Gratuit (open source) | Gratuit (open source) | Inclus avec QBCore |
| Mises a jour | Regulieres, via escrow Cfx.re | Communautaires | Communautaires | Suivent QBCore |
LB Phone se distingue par la richesse de ses applications integrees et la largeur de sa compatibilite framework. Les alternatives gratuites (GCPHONE, NPWD) conviennent aux serveurs RP avec des besoins basiques en termes de telephone, mais n'offrent pas le meme niveau de personnalisation ni la meme profondeur d'integration avec le framework economique et l'inventaire.
Verifier les performances sur votre serveur
LB Phone est concu pour un impact minimal sur les performances du serveur. Les mesures publiees par le developpeur sur un serveur de 170 joueurs :
| Metrique | Valeur |
|---|---|
| Client au repos | 0,00 a 0,01 ms |
| Client actif (telephone ouvert) | 0,07 a 0,09 ms |
| Serveur | 0,00 a 0,09 ms |
| Memoire client (idle) | ~1,57 Mo |
| Memoire serveur | ~5,20 Mo |
Pour verifier ces chiffres sur votre propre serveur, utilisez la commande resmon 1 dans la console FiveM. Elle affiche la consommation CPU de chaque resource en temps reel. Si lb-phone consomme plus de 0,5 ms au repos, verifiez que loaf_bcrypt est bien installe (sans lui, le hachage bcrypt bloque le thread principal) et que votre version de MariaDB est a jour.
Sur un VPS, surveillez aussi la charge globale du systeme. Un manque de RAM ou un disque dur classique (sans SSD) ralentit l'ensemble des resources, pas seulement LB Phone. Pour aller plus loin sur l'optimisation globale : optimiser les performances d'un serveur FiveM.
Sauvegardes et mises a jour
LB Phone stocke toutes les donnees de vos joueurs (contacts, messages, photos, transactions) dans la base de donnees MariaDB. Des sauvegardes regulieres sont indispensables pour administrer votre serveur sereinement et eviter toute perte de donnees.
Sauvegarder la base de donnees
Avant chaque mise a jour de LB Phone ou de votre framework, effectuez un backup complet de la base de donnees. En ligne de commande via SSH :
sudo mysqldump -u root -p votre_base_fivem > backup_fivem_$(date +%Y%m%d).sql
Ce fichier de sauvegarde contient l'integralite de votre database FiveM (tables du framework, de LB Phone et de tous vos scripts). Conservez-le sur votre machine locale ou sur un espace de stockage distant. Consultez le guide de sauvegarde MySQL pour FiveM pour automatiser vos backups avec un cron job sur votre VPS Linux.
Mettre a jour LB Phone
Les mises a jour sont distribuees via le systeme escrow de Cfx.re. La procedure :
- Sauvegardez la base de donnees et archivez le dossier
lb-phone(vos fichiers de configuration seront ecrases). - Supprimez l'ancien dossier
lb-phonedu serveur. - Deposez la nouvelle version via SFTP ou le gestionnaire de fichiers de votre panel.
- Reappliquez vos modifications dans
config.json,apiKeys.luaet les fichiers de locales. Les mises a jour ecrasent ces fichiers sauf mention contraire dans les notes de version. - Redemarrez le serveur FiveM. Les migrations de base de donnees s'appliquent automatiquement au demarrage.
Erreurs courantes et depannage
Erreur SQL a l'import
Si l'import de phone.sql echoue avec une erreur de syntaxe, verifiez votre version de MariaDB. LB Phone necessite MariaDB 10.11 minimum. Les versions anterieures ne supportent pas certaines syntaxes SQL utilisees par le schema. Mettez a jour MariaDB via les packages de votre distribution (sur Ubuntu ou Debian : sudo apt update && sudo apt upgrade mariadb-server) ou contactez votre hebergeur si vous ne gerez pas la base de donnees vous-meme.
Le telephone ne s'ouvre pas
Verifiez dans l'ordre : (1) que lb-phone demarre sans erreur dans la console serveur, (2) que votre framework ESX ou QBCore est detecte correctement, (3) que l'item phone existe dans votre systeme d'inventaire. Si vous utilisez le mode keybind, verifiez la touche configuree dans le fichier de configuration de la resource.
Les photos ne s'enregistrent pas
Trois causes possibles : screenshot-basic n'est pas installe, le service d'upload n'est pas configure dans apiKeys.lua, ou la cle API est invalide. Verifiez la console serveur pour les messages d'erreur lies a l'upload.
Blocage de 80 ms au demarrage d'un appel
C'est le symptome classique de l'absence de loaf_bcrypt. Installez-le comme decrit dans la section dependances pour deplacer le hachage bcrypt hors du thread principal du serveur.
Erreur "oxmysql not found"
oxmysql doit demarrer avant LB Phone dans server.cfg. Verifiez que le dossier oxmysql est present dans resources/ et que la ligne ensure oxmysql apparait avant ensure lb-phone. Si oxmysql n'est pas installe, telechargez la derniere version depuis le depot officiel et configurez la chaine de connexion a votre base de donnees dans server.cfg :
set mysql_connection_string "mysql://user:password@localhost/votre_base_fivem"
Permissions insuffisantes sur le serveur
Si le serveur FiveM ne parvient pas a lire les fichiers de LB Phone, verifiez les permissions du dossier resources/lb-phone. Sur un VPS Linux, utilisez sudo chown -R pour attribuer les fichiers a l'utilisateur qui execute le serveur FiveM, puis sudo chmod -R 755 pour les permissions de lecture et d'execution.
Conclusion
LB Phone s'installe en plusieurs etapes methodiques : verifier les prerequis du serveur (RAM, SSD, MariaDB 10.11+ sur Debian ou Ubuntu), transferer les fichiers via SFTP ou en ligne de commande, installer les dependances (oxmysql, loaf_bcrypt), importer le schema SQL dans la base de donnees, configurer l'ordre de demarrage dans server.cfg et parametrer l'upload de medias. Le framework ESX ou QBCore est detecte automatiquement, les applications sont preconfigurees et le telephone fonctionne des le premier redemarrage du serveur.
Pour administrer votre serveur FiveM dans la duree, pensez a automatiser vos sauvegardes de base de donnees et a securiser l'acces SSH a votre VPS ou serveur dedie. Une sauvegarde avant chaque mise a jour du script vous permettra de revenir en arriere en cas de probleme.
FiveM
Minecraft
Rust
RedM
Hytale