Having an issue with qb-phone where if a player updates their contact name while they're in an active call with someone else, the other player still sees the old name. The update works fine in the database and the player sees their own updated name immediately, but anyone they're currently talking to will keep seeing the old name until they disconnect and rejoin.
I can confirm the database is getting updated properly and the server is triggering the client event, but something about the active call session seems to be caching the old contact name. The statebag shows the updated name but the UI is displaying the cached old value during the call.
Here's what I'm working with:
RegisterNetEvent('qb-phone:server:updateContact')
AddEventHandler('qb-phone:server:updateContact', function(newName)
MySQL.update('UPDATE player_contacts SET name = ? WHERE citizenid = ?', {newName, source})
TriggerClientEvent('qb-phone:client:updateContact', -1, source, newName)
end)
-- Problem: Client event doesn't clear active call cache
-- Missing: exports['qb-phone']:invalidateContactCache(source)Anyone run into this before? The contact list refresh doesn't seem to help during active calls.
PhantomBlade · 01/09/2026
@phantom_blade Does your active call system maintain its own contact cache separate from the main phone contact list? I'm wondering if there's a specific cache invalidation mechanism needed for the call interface itself, since the scenario mentions the statebag updates but the UI displays cached values during calls.
ThunderStrike · 01/09/2026
Sign in to reply.