Skip to content

About

Plugin for vPilot to Pushover vPilot and Hoppie messages

Topics

Resources

Stars

37 stars

Watchers

4 watching

Forks

Repository files navigation

vPilot Pushover

Github All Releases

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.

Image of example notification of contact me

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.

Prerequisites

You need vPilot that you use to connect to VATSIM. Then choose one of the notifiers under Settings and follow its prerequisites.

Installation

  1. Make sure your vPilot is not running
  2. Download the latest release .zip only from the releases page
  3. Extract the zip file and move both vPilot-Pushover.dll and vPilot-Pushover.ini to your vPilot plugin folder, usually C:\Users\<your username>\AppData\Local\vPilot\Plugins
  4. Open vPilot-Pushover.ini in a text editor and configure your desired settings
  5. When you start vPilot you should now get a "Connected. Running version x.x.x" push notification. If not, see troubleshooting below.

Settings

In the vPilot-Pushover.ini file, you can configure the following settings.

[General]

Key Description
Driver Choose one notifier, write pushover, telegram, gotify, bark or mqtt in lowercase. Only one notifier can be active at a time.

Notifier

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

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

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, and source properties.
  • 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.

Messages

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

[Hoppie]

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

[SilentStartup]

Enabled = Will start vPilot silently without the startup notification. Set to true or false
⚠️ Warning: Connection notification verifies that the plugin communicates with the driver when vPilot starts and alerts you immediately if there's an issue. We don't offer support if you turn this off.

Troubleshooting

I don't receive any connected notification

  • Make sure you have placed the plugin in the correct folder, usually like this C:\Users\<your username>\AppData\Local\vPilot\Plugins\vPilot-Pushover.dll and .ini in 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.dll and .xml inside the vPilot\Plugins folder. 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 .dll file. This is because the .dll is 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 the vPilot-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.

Contribution

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.
  1. Copy Directory.Build.props.example to Directory.Build.props.
  2. Set VpilotPluginsPath to the full path of RossCarlson.Vatsim.Vpilot.Plugins.dll on your machine.
  3. 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.

About

Plugin for vPilot to Pushover vPilot and Hoppie messages

Topics

Resources

Stars

37 stars

Watchers

4 watching

Forks

Releases

Used by

Contributors

Languages