Communications & Settings
How do I stay in touch and set things up? Mailbox, chat, settings and the Remote SimConnect setup guide.
11.1 Mailbox
Header
- Unread counter — The subtitle shows how many unread messages are in your inbox.
- View toggle — Switches between Strips view (styled rows with a body preview) and compact list view.
- New Message — Opens the compose form.
- Refresh — Reloads messages from the server. The mailbox also auto-refreshes when a Push notification (Mail category) arrives.
Left Panel — Message List
The left panel shows all filterable messages:
- Received tab — Received messages sorted by date descending. Unread messages are indicated by a blue dot and the unread counter.
- Sent tab — Messages sent by your company.
- Search — Filters messages by keywords in subject or body.
Each message shows: sender/recipient airline code, message type badge, subject, body preview, and relative time (e.g. "2h ago").
Message Types
- Message (blue) — Free-text message between companies.
- Hire Offer (green) — Pilot hire proposal.
- Freelance (purple) — Freelance mission offer.
- Aircraft Sale (orange) — Aircraft sale proposal.
- Aircraft Rent (cyan) — Aircraft rental proposal.
- Money Transfer (green) — Money transfer notification.
Right Panel — Detail and Compose
The right panel shows the full content of the selected message: subject, type, sender, recipient, UTC date, and body. A Reply button is available for received messages.
Composing a Message
In compose mode:
- World — If you have access to more than one world, pick the recipient's world. Defaults to your current world. Switching world clears the current recipient.
- To — Type an airline code (4 to 8 characters) or a partner company name. The dropdown blends two sources: your local partners (substring match on code or name) and a server-side exact-code lookup (3 to 5 characters) that lets you reach companies outside your partner list. Those results are tagged NOT PARTNER.
- Subject — Message subject (required).
- Message — Message body (optional).
- Send — Sends the message and switches to the Sent tab.
Tips
- Messages are marked as read automatically when you click on them.
- You can contact a company from other pages (Partnerships, Employees, map) — compose opens with the recipient and world pre-filled.
- When targeting another world, only the server-side code lookup applies — your local partner list belongs to your current world.
11.2 Chat
The Chat page lets you talk in real time with other players in your OnAir world. Messages are delivered live and persist on the server so you can read what was said before you joined.
Layout
- Left panel — Channels — Lists the channels you can join: your world channel (named after your world, e.g. #BlueSkies) and the cross-world channel (#Global). The active channel is highlighted. A small green dot at the bottom shows the realtime connection is live.
- Right panel — Conversation — Shows the active channel's history. The header repeats the channel name and the total number of messages loaded.
Reading messages
- Date dividers — Today, Yesterday, or the date — split the conversation by day.
- Avatar — A colored circle with the first two letters of the company code. Your own messages use the accent blue color.
- Sender — Company code (bold) followed by the full company name. The HH:MM timestamp is shown on the right.
- Grouping — Consecutive messages from the same sender are merged under a single avatar to keep the conversation compact. Anonymous messages are never grouped.
Sending a message
Type your message in the input at the bottom and press Enter (or click Send). Your message appears immediately while it is being broadcast. If the live connection has dropped, the app reconnects automatically and retries once.
Channels
- World channel — Only visible to companies in your world. Best for coordinating flights, asking about local weather, or finding nearby players.
- #Global — Visible to every world. Use it for general OnAir conversation.
Status indicator
At the bottom of the channel list, Live with a green dot means the realtime channel is connected. Connecting... means the app is still establishing or restoring the connection.
Tips
- Click the Refresh button in the page header to reload the history from the server if you suspect something is missing.
- The titlebar unread badge clears as soon as you open this page and stays cleared while you read.
- If the indicator stays on Connecting..., check your network and that the OnAir servers are reachable.
11.3 Settings
Settings configures your account, your simulator, the look of the app, the audio and the company rules. Tabs: Connection, Flight Sim, Sound & Voice, Controls, Preferences, Discord Webhooks, Company Actions, Recovery, About and Release Notes, plus a Staff Tools dropdown at the end for staff-only tools. Click Save top right — though many switches save instantly, with no Save button.
Connection
- Account and sign-out, read-only identifiers, the local airport database, and optional map overlay keys.
- API quota — under your API key, the server time that key may use. Tools that read the public API (scripts, OnAirTools) spend it: 1 CU (compute unit) is 1 ms of OnAir server time, refilled at 1 CU per second up to 15 000 CU. When it runs out the API refuses the tool with HTTP 429 until it refills, and the row says how long to wait. Refresh reads it again; the detail lists which calls cost the most since the server last restarted. The Companion itself does not use this API, so it never spends your quota.
- Secure DNS — optional. The app resolves OnAir server addresses over an encrypted connection instead of asking the name server your router or provider gave you. Try it if the app cannot reach the server while the rest of the machine browses fine: a broken local resolver is a common cause. Leave it off if you filter DNS on purpose (Pi-hole, AdGuard, NextDNS, parental controls) — encrypted lookups bypass them.
- A subscription that runs out while you play is now caught in session, not only at the lobby: instead of every action failing without explanation, you get the refusal, a Check again button and a renewal link.
Flight Sim
Left — accounts and gameplay: Navigraph, SimBrief (username or Pilot ID plus a 3-letter airline code), VATSIM, Hoppie ACARS, Crew Groups, opt-in in-flight emergencies and de-icing penalty, and the automatic start of tracking above 10 kt ground speed, which can be switched off.
Right — the simulator: which one you fly (MSFS 2020/2024, Prepar3D, FSX, X-Plane plugin or Web API), the X-Plane folder and plugin, remote simulator setup with its own guide behind the question mark, Test Simulator, company behaviour switches (on Cumulus also Don't force time in sim, to fly at the time you set in the simulator, and the checkride difficulty), community packages, in-sim 3D scenery with a self-test, and the airport layout cache.
In-game panel (MSFS). It is installed for you — there is nothing to switch on inside the simulator, and the Old Client's switch for it has no equivalent here. In MSFS, look for the OnAir icon with a small dot in the simulator toolbar; the plain OnAir icon belongs to the Old Client's panel and will not connect to the Companion. Restart MSFS once after the first install. To remove it, untick Install the OnAir Minimap in-game panel under community packages.
ATC on your route. One option, Show online ATC on your route, off by default, shows the online VATSIM controllers on your flight: the airport chips, the controllers ahead in Overview, the next one in the flight header, and the airspace bands (Navigraph data package needed) — see Flight Management. Off, none of it is shown and no request is made for it.
Navigraph-only airports. Some airports exist in MSFS only through the Navigraph data package (navigraph-nav-base, in your Community folder). The Companion looks for it: when it is installed and active, those airports are available in your job lists and pickers; otherwise they are hidden from your job lists, maps and pickers, like any airport MSFS does not have (unless you have unticked Only use Simulator vanilla airports in Preferences). This only concerns MSFS. In Flight Sim, under Navigraph, one sentence says what was found. If the Community folder cannot be found, a linked Navigraph account is used instead.
Sound & Voice
Local text-to-speech with one switch per kind of announcement, so you decide what is spoken.Also here: master volume (0 % mutes the app), per-sound switches, the destination-country radio at touchdown, and an opt-in looping alarm when tracking breaks.
The ATC on your route channel carries the spoken advisories about the online VATSIM controllers ahead of you, off by default; they speak only when Show online ATC on your route is on in Flight Sim too.
Controls
Bind a simulator button to a Companion action: start or resume tracking, register the finished flight, spoken weather and briefings, radio. Press Listen, then the button on the simulator side — every simulator can be captured except the legacy X-Plane plugin.
Preferences
Appearance (day or night, theme, font, 60-150 % zoom), units and help language, the company name and code (a name of 4 to 25 characters and a code of 4 letters or digits, 5 for a Virtual Airline; a code that is not available is refused when you save; in VA mode it renames the Virtual Airline, Manager role or above), and the company job rules: airport sizes, simulator-native airports, SimBrief-known airports, employee rest, level-mission aircraft, pay bonus and, on Cumulus, instant pilot and employee transport, the whole skill tree unlocked and the minimum aircraft renting time. Display & Connection Fixes all need a restart: flashing or overlapping pages, blurry rendering, forced display scale, and forced HTTP/1.1 — on by default, to get past antivirus and proxy software.
Discord Webhooks
Post your flights to a Discord channel: the OnAir server sends a message when a flight starts, is registered or is canceled — AI flights included, their pilot marked “(AI)”. In Discord, create a webhook (Server Settings → Integrations → Webhooks), paste its URL on the card of the event you want, tick Active and click Save webhooks — this tab has its own Save. Test posts the message once, saved or not; its variables come from your latest registered flight flown in the simulator. Each card has a Flights posted list: all flights, human pilots only, or AI flights only; with AI only, Test uses your latest AI flight. The webhooks belong to the company you are working as: a Virtual Airline has its own (Dispatcher role or above to change them), and flights flown for it — on its aircraft or for its jobs — are posted there too.
In-flight events (sent by this Companion) — a second kind of webhook, at the bottom of the tab, that this Companion posts itself while it tracks one of your flights: tracking started, engines, take-off, flight phases, landing and its rating, incidents, mission events, then flight registered or canceled. Every message carries the full Flight ID and Aircraft ID, the Real UTC time and the Sim time, in fields with fixed names that a tool reading the channel can rely on; tick Attach event.json to also get them as a JSON file, one event per message. Procedures and penalties and Aircraft settings are off by default: they post many messages. It saves as you change it, on this computer, for the company you are working as (a Virtual Airline has its own). Only flights this Companion tracks are posted: AI flights, the Old Client and the web version send nothing, and anyone who has the URL can post in the channel.
Company Actions, Recovery, About
- Management mode (Freelance or Advanced, 7-day cooldown either way), Pause Company with its fee and what stops, and the destructive Close Company — 7 days to recover through support.
- World transfer & economy ruleset (Advanced mode) — move the company to an easier world: Thunder to Stratus or Cumulus, Stratus to Cumulus. You cannot transfer to a world where you already have a company. Every aircraft must be idle on the ground, and airport ownerships are released, except basecamps. A company in the Challenging economy can also switch to Classic, which removes the weekly fleet and FBO management fees and raises job pay, freelance jobs and regular routes aside; it erases the company's leaderboard entries. Neither step can be undone. Only the founder can do it for a VA, once all members have accepted on the Virtual Airline page.
- Recovery lists flights tracked but never registered; one still open on the server offers Resume, and an unreachable server says so instead of offering to erase.
- About — version, tier, and a support card: diagnostic log, update check, request statistics.
Partner apps and connection recovery. Connection offers a local flight-data feed for partner apps on this PC. It is on by default; read its description to see what it shares, and turn it off there if you prefer. If the world connection fails, the recovery panel explains the current reconnection attempt and offers the available next action; wait for a successful sign-in before retrying company operations. First-time Advanced unlock uses its own quotation; later mode switches have their normal cooldown.
11.4 Remote SimConnect — setup guide
How to run MSFS, Prepar3D or FSX on one PC and the Companion on another, on the same local network. The same wiring applies to every simulator that uses SimConnect.
Not for X-Plane. X-Plane has its own remote path, set in the simulator picker above the remote switch: a text file holding the address for the classic plugin, or the simulator's HTTP port in Web API mode. No SimConnect file is involved.
Why use it
With a dedicated simulator PC you can run the Companion on a laptop, a second screen, or anywhere on the network. Remote mode polls the simulator at half the local rate to save bandwidth; fuel and payload writes, set position and set time all keep working.
It works with MSFS 2020 and 2024, Prepar3D v4 and v5, and FSX including Steam Edition. On macOS and Linux it is the only way to use a simulator with the Companion: the SimConnect server itself only runs on Windows, so the simulator PC must be a Windows machine reachable on your network. There the checkbox is forced on, with an orange hint saying so.
Step 1 — generate the file
SimConnect only listens on the machine it runs on. To accept connections from the network it needs a SimConnect.xml in the simulator's user config folder. In Settings, Flight Sim, click Generate SimConnect.xml next to Test connection: a window opens with the file ready for your chosen port, and it lists the exact folder for each simulator — Microsoft Store and Steam installs do not use the same one. Copy the file, save it there, and back up any existing one first.
Step 2 — open the port on the simulator PC
The default port is 500. In Windows Defender Firewall add an inbound rule for TCP port 500, allow the connection, and tick the Private profile only. Do not tick Public: SimConnect has no authentication of any kind.
Step 3 — restart the simulator
The file is read at startup and only then. Quit the simulator completely — the process must actually end — and launch it again.
Step 4 — set up the Companion
In Settings, Flight Sim, tick Simulator runs on a remote computer — the question mark beside it reopens this guide. Enter the simulator PC's address on the network, leave the port at 500, and click Test connection: the answer comes back in a second or two. Save, then connect from the title bar.
If it does not work
- Timeout — SimConnect is not listening on the network. Check the folder you put the file in, restart the simulator, check the firewall rule.
- Connection refused — the machine answered but nothing is on that port: the simulator is not running, or the two ports do not match.
- Test passes, connecting fails — another Companion is still connected, and only one client at a time is allowed.
- Updates feel slow — expected: remote polls at half the local rate. Every flight phase is still detected.
- Wi-Fi — prefer a cable. SimConnect tolerates packet loss, but jitter above 200 ms makes the position stutter.
Security
SimConnect has no authentication: anyone on your network who knows the address and the port can read and write simulator data. Use it on a trusted home network only, and keep the firewall rule on the Private profile.