Relay vPilot and Hoppie messages to your mobile device via Pushover, Telegram, Gotify or Bark, or publish them to an MQTT broker. Hoppie is integrated directly, meaning you can use any aircraft with this plugin.
Also have a look at my other projects at my homepage: https://blt950.com
I won't make an X-Plane variant of this plugin, see reasoning here.
You need vPilot that you use to connect to VATSIM. Then choose one of the notifiers under Settings and follow its prerequisites.
- Make sure your vPilot is not running
- Download the latest release
.ziponly from the releases page - Extract the zip file and move both
vPilot-Pushover.dllandvPilot-Pushover.inito your vPilot plugin folder, usuallyC:\Users\<your username>\AppData\Local\vPilot\Plugins - Open
vPilot-Pushover.iniin a text editor and configure your desired settings - When you start vPilot you should now get a "Connected. Running version x.x.x" push notification. If not, see troubleshooting below.
In the vPilot-Pushover.ini file, you can configure the following settings.
| Key | Description |
|---|---|
Driver |
Choose one notifier, write pushover, telegram, gotify, bark or mqtt in lowercase. Only one notifier can be active at a time. |
You can only use one notifier at a time. Expand the one you set as Driver and configure only that section; the others are not used. Each lists its prerequisites and settings.
Pushover
Prerequisites
- Create your own Pushover API key which is for your personal use
- Pushover has a 30-day trial you can try out before you pay the one-time $5 for a lifetime subscription. You can use Pushover for much more than this plugin, the subscription is in no way tied to this plugin
Settings in the [Pushover] section
| Key | Description | Default |
|---|---|---|
UserKey |
Your Pushover user key. You can find this on the Pushover dashboard | required |
ApiKey |
Your Pushover API key. You need to create this yourself in Pushover | required |
Device |
The device name to send the notifications to. If you leave this blank, it will send to all devices. If you want to specify multiple devices, separate them with a comma, e.g. iphone,nexus5 |
blank |
HighPriRetries |
How often, in seconds, Pushover re-alerts an unacknowledged high priority (priority 2) notification until you acknowledge it. Minimum 30 |
30 |
HighPriExpire |
How long, in seconds, Pushover keeps retrying a high priority notification before giving up. Maximum 10800 |
300 (5 minutes) |
Priority: -2 to 2, see the Pushover docs. Priority 2 is an emergency notification that repeats using HighPriRetries/HighPriExpire until you acknowledge it.
Telegram (by @rensdebee)
Prerequisites
- Create a Telegram bot for credentials you need for the settings
Settings in the [Telegram] section
| Key | Description | Default |
|---|---|---|
BotToken |
Your Telegram bot API key, see this for instructions | required |
ChatId |
Your Telegram bots chat id key, see this for instructions | required |
Priority: Not used, Telegram ignores the Priority settings.
Gotify (by @nonenty)
Prerequisites
- It's required to install a Gotify server beforehand. Check Gotify Docs for more information
- Please note that only Android phones are officially supported by them. See this
Settings in the [Gotify] section
| Key | Description | Default |
|---|---|---|
Url |
Your Gotify server address. For example, https://push.example.com or https://example.com/gotify, depending on your server configuration. |
required |
Token |
Your Gotify application token, see this | required |
Priority: 0 to 10, see the Gotify docs.
Bark (by @PorridgePi)
Prerequisites
- Install the iOS App from the App Store
- (Optional) Set up a self-hosted backend server using Finb/bark-server following the Deployment Guide
Settings in the [Bark] section
| Key | Description | Default |
|---|---|---|
Url |
Your Bark server address. Only change this if you self-host a backend server with a custom domain. | https://api.day.app |
Key |
Your Bark push key. Follow the Tutorial to obtain your key. | required |
Priority: -1 to 2, mapping to the passive, active, timeSensitive and critical levels, see the Bark docs.
MQTT (by @rick2909)
Prerequisites
- Use any MQTT 3.1.1-compatible broker. Messages are published at QoS 0.
- The payload is JSON with separate
title,message,priority, andsourceproperties. - TLS is supported with broker hostname certificate validation.
- See this MQTT guide if you intend to use MQTT with Home Assistant.
Settings in the [MQTT] section
| Key | Description | Default |
|---|---|---|
Host |
MQTT broker hostname or IP address | required |
Port |
MQTT broker port | 1883, or 8883 when UseTls=true |
Topic |
MQTT topic to publish notifications to | required |
Username |
Broker username | optional |
Password |
Broker password | optional |
UseTls |
Whether to use TLS. Set to true or false |
false |
Priority: Passed through unchanged as the priority property in the JSON payload, so you decide what it means in your automation.
Each message type below has an Enabled key (true or false) and a Priority key. Priority sets how urgently the notification is delivered. The allowed range depends on your driver, see Priority in your driver's section above.
| Section | Relays | Default priority |
|---|---|---|
[RelayPrivate] |
Private messages, including contact me's | 1 |
[RelayRadio] |
Radio messages meant for your callsign, e.g. ATC writing to you on text | 1 |
[RelaySelcal] |
SELCAL alerts | 1 |
[Disconnect] |
A message when you are disconnected from the network | 1 |
[Hoppie] |
Hoppie/ACARS messages. Also requires LogonCode, see below |
0 |
| Key | Description |
|---|---|
Enabled |
Whether or not to relay Hoppie messages. Set to true or false |
LogonCode |
Your Hoppie logon code |
Priority |
Notification priority for Hoppie/ACARS messages (see Messages). Default 0 |
Advanced Options
Enabled = Will start vPilot silently without the startup notification. Set to true or false
- Make sure you have placed the plugin in the correct folder, usually like this
C:\Users\<your username>\AppData\Local\vPilot\Plugins\vPilot-Pushover.dlland.iniin the same folder. - Make sure you've configured both your Pushover user key and your Pushover (or other driver) API key and that they are each surrounded by quotation marks.
- Make sure there's no
RossCarlson.Vatsim.Vpilot.Plugins.dlland.xmlinside thevPilot\Pluginsfolder. There's a known issue where FSLabs installer mistakenly places these file in the folder which breaks the vPilot plugin functionality. - Your Windows might have blocked the
.dllfile. This is because the.dllis not code-signed as it's a hobby project and I don't have $200/yearly to purchase a verification. Before you unblock the file, check it with your antivirus or upload it to VirusTotal. If you're comfortable to proceed, right click on thevPilot-Pushover.dll, open Properties, unblock and apply to allow vPilot to load the plugin.
Still having an issue? Make an issue request here on Github.
Feel free to contribute by creating pull requests or issues in this Github!
How to build the project
The project references the vPilot SDK assembly used by the plugin API. Its location is different between developer machines, so it is not hard-coded in the project file.- Copy
Directory.Build.props.exampletoDirectory.Build.props. - Set
VpilotPluginsPathto the full path ofRossCarlson.Vatsim.Vpilot.Plugins.dllon your machine. - Run
dotnet build.
You can also set the path for one build without creating the local props file:
dotnet build -p:VpilotPluginsPath="C:\path\to\RossCarlson.Vatsim.Vpilot.Plugins.dll"The VPILOT_PLUGINS_DLL environment variable is also supported.
