phpVMS Documentation

website·Indexed 33 days ago

https://docs.phpvms.net/

Documentation for phpVMS v7.x and v8.x, a virtual airline management system. Includes guides on installation via Docker or VPS, server requirements, REST API usage, theme customization using Laravel Blade, and the vmsACARS client and plugin system.

Tokens
48.6K
Snippets
253
Records
403
Agent score
62%

What's inside phpVMS

  1. Overview of phpvms v8.x capabilities

    phpvms v8.x is a platform for operating a virtual airline (VA). It allows administrators to stand up an instance, configure fleets and routes, onboard pilots, and process flight reports. The system is built to be extensible via Laravel-style routes, events, and a REST API, supporting the creation of custom addons, themes, and ACARS plugins.
  2. Overview of ACARS for phpvms 7

    The ACARS application is designed for use with phpvms 7 to automatically report pilot reports from supported flight simulators. It allows for the automatic creation and filing of flights, searching for flights to retrieve bids, and enforcing flight rules (such as gear and light status). The application is designed with a light footprint to ensure low CPU and memory usage.
  3. Retrieve details for a specific flight

    Use the GET /api/flights/{FLIGHT ID} endpoint to get detailed information about a specific flight. The flight_type parameter can be used for filtering.
    GET /api/flights/flightid_1
  4. Automate flight tracking with vmsACARS

    vmsACARS is a desktop client used to track flights automatically and file Pilot Reports (PIREPs). It supports integration with flight simulators including Microsoft Flight Simulator (MSFS), X-Plane, and Prepar3D (P3D).
  5. Interpret phpVMS API error responses

    The phpVMS API follows standard HTTP error codes. Common error responses include:

    • 400: Validation Error. The message parameter in the response body provides details about the bad input.
    • 401: Unauthorized. Returned if the API key is invalid or the user is disallowed from API access. The message parameter provides further details.
    • 404: Not Found. Returned if the requested entity does not exist.
  6. Understand the phpVMS Journaling System

    Journals in phpVMS v7.x are used to track financial transactions for every airline and user. A journal's balance is calculated by summing all credits and subtracting all debits. Transactions are organized into 'groups' to facilitate financial reporting, allowing the system to maintain historical records of charges and payments.
  7. Identify phpVMS API HTTP error codes

    The phpVMS API returns the following status codes for common failure scenarios:

    • 400: Validation Error. The message parameter contains details about the bad input.
    • 401: Unauthorized. Returned if the API key is invalid or the user lacks API access permissions.
    • 404: Not Found. Returned if the requested entity does not exist.
  8. Reference core ACARS TypeScript types

    The ACARS plugin system provides base types in src/types.d.ts to ensure type safety when handling flight and user data. Key types include:

    • Pirep: Contains data available about a PIREP, including associated interfaces such as Airport and Runway.
    • Telemetry: Contains telemetry information transmitted from the flight simulator.
    • User: Contains information regarding the current user.
    • Length: Provides detailed type information for length measurements.
  9. Understand the phpVMS entity hierarchy

    phpVMS models airline operations using a specific hierarchy: An Airline owns multiple Subfleets, and each Subfleet contains Aircraft. Aircraft cannot exist outside of a subfleet. Subfleets serve as the primary unit for bundling fares, gating access by rank, requiring type ratings, and scheduling flights.
  10. phpVMS v8.x System Requirements and Base Framework

    phpVMS v8.x is built upon Laravel 13 and provides official support for PHP 8.4. The codebase has undergone a major refactor to align more closely with standard Laravel conventions.
  11. Retrieve PIREP information by ID

    Use the GET /api/pireps/{PIREP ID} endpoint to retrieve detailed information about a specific Pilot Report (PIREP), including status codes (e.g., OFB, ENR, LDG), aircraft, and airport details.
    GET /api/pireps/pirepid_1
  12. Develop vmsACARS plugins using the acars-pdk

    vmsACARS plugins and scripts are written in TypeScript and transpiled to JavaScript. Using TypeScript is recommended to ensure proper interface adherence and correct enum values. The acars-pdk provides build scripts for transpilation, type checking, linting, and packaging distribution files.