LVK.Pushover 0.1.4

dotnet add package LVK.Pushover --version 0.1.4
                    
NuGet\Install-Package LVK.Pushover -Version 0.1.4
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="LVK.Pushover" Version="0.1.4" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="LVK.Pushover" Version="0.1.4" />
                    
Directory.Packages.props
<PackageReference Include="LVK.Pushover" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add LVK.Pushover --version 0.1.4
                    
#r "nuget: LVK.Pushover, 0.1.4"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package LVK.Pushover@0.1.4
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=LVK.Pushover&version=0.1.4
                    
Install as a Cake Addin
#tool nuget:?package=LVK.Pushover&version=0.1.4
                    
Install as a Cake Tool

LVK.Pushover

build codecov codeql

This library add a comprehensive client for the pushover.net push notification service to .NET.

Installation

Install the LVK.Pushover package using your favorite nuget package tool, or the command line:

dotnet add package LVK.Pushover

Configuration

Assuming you're in a project using the Microsoft.Extensions.DependencyInjection and Microsoft.Extensions.Hosting packages, you can add the client to your project with this statement. Add it to your Program.cs file:

builder.Services.AddPushoverClient(options => options
    .WithApiToken(builder.Configuration["Pushover:ApiToken"]));

Usage

Simply inject the IPushoverClient into your normal classes and call methods on it to send notifications, here is an example:

public class SomeService
{
    private readonly IPushoverClient _pushoverClient;
    public SomeService(IPushoverClient pushoverClient)
    {
        _pushoverClient = pushoverClient;
    }

    public async Task SomeMethod()
    {
        await _pushoverClient.SendMessageAsync(msg => msg
            .WithMessage("Hello from your application")
            .WithTitle("Well hello there!")
            .WithRecipient("your-unique-user-key"));
    }
}

Features

Supports the following Pushover features:

  • Send to one or multiple users or user groups (defined on LVK.Pushover web site)
  • Send to default or specific device(s)
  • Html formatting, Monospace formatting
  • Override message timestamp
  • Specify time-to-live, where message will be deleted on users device after this time
  • Message priority, from lowest to emergency
  • Specify emergency message retry interval, expiration, and optional callback webhook
  • Notification sounds, from built-in to custom
  • Attachments
  • Validate user key and/or devices
  • Check receipts from emergency messages, to see if user has acknowledged the message yet
  • Cancel emergency messages either by their receipt id or one of their tags

Future features

There are more features available through the Pushover API, and I will look into adding more of these in the future.

Specifically, these features looks interesting:

  • Subscription API
  • Groups API
  • Glances API
  • Teams API
  • Licensing API

You can read more about these in the API documentation here.

If there are APIs here that you would like to have now, please create an issue and describe your usecase, and I might prioritize getting it implemented.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.4 241 5/16/2025
0.1.3 214 5/16/2025
0.1.2 217 5/16/2025