- Updated README.md files for extension, garage, locker, main, organization, phone, store, and task addons to provide clearer overviews, dependencies, main components, and usage notes. - Improved task module documentation to clarify timer semantics and server task flows, ensuring accurate usage of time limits. - Adjusted default values for task time limits and IED timers to enforce positive countdown requirements. - Added new CAD addon for dispatch coordination, including its overview, dependencies, main components, and event handling.
1.3 KiB
1.3 KiB
Forge Server Phone
Overview
The phone addon is the server-side bridge for contacts, SMS messages, and email. Phone runtime state is owned by the extension. SQF stores preserve the event-facing API and synchronize client UI state.
Dependencies
forge_server_mainforge_server_commonat runtime for online player lookupforge_server_extensionat runtime for phone extension callsforge_client_phonefor response RPCs
Main Components
fnc_initPhoneStore.sqfcoordinates the phone facade.fnc_initContactStore.sqfmanages contacts.fnc_initMessageStore.sqfmanages SMS messages and threads.fnc_initEmailStore.sqfmanages email messages.fnc_initPlayer.sqfinitializes phone data for a player.
Persistent Extension Tables
phone_user: owner row for an initialized phone profilephone_contact: per-owner contact rows keyed by owner UID and contact UIDphone_message: shared message recordsphone_message_index: per-owner message visibility and read statephone_email: shared email recordsphone_email_index: per-owner email visibility and read statephone_sequence: global sequence state for generated message and email IDs
Event Surface
The addon handles client requests to initialize phone state, add/remove/refresh contacts, send/read/delete messages, send/read/delete emails, and remove phone state.