GithubHelp home page GithubHelp logo

pagerduty / chrome-notifier Goto Github PK

View Code? Open in Web Editor NEW
60.0 146.0 35.0 222 KB

Google Chrome extension for PagerDuty desktop notifications.

Home Page: https://chrome.google.com/webstore/detail/pagerduty-notifier/bcmhejapohpmhgnpidaeiaedackacelm

License: Apache License 2.0

JavaScript 70.47% CSS 15.65% HTML 13.88%
pagerduty chrome-notifier chrome-extension notifications team-security in-scope type-service

chrome-notifier's Introduction

PagerDuty Chrome Notifier

A Google Chrome extension to show PagerDuty notifications using Chrome's notification API. The notification will display some information about the alert, along with buttons to acknowledge and resolve it right from the notification!

An example of the notifications.

All you need to do for it to work is to have an active session on your PagerDuty subdomain, or provide a PagerDuty API key for your account.

Using an API Key

The extension can be used without having to provide an API key, however, in that case, it will only work if you have an active session for your PagerDuty domain. That means you must be logged into your domain, but you don't need to keep the tab open.

If you decide to use an API key instead, you can use either a read-only key, or a read/write key. If you use a read-only key, then the Acknowledge and Resolve buttons will not function, as they would not have permission to update your incidents. If you prefer to use a read-only key, you can configure the extension to remove these action buttons from the notifications.

Generating an API Key

See "Generating a General Access REST API Key" for instructions on how to get an API key.

Configuration Options

  • Account Subdomain - (Required) The subdomain for your PagerDuty account. If your account is https://example.pagerduty.com, you would use "example".
  • PagerDuty API Key - (Optional) An API key for your PagerDuty account. If not provided, an active session on your subdomain is needed. If a read-only key is provided, then the Acknowledge/Resolve buttons will be non-functional.
  • Filter Users - (Optional) A list of comma-separated user ID's, which will only trigger notifications for incidents assigned to those users.
  • Filter Teams - (Optional) A list of comma-separated teams ID's, which will only trigger notifications for incidents assigned to escalation policies that belong to those teams.
  • Filter Services - (Optional) A list of comma-separated service ID's, which will only trigger notifications for incidents that are part of those services.
  • Include Low Urgency Alerts? - If checked, then you will receive notifications for low urgency alerts.
  • Remove Ack/Resolve Buttons? - If checked, the Acknowledge/Resolve buttons are removed from the notification. You should use this if you only wish to provide a read-only API key.
  • Open incident in new tab on acknowledge? - If checked, whenever you click the "Acknowledge" button, the incident page will be opened in a new tab.
  • Require interaction to dismiss notification? - If checked, the notification will remain on your desktop until you interact with it by clicking on an option.
  • Play a notification sound? - If checked, a short sound will play whenever a new notification is triggered.
  • Show triggered count on icon? - If checked, the icon in your toolbar will show the number of triggered incidents matching your filters.

License

Apache 2 (See LICENSE file)

Contributing

  1. Fork it ( https://github.com/PagerDuty/chrome-notifier/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request.

chrome-notifier's People

Contributors

ericwclymer avatar mooserson avatar richadams avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chrome-notifier's Issues

Spaces in Notification Filters

Hi.
Congratulations for this extension!. I'm having problems when I try to filter by Services. My company got the services names with spaces and now when I save the options these spaces disappear and the filter no longer works. Would you please fix it?. Would you please allow the spaces in the Filter Users and Filter Services fields?.

Many thanks!.

Regards,

Alexis Mosquera

Notification Sound When Incident Retriggers

We have out incident set to retrigger every 20 mins after acknowledgement, when they retrigger the plugin does not make and sound. Is there a way to have it make noise for retriggering incidents? I don't mind helping code it just wondering if you know if the api has that capability. Thanks!

Filter by team

It would be useful to be able to filter by team.
For big deployments with lots of users and services, filtering only on those can be quite unwieldy.

"Require interaction" option not respected

Thanks for this extension! It's been working great for me except for this minor issue:

The notifications always require interaction, even if I uncheck "Require interaction to dismiss notification?" and save the config.

I eventually figured out through trial and error that the problem, for my system at least, seems to be the hard-coded non-zero priority:

Here's the test case that I pasted into the Chrome dev console in the context of this extension's options page:

chrome.notifications.create("test0", {
    type: "basic",
    iconUrl: chrome.extension.getURL("images/icon-256.png"),
    title: "test 0",
    message: "priority 0",
    priority: 0,
    requireInteraction: false
});

chrome.notifications.create("test1", {
    type: "basic",
    iconUrl: chrome.extension.getURL("images/icon-256.png"),
    title: "test 1",
    message: "priority 1",
    priority: 1,
    requireInteraction: false
});

chrome.notifications.create("test2", {
    type: "basic",
    iconUrl: chrome.extension.getURL("images/icon-256.png"),
    title: "test 2",
    message: "priority 2",
    priority: 2,
    requireInteraction: false
});

On my system, only the one set to priority: 0 respects the requireInteraction: false setting. The others require interaction regardless of the setting.

It could be something specific to my shell, if that priority value is being passed along by Chrome, but I haven't found any shell-level settings that cause requireInteraction to be respected for PD notifications. Could we perhaps get an option to customize the priority value to work around this?

Extension version: 0.22
Chrome version: Version 81.0.4044.138 (Official Build) (64-bit)
OS: Ubuntu 20.04
Shell: KDE Plasma Shell

Clear All Notification

We have an issue where the "Clear all Notifications" option disappears as an option from time to time... Sometimes we can uninstall and then reinstall to get it back but I just wanted to let you all know..

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.