You need to code a simple function that sends the email (better would be to 
queue them and send them asynchronously).
There's nothing "embedded" in web2py ready to use for that kind of 
functionality.....

def app_log(message):
    mail.send(to=['m...@example.com'],
              subject='event happened',
              message=message)


Then, you can do wherever you need in your code
app_log('something happened')



But that would slow response times because the mail is sent synchronously.
Better to use the scheduler for that. In addition to the app_log() 
function, just define in a model file


def queue_log(message):
     mysched.queue_task(app_log, [message])

from gluon.scheduler import Scheduler
mysched = Scheduler(db)

Now, in your app, use 
queue_log('something happened')

Mail sending will be queued. To activate the queue processing, just start
web2py.py -K yourappname


as another process. It will periodically check for queued tasks (your 
emails) and send them without slowing down your response times.



-- 



Reply via email to