{"id":28369809,"url":"https://github.com/dkern/minoss-pushover","last_synced_at":"2025-07-26T00:37:12.726Z","repository":{"id":57298101,"uuid":"70915744","full_name":"dkern/minoss-pushover","owner":"dkern","description":"Pushover Module for Minoss.","archived":false,"fork":false,"pushed_at":"2020-07-24T11:47:11.000Z","size":9,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-29T12:48:36.537Z","etag":null,"topics":["iot","minoss","nodejs","pushover"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dkern.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-10-14T14:04:22.000Z","updated_at":"2020-07-24T11:47:03.000Z","dependencies_parsed_at":"2022-09-06T04:20:18.232Z","dependency_job_id":null,"html_url":"https://github.com/dkern/minoss-pushover","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/dkern/minoss-pushover","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkern%2Fminoss-pushover","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkern%2Fminoss-pushover/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkern%2Fminoss-pushover/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkern%2Fminoss-pushover/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dkern","download_url":"https://codeload.github.com/dkern/minoss-pushover/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkern%2Fminoss-pushover/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267093916,"owners_count":24034957,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-25T02:00:09.625Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["iot","minoss","nodejs","pushover"],"created_at":"2025-05-29T05:45:05.711Z","updated_at":"2025-07-26T00:37:12.717Z","avatar_url":"https://github.com/dkern.png","language":"JavaScript","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=93XQ8EYMSWHC6)!"],"categories":[],"sub_categories":[],"readme":"# Pushover for Minoss\n[![GitHub version](https://badge.fury.io/gh/dkern%2Fminoss-pushover.svg)](http://github.com/dkern/minoss-pushover)\n[![NPM version](https://badge.fury.io/js/minoss-pushover.svg)](http://www.npmjs.org/package/minoss-pushover)\n[![Dependency version](https://david-dm.org/dkern/minoss-pushover.png)](https://david-dm.org/dkern/minoss-pushover)\n\nThis module adds support for Pushover notifications to [Minoss](https://github.com/dkern/minoss) server.\nThe API communication is based on [`pushover-notifications`](https://www.npmjs.com/package/pushover-notifications).\n\n\n## Table of Contents\n* [Installation](#installation)\n* [Configuration](#configuration)\n* [Basic Usage](#basic-usage)\n* [Parameter Shorthand](#parameter-shorthand)\n* [Message Builder](#message-builder)\n  * [Using `JSON` as Message Object](#using-json-as-message-object)\n  * [Chaining Messages](#chaining-messages)\n* [Bugs / Feature request](#bugs--feature-request)\n* [License](#license)\n* [Donation](#donation)\n\n\n---\n\n\n## Installation\nInside your Minoss root folder just use [npm](http://npmjs.com) to install this Module.\n\n```SH\n$ npm install minoss-pushover\n```\n\n\n## Configuration\nBy default there are two configuration files available inside the `config/` folder: `apps` and `messages`.\nThe configuration for `messages` is optionally.\nIt is possible to store different predefined message objects there, if wanted.\nFor more details take a look inside the files or read about the [message builder](#message-builder).\n\nBefore using this module the `apps` configuration should be set up.\nThis file contains the `user_key` and `app_token` for all pushover apps where notifications should be send to.\n\nIt is possible to store the apps under own names.\nThe name `default` is a reserved name.\nIt will select this app whenever no app name was given by request parameters.\nSo, if only one app is available, the name `default` should be used.\n\n```JS\nmodule.exports = {\n    default: {\n        user:  '14a6b88846b28898a237fa3f84148f54',\n        token: '30f28fcb0c97083d20a8cd06f3f6e737'\n    },\n    another: {\n        user:  '85b9e76dc041b411b04b5c1f49cba885',\n        token: '8d0771a0757289d942db83db090623d6'\n    }\n};\n```\n\n\n## Basic Usage\nThe basic usage is pretty simple.\nWhen a `default` app is defined just call the `send` script with a supplied `message` string to be send.\nFor more parameters take a look at the [pushover api](https://pushover.net/api) or the [parameter shorthands](#parameter-shorthand).\n\n\u003e http://localhost:8080/pushover/send?message=my%20custom%20message\n\n\n### Parameter Shorthand\nAll request parameters can be shorten to it's first character (_except `url_title` and `timestamp`, which are shorten with `ut` and `ts`_).\nWith this it is possible to use shorten URLs.\n\n```TEXT\napp        -\u003e  a\nmessage    -\u003e  m\ndevice     -\u003e  d\ntitle      -\u003e  t\nurl        -\u003e  u\nurl_title  -\u003e  ut (!)\npriority   -\u003e  p\ntimestamp  -\u003e  ts (!)\nsound      -\u003e  s\n```\n\nExample:\n\n\u003e http://localhost:8080/pushover/send?**app**=default\u0026**priority**=1\u0026**device**=*  \n\u003e http://localhost:8080/pushover/send?**a**=default\u0026**p**=1\u0026**d**=*\n\n\n## Message Builder\nPushover messages are basically a JavaScript `object`.\nIt is possible to set all the options of the [official api](https://pushover.net/api) via request parameters.\nBut is is even possible to let these message objects build on request.\n\nMessages can be predefined in [configuration](#configuration).\nIf there are messages configured they can be send by it's name on request:\n\n\u003e http://localhost:8080/pushover/send?message=**name**\n\n\n### Using `JSON` as Message Object\nIt is possible to use a `JSON` string as message object on request.\nIt works the same way as with predefined messages: \n\n\u003e http://localhost:8080/pushover/send?message=**{\"message\":\"my message\",\"device\":\"\\*\"}**\n\n\n### Chaining Messages\nThe message builder can even handle a chain of messages.\nThese messages has to be separated by a pipe `|` on request.\nIt will combine all messages in the given order.\nWhen a message property is set by more than one entry, the last one will be set.\n\nFor example, these are predefined states:\n\n```JS\nlet messages = {\n    default: {\n        device: '*',\n        priority: 0\n    },\n    high: {\n        priority: 1\n    }\n}\n```\n\nAnd this request:\n\n\u003e http://localhost:8080/pushover/send?message=**default|high|my%20message%20text**\n\nThe resulting message object would become:\n\n```JS\n{\n  message: 'my message text',\n  device: '*',\n  priority: 1\n}\n```\n\nIt is even possible to chain a `JSON` string too.\n\n\u003e http://localhost:8080/pushover/send?message=**default|high|{\"message\":\"my message\"}**\n\n\n## Bugs / Feature request\nPlease [report](http://github.com/dkern/minoss-pushover/issues) bugs and feel free to [ask](http://github.com/dkern/minoss-pushover/issues) for new features directly on GitHub.\n\n\n## License\nMinoss is dual-licensed under [MIT](http://www.opensource.org/licenses/mit-license.php) and [GPL-2.0](http://www.gnu.org/licenses/gpl-2.0.html) license.\n\n\n## Donation\n_You like to support me?_  \n_You appreciate my work?_  \n_You use it in commercial projects?_  \n  \nFeel free to make a little [donation](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=93XQ8EYMSWHC6)! :wink:\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdkern%2Fminoss-pushover","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdkern%2Fminoss-pushover","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdkern%2Fminoss-pushover/lists"}