mikaelbr / node-notifier

A Node.js module for sending notifications on native Mac, Windows and Linux (or Growl as fallback)
MIT License
5.72k stars 323 forks source link

Using 'appName' and 'actions', then actions did not show #426

Open UnleashedMV opened 1 year ago

UnleashedMV commented 1 year ago

Hello everyone, I have the following problem.

When I set the 'appName' attribute, my action buttons are no longer displayed and I get an error when I click the notification.

But if I omit 'appName' my action buttons are displayed and I no longer get an error message when I click 'OK' or 'Cancle'.

const WindowsToaster = require('node-notifier').WindowsToaster;

Working config: `

function showNotification() {

var notifier = new WindowsToaster({
    withFallback: true, // Fallback to Growl or Balloons? 
    customPath: void 0,// Relative path if you want to use your fork of toast.exe 
});

notifier.notify({
    title: "Notifier Action",
    message: "NewMessage",
    icon: ('C:\\projects\\POCs\\test-electron\\assets\\favicon.ico'),
    sound: true, // true | false. 
    wait: true, // Wait for User Action against Notification 
    actions: ['OK', 'Cancle'],
    // appName: 'Notifier'
}, (error, response) => {
    console.log(JSON.stringify({ error, response }, null, '\t'));
    if ('ok' === response) {
        shell.openExternal('http://google.com/');
    }
});

}

`

Not working config: `

function showNotification() {

var notifier = new WindowsToaster({
    withFallback: true, // Fallback to Growl or Balloons? 
    customPath: void 0,// Relative path if you want to use your fork of toast.exe 
});

notifier.notify({
    title: "Notifier Action",
    message: "NewMessage",
    icon: ('C:\\projects\\POCs\\test-electron\\assets\\favicon.ico'),
    sound: true, // true | false. 
    wait: true, // Wait for User Action against Notification 
    actions: ['OK', 'Cancle'],
    // appName: 'Notifier'
}, (error, response) => {
    console.log(JSON.stringify({ error, response }, null, '\t'));

    if ('ok' === response) {
        shell.openExternal('http://google.com/');
    }
});

}

`