Page Index Toggle Pages: [1] 2 
Topic Tools
Hot Topic (More than 10 Replies) Add once-daily "digest" option for notifications (Read 5,192 times)
JonB
YaBB Administrator
YaBB Next Team
Operations Team
Beta Testers
Support Team
*****
Offline



Posts: 3,785
Location: Land of the Blazing Sun!

YaBB 2.6.0
Re: Add once-daily "digest" option for notifications
Reply #21 - Jun 12th, 2009 at 1:30am
Post Tools
As was stated before, there's no magic bullet for automated processing on most low-end hosting accounts as most hosts are wise enough to not enable it.  You could certainly write a Mod at some point for those with shell or cron access.

OR Build a better RSS engine, then its USER driven.

No matter what you do the processing will need to examine the intended recipients/user's YaBB 'state'.  Or be 'board selectable' maybe.

Wink



  

I find your lack of faith disturbing.
Back to top
IP Logged
 
cepheid
Senior Member
****
Offline



Posts: 516
Re: Add once-daily "digest" option for notifications
Reply #20 - Jun 10th, 2009 at 7:39pm
Post Tools
JonB wrote on Jun 10th, 2009 at 3:55pm:
I'm referring to 'local' applet that runs on a user machine/PC

Ahhh. But then you'd require cron (or Windows/Mac scheduling) on the client side, plus the client would have to be on and connected to the internet.  We would want this to work even if the admin were on vacation or what-not, so having it server-side is the best option.
  
Back to top
WWW  
IP Logged
 
JonB
YaBB Administrator
YaBB Next Team
Operations Team
Beta Testers
Support Team
*****
Offline



Posts: 3,785
Location: Land of the Blazing Sun!

YaBB 2.6.0
Re: Add once-daily "digest" option for notifications
Reply #19 - Jun 10th, 2009 at 3:55pm
Post Tools
Quote:
But you can't guarantee to log on at the right time unless you use cron; otherwise, you have to spawn a child process
.

you missed my point, I'm referring to 'local' applet that runs on a user machine/PC - NOT a server applet.  Much like an IRC bot.

Smiley
« Last Edit: Jun 10th, 2009 at 3:56pm by JonB »  

I find your lack of faith disturbing.
Back to top
IP Logged
 
cepheid
Senior Member
****
Offline



Posts: 516
Re: Add once-daily "digest" option for notifications
Reply #18 - Jun 9th, 2009 at 8:27pm
Post Tools
Matt Siegman wrote on Jun 9th, 2009 at 3:29pm:
Until the spawned process returns, the server doesn't close the connection, even if you sever all ties to your wayward child process. Apache doesn't forget it.

I believe there is a way to handle spawned processes without that problem, but I can't think of it at the moment.  I'll do some research on this.

JonB wrote on Jun 9th, 2009 at 4:13pm:
'cron' is a Unix/Linux thing, and most webhosting accounts don't get access to it for obvious reasons.

Agreed, which is why I suggested the other mechanic to handle it.

JonB wrote on Jun 9th, 2009 at 4:13pm:
I'd build a local Perl Applet (to get past OS dependence) to log on at the right time and run the 'Digest job'.

But you can't guarantee to log on at the right time unless you use cron; otherwise, you have to spawn a child process.
  
Back to top
WWW  
IP Logged
 
JonB
YaBB Administrator
YaBB Next Team
Operations Team
Beta Testers
Support Team
*****
Offline



Posts: 3,785
Location: Land of the Blazing Sun!

YaBB 2.6.0
Re: Add once-daily "digest" option for notifications
Reply #17 - Jun 9th, 2009 at 4:13pm
Post Tools
I'm with Matt on this as a 'server mechanic'.  'cron' is a Unix/Linux thing, and most webhosting accounts don't get access to it for obvious reasons.

As for the Digest e-mail, its a great concept. "if" it were me with this challenge, I'd build a local Perl Applet (to get past OS dependence) to log on at the right time and run the 'Digest job'.

We probably should say - this thing (or a close cousin) can also be achieved through a flexible RSS configuration widget. a worthy item for YaBB 3. (including 'remailing')

Smiley
« Last Edit: Jun 9th, 2009 at 4:16pm by JonB »  

I find your lack of faith disturbing.
Back to top
IP Logged
 
deti
Legacy Dev Team
Development Team
****
Offline



Posts: 2,650
Location: Prien am Chiemsee, Germany
Re: Add once-daily "digest" option for notifications
Reply #16 - Jun 9th, 2009 at 4:10pm
Post Tools
Matt Siegman wrote on Jun 9th, 2009 at 3:29pm:
... usually somewhere between 30 and 60 seconds.

