client/addons/phone/README.md
Jacob Schmidt 9936d6ddc3
All checks were successful
Build / Build (push) Successful in 28s
feat: Enhance module documentation and features
This commit updates the documentation for several Forge modules, adding comprehensive details about their functionalities, user interfaces, and integration with other systems. Key enhancements include:

- Expanded descriptions for the Admin, Arsenal, Bank, Garage, Interaction, Locker, Medical, Organization, Service, Store, and other modules.
- Added new features such as financial operations, user interface improvements, and integration with organization systems.
- Improved clarity on usage instructions and configuration options across modules.

These changes aim to provide better guidance for users and developers interacting with the Forge client system.
2025-05-25 16:03:03 -05:00

140 lines
3.1 KiB
Markdown

# Forge Phone Module
## Overview
The Phone module provides a comprehensive mobile phone system for the Forge client. It includes features for messaging, email, contacts management, and a modern user interface with various applications.
## Dependencies
- forge_client_main
## Authors
- J. Schmidt
- Creedcoder
- IDSolutions
## Features
### Communication
1. **Messaging System**
- Send and receive text messages
- Message history
- Offline message support
- Message notifications
- Contact-based messaging
2. **Email System**
- Send and receive emails
- Email history
- Offline email support
- Email notifications
- Contact-based emailing
3. **Contact Management**
- Add and remove contacts
- Contact details (name, phone, email)
- Contact list organization
- Quick contact actions
- Contact search
### User Interface
1. **Phone Interface**
- Modern mobile phone design
- Home screen with app icons
- App navigation
- Status bar with time
- Interactive controls
2. **Applications**
- Messages app
- Email app
- Contacts app
- Camera app
- Photos app
- Settings app
- Safari browser
3. **Controls**
- Touch-based interaction
- Button feedback
- Visual indicators
- Smooth transitions
- Intuitive navigation
### System Features
1. **Phone Management**
- Phone initialization
- Action binding
- Variable management
- State persistence
- Profile saving
2. **Data Management**
- Contact storage
- Message history
- Email storage
- Profile data
- Settings persistence
## Event Handlers
The module uses several event handlers for initialization and execution:
- `XEH_preInit.sqf`: Pre-initialization setup
- `XEH_postInit.sqf`: Post-initialization tasks
- `XEH_preStart.sqf`: Pre-start configuration
## Usage
To use the phone module:
```sqf
// Initialize phone
[] call forge_client_phone_fnc_initPhone;
// Add a contact
[cursorObject] call forge_client_phone_fnc_addContact;
// Send a message
["1234567890", "Hello World"] call forge_client_phone_fnc_sendMsg;
// Send an email
["recipient@spearnet.mil", "Subject", "Message"] call forge_client_phone_fnc_sendEmail;
```
## Integration
The phone module integrates with other Forge client systems:
1. **Player System**
- Player identification
- Phone number assignment
- Email assignment
- Profile management
2. **Database System**
- Message storage
- Contact persistence
- Email storage
- Profile data
3. **Notification System**
- Message alerts
- Email notifications
- System notifications
- Status updates
## Debugging
Debug mode can be enabled by uncommenting the following in `script_component.hpp`:
```cpp
#define DEBUG_MODE_FULL
```
## Version Information
Version information is managed through the main Forge client system configuration.
## Technical Details
- Real-time messaging
- Secure data management
- Contact synchronization
- Message persistence
- Email handling
- UI responsiveness
- Cross-module integration
- Event system integration
- State management
- Profile persistence
- Notification system
- Input validation