Re: Re: Re: [foreman-dev] Notifications API & UI available - quick HOWTO
On Tue, Jan 24, 2017 at 6:55 AM, Ewoud Kohl van Wijngaarden < ew...@kohlvanwijngaarden.nl> wrote: > On Tue, Jan 24, 2017 at 11:32:39AM +0100, Daniel Lobato Garcia wrote: > > On 01/23, Tom McKay wrote: > > > + Every notification we add to this system should be required to have a > > > unique ID based on where it is in the code. This ID could be leveraged > for > > > access insights, docs, etc. (Maybe this is already the case?) > > > > It's the case - the notification blueprint comes with a 'subject' field > > which is meant for specifying which object does this notification 'stem > > from' > > I think Tom means a unique code for every notification type, like the > smart proxy has error codes. To me a subject sounds like the subject of > an email. > > Yes, I mean unique code for each message type ("XYZ-1234 Capsule ' mycapsule.example.com' is offline"). I could then choose to include/exclude these error messages from the UI. Perhaps I exclude from the UI and add that message type to the list of email notifications. It's great we have a little UI widget but the larger picture of notifications and their delivery would be good to address too. Unique message type/id would be an incremental step towards that. -- You received this message because you are subscribed to the Google Groups "foreman-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to foreman-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Re: Re: [foreman-dev] Notifications API & UI available - quick HOWTO
On Tue, Jan 24, 2017 at 11:32:39AM +0100, Daniel Lobato Garcia wrote: > On 01/23, Tom McKay wrote: > > + Every notification we add to this system should be required to have a > > unique ID based on where it is in the code. This ID could be leveraged for > > access insights, docs, etc. (Maybe this is already the case?) > > It's the case - the notification blueprint comes with a 'subject' field > which is meant for specifying which object does this notification 'stem > from' I think Tom means a unique code for every notification type, like the smart proxy has error codes. To me a subject sounds like the subject of an email. -- You received this message because you are subscribed to the Google Groups "foreman-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to foreman-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Re: Re: [foreman-dev] Notifications API & UI available - quick HOWTO
On 01/23, Tom McKay wrote: > Wish list... > > + Every notification we add to this system should be required to have a > unique ID based on where it is in the code. This ID could be leveraged for > access insights, docs, etc. (Maybe this is already the case?) It's the case - the notification blueprint comes with a 'subject' field which is meant for specifying which object does this notification 'stem from' > + Dedicated notifications API/CLI/UI to manage notifications and messages > (search, delete older than X, etc.) > + Ability to subscribe to notifications in the UI (eg. I see a message in > the history that is not normally displayed in the UI, I choose to > "subscribe to message ID=X") Not sure what messages like that you see..? Sounds interesting but I can't thing of any example > > I'm looking forward to a unified notification framework. > > > On Mon, Jan 23, 2017 at 11:54 AM, Daniel Lobato Garcia> wrote: > > > On 01/23, Tom McKay wrote: > > > Is there a dedicated page where these notifications are displayed? For > > > example, if I mark one as "read" and it disappears, where do I go to see > > it > > > in a history view? > > > > It doesn't dissapear, it's displayed but the group isn't in bold anymore > > and it will not display '1 new event'. > > > > It dissapears though when the notification is expired. > > > > > > > > On Fri, Jan 20, 2017 at 12:08 PM, Lukas Zapletal > > wrote: > > > > > > > When ERROR message appears in Smart Proxy log buffer, we could make a > > > > notification. > > > > > > > > Maybe when a host is discovered, not sure. > > > > > > > > LZ > > > > > > > > On Fri, Jan 20, 2017 at 1:15 PM, Daniel Lobato Garcia > > > > wrote: > > > > > Hi Foreman devs, > > > > > > > > > > Thanks to Gail Steiger and Ohad Levy - > > > > > https://github.com/theforeman/foreman/pull/4170 > > > > > https://github.com/theforeman/foreman/pull/3902 > > > > > > > > > > https://cloud.githubusercontent.com/assets/ > > > > 598891/21989268/91469e06-dc0a-11e6-828f-44d37183c572.png > > > > > https://cloud.githubusercontent.com/assets/ > > > > 598891/21989267/91440f06-dc0a-11e6-8940-d1f1a100e79b.png > > > > > > > > > > we have now a fancy-looking notifications drawer in Foreman! It works > > > > > and looks nice, and I'd recommend taking a look at both the React > > > > > implementation and the Rails part as neither are complicated to > > > > > understand in my opinion. > > > > > > > > > > Now, what's this notifications drawer useful for if we don't have any > > > > > notifications? That's where you come into play: > > > > > > > > > > Notifications in Foreman are stored in what we call a > > > > > "NotificationBlueprint", which stores the information about the > > > > > notification (e.g, level, message, subject..). The blueprint should > > > > > contain information about what happened and ideally how to diagnose > > or > > > > > resolve the problem (if it's a problem) > > > > > > > > > > The idea is that plugins or Foreman itself will define these > > blueprints > > > > > somwhere (via the engine, or a db seed, for example). > > > > > > > > > > In order to trigger them, you need to instantiate a Notification > > object > > > > > that uses the NotificationBlueprint you defined. This Notification > > will > > > > > store information related to the recipients (e.g: when will the > > > > > notification expire, who is it meant for, etcetera). This will > > > > > automatically setup the notification for consumption by users. > > > > > > > > > > > > > > > > > > > > Here's some example code: > > > > > > > > > > a = NotificationBlueprint.new( > > > > > :group => 'Hi There', > > > > > :message => "Hello, I'm back", > > > > > :level => 'info', > > > > > :subject => SmartProxy.first, > > > > > :name => 'example', > > > > > :expires_in => 1.hour > > > > > ) > > > > > b = Notification.new( > > > > > :notification_blueprint => a, > > > > > :initiator => User.find_by_login('dlobatog'), > > > > > :audience => Notification::AUDIENCE_GLOBAL, > > > > > ) > > > > > > > > > > -- > > > > > > > > > > What actions would you like to see as notifications in Foreman? We > > want > > > > > the drawer to only contain important information, as to not overwhelm > > > > > the user with notifications. > > > > > > > > > > So things like: 'host failed a puppetrun' is probably too common an > > event > > > > > to have notifications for, but things like 'this TFTP proxy went > > down' > > > > > or 'your RH subscription is about to expire' is a much more important > > > > > notification that should show up. A cronjob could check out the > > health > > > > > of your infrastructure to add these notifications, or ... do you have > > > > > any ideas? Please reply in this thread as I'd love to see the drawer > > > > > getting some use ASAP for 1.15 :) > > > > > > > > > > Best, > > > > > > > > > > -- > > > > > Daniel Lobato Garcia > > > > > > > > > >
Re: [foreman-dev] Notifications API & UI available - quick HOWTO
On 01/23/2017 12:42 PM, Tom McKay wrote: Wish list... + Every notification we add to this system should be required to have a unique ID based on where it is in the code. This ID could be leveraged for access insights, docs, etc. (Maybe this is already the case?) +1 -- bk -- You received this message because you are subscribed to the Google Groups "foreman-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to foreman-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Re: [foreman-dev] Notifications API & UI available - quick HOWTO
Wish list... + Every notification we add to this system should be required to have a unique ID based on where it is in the code. This ID could be leveraged for access insights, docs, etc. (Maybe this is already the case?) + Dedicated notifications API/CLI/UI to manage notifications and messages (search, delete older than X, etc.) + Ability to subscribe to notifications in the UI (eg. I see a message in the history that is not normally displayed in the UI, I choose to "subscribe to message ID=X") I'm looking forward to a unified notification framework. On Mon, Jan 23, 2017 at 11:54 AM, Daniel Lobato Garciawrote: > On 01/23, Tom McKay wrote: > > Is there a dedicated page where these notifications are displayed? For > > example, if I mark one as "read" and it disappears, where do I go to see > it > > in a history view? > > It doesn't dissapear, it's displayed but the group isn't in bold anymore > and it will not display '1 new event'. > > It dissapears though when the notification is expired. > > > > > On Fri, Jan 20, 2017 at 12:08 PM, Lukas Zapletal > wrote: > > > > > When ERROR message appears in Smart Proxy log buffer, we could make a > > > notification. > > > > > > Maybe when a host is discovered, not sure. > > > > > > LZ > > > > > > On Fri, Jan 20, 2017 at 1:15 PM, Daniel Lobato Garcia > > > wrote: > > > > Hi Foreman devs, > > > > > > > > Thanks to Gail Steiger and Ohad Levy - > > > > https://github.com/theforeman/foreman/pull/4170 > > > > https://github.com/theforeman/foreman/pull/3902 > > > > > > > > https://cloud.githubusercontent.com/assets/ > > > 598891/21989268/91469e06-dc0a-11e6-828f-44d37183c572.png > > > > https://cloud.githubusercontent.com/assets/ > > > 598891/21989267/91440f06-dc0a-11e6-8940-d1f1a100e79b.png > > > > > > > > we have now a fancy-looking notifications drawer in Foreman! It works > > > > and looks nice, and I'd recommend taking a look at both the React > > > > implementation and the Rails part as neither are complicated to > > > > understand in my opinion. > > > > > > > > Now, what's this notifications drawer useful for if we don't have any > > > > notifications? That's where you come into play: > > > > > > > > Notifications in Foreman are stored in what we call a > > > > "NotificationBlueprint", which stores the information about the > > > > notification (e.g, level, message, subject..). The blueprint should > > > > contain information about what happened and ideally how to diagnose > or > > > > resolve the problem (if it's a problem) > > > > > > > > The idea is that plugins or Foreman itself will define these > blueprints > > > > somwhere (via the engine, or a db seed, for example). > > > > > > > > In order to trigger them, you need to instantiate a Notification > object > > > > that uses the NotificationBlueprint you defined. This Notification > will > > > > store information related to the recipients (e.g: when will the > > > > notification expire, who is it meant for, etcetera). This will > > > > automatically setup the notification for consumption by users. > > > > > > > > > > > > > > > > Here's some example code: > > > > > > > > a = NotificationBlueprint.new( > > > > :group => 'Hi There', > > > > :message => "Hello, I'm back", > > > > :level => 'info', > > > > :subject => SmartProxy.first, > > > > :name => 'example', > > > > :expires_in => 1.hour > > > > ) > > > > b = Notification.new( > > > > :notification_blueprint => a, > > > > :initiator => User.find_by_login('dlobatog'), > > > > :audience => Notification::AUDIENCE_GLOBAL, > > > > ) > > > > > > > > -- > > > > > > > > What actions would you like to see as notifications in Foreman? We > want > > > > the drawer to only contain important information, as to not overwhelm > > > > the user with notifications. > > > > > > > > So things like: 'host failed a puppetrun' is probably too common an > event > > > > to have notifications for, but things like 'this TFTP proxy went > down' > > > > or 'your RH subscription is about to expire' is a much more important > > > > notification that should show up. A cronjob could check out the > health > > > > of your infrastructure to add these notifications, or ... do you have > > > > any ideas? Please reply in this thread as I'd love to see the drawer > > > > getting some use ASAP for 1.15 :) > > > > > > > > Best, > > > > > > > > -- > > > > Daniel Lobato Garcia > > > > > > > > @dLobatog > > > > blog.daniellobato.me > > > > daniellobato.me > > > > > > > > GPG: http://keys.gnupg.net/pks/lookup?op=get= > 0x7A92D6DD38D6DE30 > > > > Keybase: https://keybase.io/elobato > > > > > > > > -- > > > > You received this message because you are subscribed to the Google > > > Groups "foreman-dev" group. > > > > To unsubscribe from this group and stop receiving emails from it, > send > > > an email to foreman-dev+unsubscr...@googlegroups.com. > > > > For more options, visit
Re: Re: [foreman-dev] Notifications API & UI available - quick HOWTO
On 01/23, Tom McKay wrote: > Is there a dedicated page where these notifications are displayed? For > example, if I mark one as "read" and it disappears, where do I go to see it > in a history view? It doesn't dissapear, it's displayed but the group isn't in bold anymore and it will not display '1 new event'. It dissapears though when the notification is expired. > > On Fri, Jan 20, 2017 at 12:08 PM, Lukas Zapletalwrote: > > > When ERROR message appears in Smart Proxy log buffer, we could make a > > notification. > > > > Maybe when a host is discovered, not sure. > > > > LZ > > > > On Fri, Jan 20, 2017 at 1:15 PM, Daniel Lobato Garcia > > wrote: > > > Hi Foreman devs, > > > > > > Thanks to Gail Steiger and Ohad Levy - > > > https://github.com/theforeman/foreman/pull/4170 > > > https://github.com/theforeman/foreman/pull/3902 > > > > > > https://cloud.githubusercontent.com/assets/ > > 598891/21989268/91469e06-dc0a-11e6-828f-44d37183c572.png > > > https://cloud.githubusercontent.com/assets/ > > 598891/21989267/91440f06-dc0a-11e6-8940-d1f1a100e79b.png > > > > > > we have now a fancy-looking notifications drawer in Foreman! It works > > > and looks nice, and I'd recommend taking a look at both the React > > > implementation and the Rails part as neither are complicated to > > > understand in my opinion. > > > > > > Now, what's this notifications drawer useful for if we don't have any > > > notifications? That's where you come into play: > > > > > > Notifications in Foreman are stored in what we call a > > > "NotificationBlueprint", which stores the information about the > > > notification (e.g, level, message, subject..). The blueprint should > > > contain information about what happened and ideally how to diagnose or > > > resolve the problem (if it's a problem) > > > > > > The idea is that plugins or Foreman itself will define these blueprints > > > somwhere (via the engine, or a db seed, for example). > > > > > > In order to trigger them, you need to instantiate a Notification object > > > that uses the NotificationBlueprint you defined. This Notification will > > > store information related to the recipients (e.g: when will the > > > notification expire, who is it meant for, etcetera). This will > > > automatically setup the notification for consumption by users. > > > > > > > > > > > > Here's some example code: > > > > > > a = NotificationBlueprint.new( > > > :group => 'Hi There', > > > :message => "Hello, I'm back", > > > :level => 'info', > > > :subject => SmartProxy.first, > > > :name => 'example', > > > :expires_in => 1.hour > > > ) > > > b = Notification.new( > > > :notification_blueprint => a, > > > :initiator => User.find_by_login('dlobatog'), > > > :audience => Notification::AUDIENCE_GLOBAL, > > > ) > > > > > > -- > > > > > > What actions would you like to see as notifications in Foreman? We want > > > the drawer to only contain important information, as to not overwhelm > > > the user with notifications. > > > > > > So things like: 'host failed a puppetrun' is probably too common an event > > > to have notifications for, but things like 'this TFTP proxy went down' > > > or 'your RH subscription is about to expire' is a much more important > > > notification that should show up. A cronjob could check out the health > > > of your infrastructure to add these notifications, or ... do you have > > > any ideas? Please reply in this thread as I'd love to see the drawer > > > getting some use ASAP for 1.15 :) > > > > > > Best, > > > > > > -- > > > Daniel Lobato Garcia > > > > > > @dLobatog > > > blog.daniellobato.me > > > daniellobato.me > > > > > > GPG: http://keys.gnupg.net/pks/lookup?op=get=0x7A92D6DD38D6DE30 > > > Keybase: https://keybase.io/elobato > > > > > > -- > > > You received this message because you are subscribed to the Google > > Groups "foreman-dev" group. > > > To unsubscribe from this group and stop receiving emails from it, send > > an email to foreman-dev+unsubscr...@googlegroups.com. > > > For more options, visit https://groups.google.com/d/optout. > > > > > > > > -- > > Later, > > Lukas @lzap Zapletal > > > > -- > > You received this message because you are subscribed to the Google Groups > > "foreman-dev" group. > > To unsubscribe from this group and stop receiving emails from it, send an > > email to foreman-dev+unsubscr...@googlegroups.com. > > For more options, visit https://groups.google.com/d/optout. > > > > -- > You received this message because you are subscribed to the Google Groups > "foreman-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to foreman-dev+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- Daniel Lobato Garcia @dLobatog blog.daniellobato.me daniellobato.me GPG: http://keys.gnupg.net/pks/lookup?op=get=0x7A92D6DD38D6DE30 Keybase: https://keybase.io/elobato -- You received
Re: [foreman-dev] Notifications API & UI available - quick HOWTO
Is there a dedicated page where these notifications are displayed? For example, if I mark one as "read" and it disappears, where do I go to see it in a history view? On Fri, Jan 20, 2017 at 12:08 PM, Lukas Zapletalwrote: > When ERROR message appears in Smart Proxy log buffer, we could make a > notification. > > Maybe when a host is discovered, not sure. > > LZ > > On Fri, Jan 20, 2017 at 1:15 PM, Daniel Lobato Garcia > wrote: > > Hi Foreman devs, > > > > Thanks to Gail Steiger and Ohad Levy - > > https://github.com/theforeman/foreman/pull/4170 > > https://github.com/theforeman/foreman/pull/3902 > > > > https://cloud.githubusercontent.com/assets/ > 598891/21989268/91469e06-dc0a-11e6-828f-44d37183c572.png > > https://cloud.githubusercontent.com/assets/ > 598891/21989267/91440f06-dc0a-11e6-8940-d1f1a100e79b.png > > > > we have now a fancy-looking notifications drawer in Foreman! It works > > and looks nice, and I'd recommend taking a look at both the React > > implementation and the Rails part as neither are complicated to > > understand in my opinion. > > > > Now, what's this notifications drawer useful for if we don't have any > > notifications? That's where you come into play: > > > > Notifications in Foreman are stored in what we call a > > "NotificationBlueprint", which stores the information about the > > notification (e.g, level, message, subject..). The blueprint should > > contain information about what happened and ideally how to diagnose or > > resolve the problem (if it's a problem) > > > > The idea is that plugins or Foreman itself will define these blueprints > > somwhere (via the engine, or a db seed, for example). > > > > In order to trigger them, you need to instantiate a Notification object > > that uses the NotificationBlueprint you defined. This Notification will > > store information related to the recipients (e.g: when will the > > notification expire, who is it meant for, etcetera). This will > > automatically setup the notification for consumption by users. > > > > > > > > Here's some example code: > > > > a = NotificationBlueprint.new( > > :group => 'Hi There', > > :message => "Hello, I'm back", > > :level => 'info', > > :subject => SmartProxy.first, > > :name => 'example', > > :expires_in => 1.hour > > ) > > b = Notification.new( > > :notification_blueprint => a, > > :initiator => User.find_by_login('dlobatog'), > > :audience => Notification::AUDIENCE_GLOBAL, > > ) > > > > -- > > > > What actions would you like to see as notifications in Foreman? We want > > the drawer to only contain important information, as to not overwhelm > > the user with notifications. > > > > So things like: 'host failed a puppetrun' is probably too common an event > > to have notifications for, but things like 'this TFTP proxy went down' > > or 'your RH subscription is about to expire' is a much more important > > notification that should show up. A cronjob could check out the health > > of your infrastructure to add these notifications, or ... do you have > > any ideas? Please reply in this thread as I'd love to see the drawer > > getting some use ASAP for 1.15 :) > > > > Best, > > > > -- > > Daniel Lobato Garcia > > > > @dLobatog > > blog.daniellobato.me > > daniellobato.me > > > > GPG: http://keys.gnupg.net/pks/lookup?op=get=0x7A92D6DD38D6DE30 > > Keybase: https://keybase.io/elobato > > > > -- > > You received this message because you are subscribed to the Google > Groups "foreman-dev" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to foreman-dev+unsubscr...@googlegroups.com. > > For more options, visit https://groups.google.com/d/optout. > > > > -- > Later, > Lukas @lzap Zapletal > > -- > You received this message because you are subscribed to the Google Groups > "foreman-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to foreman-dev+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "foreman-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to foreman-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.