We can make the process stop after 20 seconds and restart at the next call to YaBB for the next 20 seconds and so on until it is finished. That is the way Maintenance is working at the moment, since we got into server time out on big forums the whole process is done in many calls to YaBB until it is fished - if needed.
« Last Edit: Jun 9th, 2009 at 4:16pm by deti »  

Was immer Du tun kannst
oder erträumst tun zu können,
beginne es.
Kühnheit besitzt Genie,
Macht und magische Kraft.
Beginne es jetzt.
Whatever you can do
or dream you can,
begin it.
Boldness has genius,
power and magic in it.
Begin it now.
J. W. Goethe
Back to top
WWW  
IP Logged
 
Matt Siegman
YaBB Legends (Inactive)
*
Offline



Posts: 3,380
Location: Wichita, KS
Re: Add once-daily "digest" option for notifications
Reply #15 - Jun 9th, 2009 at 3:29pm
Post Tools
I've attempted the forking method with software at work. Unfortunately, it's not that easy.

Until the spawned process returns, the server doesn't close the connection, even if you sever all ties to your wayward child process. Apache doesn't forget it. Unless the host is not good at configuration, these processes will get killed by Apache after some set amount of time, usually somewhere between 30 and 60 seconds.

To get around this problem, we actually had to write a separate server program, make a database, put the work data in the database, query the server program with the web page program to tell it to do the work, and then return the page. It was a pain...
  

-- Matt Siegman 8) Wish List
Back to top
 
IP Logged
 
cepheid
Senior Member
****
Offline



Posts: 516
Re: Add once-daily "digest" option for notifications
Reply #14 - Jun 8th, 2009 at 7:29pm
Post Tools
Matt Siegman wrote on Jun 8th, 2009 at 5:01pm:
The only really good way to do this is to kick off a daily cron job.

That's the preferred way and the only way to guarantee that emails get sent out on time, but why do you think having the script handle it is not a reasonable alternative?  The time check adds essentially no processing; handling the email is the only load-intensive procedure and that can happen via a spawned process so it never interferes with the user.

The only downside is that the time the emails are sent depends on the script access - a very unpopular forum with only a few hits a days wouldn't work well with this method, but then, if it's only getting a few hits per day, the digest is irrelevant.  The digest is most useful for medium to large forums with moderate to heavy activity, and those will get sufficient hits (either from users or from search engines) to trigger the digest email processing relatively close to the specified time.
  
Back to top
WWW  
IP Logged
 
Matt Siegman
YaBB Legends (Inactive)
*
Offline



Posts: 3,380
Location: Wichita, KS
Re: Add once-daily "digest" option for notifications
Reply #13 - Jun 8th, 2009 at 5:01pm
Post Tools
The only really good way to do this is to kick off a daily cron job. I'd struggle to say even half of our users have cron access.

It's a great idea. Maybe as a seperate package or a big mod this could be done, but I hesitate to support something that will not work for most of our userbase. (I really do like daily digest emails. Trust me, if there was a good way to do this, we would.)
  

-- Matt Siegman 8) Wish List
Back to top
 
IP Logged
 
cepheid
Senior Member
****
Offline



Posts: 516
Re: Add once-daily "digest" option for notifications
Reply #12 - Jun 7th, 2009 at 12:05am
Post Tools
OH Eng wrote on Jun 6th, 2009 at 4:41pm:
I have a problem with not defaulting it to a managed mode to keep the forum safe from overloading itself, or providing a on/off function for management that warns the user of possible problems.

We can default it to a managed mode, sure.  As for providing a warning to the user, the current system doesn't warn the user... though I guess you don't like that, either! Smiley  All those suggestions are good.
  
Back to top
WWW  
IP Logged
 
OH Eng
Past Team Members
Documentation Team
Offline



Posts: 4,026
Location: Pensacola, Florida USA
Re: Add once-daily "digest" option for notifications
Reply #11 - Jun 6th, 2009 at 4:41pm
Post Tools
I have no problem whatsoever with a digest mode.  I have a problem with not defaulting it to a managed mode to keep the forum safe from overloading itself, or providing a on/off function for management that warns the user of possible problems.  That's the only issue I have with all of it.
  

 
Back to top
 
IP Logged
 
cepheid
Senior Member
****
Offline



Posts: 516
Re: Add once-daily "digest" option for notifications
Reply #10 - Jun 6th, 2009 at 5:03am
Post Tools
OH Eng wrote on Jun 6th, 2009 at 4:37am:
So I'm going to offer that advice when I see someone suggest a way for a user to cripple his own forum without knowing what he's doing

Sure, I understand... although the current implementation allows just that already.  In fact, it's "worse" because there's no limit on the number of emails that can be sent per day this way.  Implementing a digest mode, even without any sort of load management, is guaranteed to be better than the current method.
  
Back to top
WWW  
IP Logged
 
