Description
An in-phone voice and video calling system for ESX or QB that bridges the phone UI to the server voice layer (pma-voice or native mumble), with ringing, answer/decline, hold, multi-party conference and a persisted call log. Servers buy it because a clean, server-authoritative call registry — not a client that opens its own channels — is the single hardest part of shipping a premium phone.
Prompt Template
You are writing a FiveM resource for esextended (stable, exports getSharedObject).
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth — both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access — pay once
- All 510 prompts — the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates — new niches as the market moves
$49 for 60 · $199 for all 510 + intelligence — one-time, no subscription.
Expected Output
The reference Lua lives at content/expected-outputs/phone/07-voice-video-calling.lua. It implements a server-owned call registry that mints call ids and voice channels, rings the resolved callee,…
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth — both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access — pay once
- All 510 prompts — the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates — new niches as the market moves
$49 for 60 · $199 for all 510 + intelligence — one-time, no subscription.
Known Failure Modes & Corrective Prompt
- Client-trusted channel — Claude lets the client open/join a voice channel on its own say-so, enabling spoofed calls and eavesdropping; the call id, roster and channel must be minted and tracked server-side keyed by source.
- Anim before load — the phone-raise
TaskPlayAnimno-ops if the dict is not loaded; alwaysRequestAnimDict+ aHasAnimDictLoadedwait loop. - One-sided net event —
call:stateon only one side leaves the callee's ring/answer/hold un-round-tripped and the channel desynced; both sides useRegisterNetEvent+AddEventHandler.
Corrective re-prompt: "Move call id, channel and participant roster into server.lua keyed by callId, resolve the callee by number server-side, reject self/busy, and only broadcast the voice channel to confirmed participants after call:answer — never let the client open a channel or claim it is connected."
Framework Integration
- ESX:
local ESX = exports['es_extended']:getSharedObject(); resolve numbers viaMySQL.scalaronusers.phone_numberand notify withESX.ShowNotification. - QBCore:
local QBCore = exports['qb-core']:GetCoreObject(); resolve viaplayers.charinfo->'$.phone'and useQBCore.Functions.GetPlayerByPhone. - QBox:
exports.qbx_core:GetPlayerByPhone(number); drive the channel withexports['pma-voice']calls server-side.
Profit Potential
$150–$2000/mo on Tebex (expected ~$500). [INFERRED] within the $50-389 script band against the signal-scraper tebex_snapshot corpus (n=100, median seller $11.85K/mo), sized for a stable phone-call niche.
Trend Signal
→ stable — inferred: Voice-bridge integration (pma-voice/mumble) is the hard part; steady demand, no fresh signal.
Sales Angle
Position as the hard-to-build centerpiece of a premium phone bundle — the server-authoritative voice bridge is the differentiator competitors fake client-side. Recommended Tebex price $129.
Difficulty & Ship Time
advanced · ships in 2-3 days.