0

throttlingMessageFrequency

I'm getting the throttlingMessageFrequency error.

What's the reason for this limitation?

Should I add a timer to make sure callbacks are executed more than 500ms apart?


Also 'notification' is spelt wrong in the error message:

throttlingMessageFrequency: dropping notifcation. No more than 1 notification every 500ms is allowed.

2 Replies
  • QUOTE (alexandermaccaw @ Jun 15 2009, 05:26 AM) <{POST_SNAPBACK}>
    I'm getting the throttlingMessageFrequency error.

    What's the reason for this limitation?

    Should I add a timer to make sure callbacks are executed more than 500ms apart?


    Also 'notification' is spelt wrong in the error message:

    throttlingMessageFrequency: dropping notifcation. No more than 1 notification every 500ms is allowed.


    Yo Alex,

    The reason for the throttle is simple, a single page should not be allowed to fill up the users desktop with notifications. This is possible today with javascript alerts, but we didn't want to contribute to that evil. Sound reasonable?

    The spelling mistake: embarrassing! will get fixed.

    lloyd
    0
  • QUOTE (Lloyd Hilaiel @ Jun 15 2009, 10:38 AM) <{POST_SNAPBACK}>
    Yo Alex,

    The reason for the throttle is simple, a single page should not be allowed to fill up the users desktop with notifications. This is possible today with javascript alerts, but we didn't want to contribute to that evil. Sound reasonable?

    The spelling mistake: embarrassing! will get fixed.

    lloyd


    I see where you're coming from, but it seems a slippery slope to me. Adobe has taken this route with Flash, making developer's lives difficult - for example the Flash File browse box can only be opened if you click on a SWF - not through JavaScript - a needless restriction IMHO.
    If attackers really want to get round restrictions, I imagine they'll find a way.

    In this case, I'm running up against the limit when I'm trying to update the html page - rather than display notifications. You'll see the specifics when you audit the code - but basically I have to wrap all the callbacks in a throttle method:

    def throttle
    @sem ||= Mutex.new
    @sem.synchronize {
    yield
    sleep 0.5
    }
    end

    Maybe you could just throttle the Growl notifications?
    0
This forum is locked.

Recent Posts

in Support & General Questions