OH Eng
Past Team Members
Documentation Team
Offline



Posts: 4,026
Location: Pensacola, Florida USA
Re: Add once-daily "digest" option for notifications
Reply #9 - Jun 6th, 2009 at 4:37am
Post Tools
There is no problem, I'm providing feedback to what you posted... isn't that the point when you post a suggestion?  I'm pointing out that making something selectable by Admin whether to auto-manage or not means that some user will select "not" and if so, runs the risk of overloading his forum.

All I am suggesting to you is to go test it under the most UNfavorable conditions it could possibly run in and see how well it works.  I have... it caused what I consider problems, thus I ended up turning the entire feature OFF.  So I'm going to offer that advice when I see someone suggest a way for a user to cripple his own forum without knowing what he's doing, and it has nothing to do with how useful a function it may be.



 

  

 
Back to top
 
IP Logged
 
cepheid
Senior Member
****
Offline



Posts: 516
Re: Add once-daily "digest" option for notifications
Reply #8 - Jun 5th, 2009 at 5:32pm
Post Tools
Unilat wrote on Jun 5th, 2009 at 2:06pm:
Just use AJAX to send a request out to the server. The server will run it and no client will have to wait for results.

That's also a very good idea, and something to consider.  But, just having the email process run after the user request is finished would accomplish much the same thing, so if AJAX proves more difficult to implement, there is still a solid solution.

OH Eng wrote on Jun 5th, 2009 at 4:40pm:
Admins have no idea how many emails/hr will ever be sent.

No, but the software does.  When I said "selectable" I mean that the Admin can either enable or disable load management.  If load management is enabled, then the script should limit the number of emails per batch.  There is no need for the admin to know anything.

OH Eng wrote on Jun 5th, 2009 at 4:40pm:
depending on the number of members, notifications selected and topics, and the server eMail limit.

The notifications selected and number of topics is irrelevant for digest mode - that's the whole point of digest mode.  You are guaranteed to send no more than one email per member per day, and that's if every member selects to be notified.  The email limit could be an issue, but that's the whole point of load management - the script can be configured to send no more than X emails per Y minutes, whatever your ISP's limit is.

OH Eng wrote on Jun 5th, 2009 at 4:40pm:
I recommend you test this on a server and force the email over the limit once or twice

None of my servers have an email limit, so I can't test that.  However, under the current system of "sending out as many emails as needed with no limit," I have no problems with my rather mediocre server in terms of CPU load.  Using digest mode would only reduce the number of emails sent.

OH Eng wrote on Jun 5th, 2009 at 4:40pm:
Isn't that what Mods were made for?

Dude, of course Mods are there for that, but this is a forum for suggesting new features, and hence I'm suggesting new features.  At least a few other devs think it's a good idea, so I'm clearly not alone in this.

I'm not trying to imply that YaBB is substandard, nor am I trying to get features implemented that only I would like.  I am suggesting features because that's what the forum is here for, and if other people agree that those features would be useful, then maybe there's something to it.  If nobody else wants the feature, well, the thread can always just languish.

What's the problem?
« Last Edit: Jun 5th, 2009 at 5:34pm by cepheid »  
Back to top
WWW  
IP Logged
 
OH Eng
Past Team Members
Documentation Team
Offline



Posts: 4,026
Location: Pensacola, Florida USA
Re: Add once-daily "digest" option for notifications
Reply #7 - Jun 5th, 2009 at 4:40pm
Post Tools
Quote:
I think this can be selectable by the Admin (in terms of whether to enable load management or not), and I wouldn't necessarily limit it by time but by the number of emails.  Most Admins will probably be fine letting all emails be sent at once; the load issue would only be a real problem on slow servers with super-large forums.


Admins have no idea how many emails/hr will ever be sent.  To know that, they would need to know what every member has set for notifications, and how many topics will be posted in.  What are they supposed to use to predict that?

And it can be a problem on medium to small forums depending on the number of members, notifications selected and topics, and the server eMail limit.  I recommend you test this on a server and force the email over the limit once or twice and watch what happens with the users there before implementing this as a user selection.  I can tell you it created total chaos on one of my forums, so much so that I no longer allow ANY notifications on that board because I don't want to spend all night managing it.  You end up with many users reporting they didn't get notified of X, and while you're looking into it, they get the notification for something they already read and wonder why.

If you want to make something user selectable, make it a single notification per user that tells them new posts were made today... go there and read them.  The forum already uses "new" indicators that tell you where the new posts are, so why duplicate all of that for the convenience of some users.  Isn't that what Mods were made for?








« Last Edit: Jun 5th, 2009 at 4:47pm by OH Eng »  

 
Back to top
 
IP Logged
 
Page Index Toggle Pages: [1] 2 
Topic Tools
 
  « Board Index ‹ Board  ^Top