Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Callback #4

Open
das1969 opened this issue Jun 11, 2016 · 8 comments
Open

Callback #4

das1969 opened this issue Jun 11, 2016 · 8 comments

Comments

@das1969
Copy link

das1969 commented Jun 11, 2016

Hi

great work on this.

Should callback to the originating application be working?
Is this possible and therefore could this be included in future developments?

@BobVul
Copy link
Owner

BobVul commented Jun 12, 2016

Hmm. Does Growl itself support that? i.e. does that work on the other Displays?

If it does, then I'll have to look into it more... would be a fairly significant change, mostly because it's a pain in the arse to handle activations from a Win10 notification on a standard desktop app. UWP would be easier but more restrictive in other ways.

@das1969
Copy link
Author

das1969 commented Jun 12, 2016

Here's some details on callback

http://www.growlforwindows.com/gfw/help/gntp.aspx#callbacks

A while ago I got the c# source for GMail Notififer Plus from github, and amended it to send new mail notification growls. I got this working OK, and I could click on a growl to open the relevant email message in the browser.

I was tinkering with this again to get mail notifications in the Win10 action center. I got it working to some extent using the notifyicon class which creates a balloon notification. The I was using the balloontipclicked event, so that I could click on the action center message and the message opened in the browser. I'm not well-versed enough in c# to get this working properly though.

@BobVul
Copy link
Owner

BobVul commented Jun 12, 2016

Thanks for that link.

At the moment I'm implementing a non-visual display in Growl. Looks like callbacks are only available on visual displays, which might impose stricter timeouts.

Along with probably having to implement a COM server to be able to respond to a Win10 toast activation, and adapting my code for both bidirectional communication and keeping the toast handler open, this is not a very simple task, and would probably take a while. I do plan to try it when I have some time, but please don't be surprised if it happens to take a month or more.

Oh, do you happen to know any simple programs that send GNTP messages with callbacks? I don't actually use Growl (this was all on someone's request) so I've only been able to test with the built-in preview.

@das1969
Copy link
Author

das1969 commented Jun 12, 2016

There's a list of growl integration libraries on the growl for windows developers page.

The C# library I used was a Visual Studio solution containing examples of GNTP with callback.

@BobVul
Copy link
Owner

BobVul commented Jun 12, 2016

Ah... I suppose I could create a custom one but I was kinda hoping you had a real-world example.

Anyway, this'll do.

@mcormick
Copy link

mcormick commented Feb 5, 2018

Specifying an URL as /cu callback from growlnotify which invokes the callbackUrl does not seem to work in Toast version 2.0. Works with original "Displays". Any suggestions?

@BobVul
Copy link
Owner

BobVul commented Feb 6, 2018

@mcormick I don't believe this ever worked, or at least it was not intentionally implemented.

I might try as time permits, but the difficulty is the current system effectively shows a fire-and-forget notification, with no user interaction. I don't know how much the action center has changed since the first release but at the time that would have required a COM server to react to clicks.

Hmm. I wonder if turning Toaster into a UWP application would make it easier.

@BobVul
Copy link
Owner

BobVul commented Feb 6, 2018

The other half is communication from Growler (plugin) to Toaster is also one-way at the moment. That means even if Toaster were to receive click activations it would have no way to report back to Growl to trigger the callback.

Bidirectional communication would be enabled (made easier by?) #9.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants