Ejemplo n.º 1
0
def process_user_events():
    logging.info("Processing user events (%d users)." % len(user_events))

    # prepare email interface
    config = get_config("webapp")
    mail_config = {}
    mail_config["mail.on"] = config["turbomail"]["enable"]
    mail_config["mail.manager"] = config["turbomail"]["manager"]
    mail_config["mail.transport"] = config["turbomail"]["transport"]
    mail_config["mail.smtp.server"] = config["turbomail"]["server"]
    interface.start(mail_config)

    for id, info in user_events.iteritems():

        if len(info["events"]) <= 5:
            for event in info["events"]:
                title, plain, rich = format_single(event)
                send_email(config["turbomail"]["sender"], info["truename"], info["email_list"], title, plain, rich)
        else:
            title, plain, rich = format_batch(info["events"])
            send_email(config["turbomail"]["sender"], info["truename"], info["email_list"], title, plain, rich)

    if no_data:
        send_email(
            config["turbomail"]["sender"],
            "jizhang",
            ["*****@*****.**", "*****@*****.**"],
            "no data",
            "no data",
            "no data",
        )
Ejemplo n.º 2
0
 def on_success(cls, request, values):
     g = request.globals
     config = g.getMailConfig()
     interface.start(config)
     msg = Message(config['mail.smtp.username'], g.mailRecipient, "Contact", encoding ='utf-8')
     msg.plain = u'\n\n'.join( map(lambda s: s.format(**values), [u'First Name: {name}', u'Email: {email}', u'Message: {message}']) )
     msg.send()
     interface.stop(force=True)
     return {'success':True, 'redirect':request.fwd_url('website_home')}
Ejemplo n.º 3
0
    def __init__(self, config):
        """One instance of Globals is created during application
        initialization and is available during requests via the
        'app_globals' variable

        """
        self.cache = CacheManager(**parse_cache_config_options(config))
        atexit.register(tm_pylons.shutdown_extension)
        interface.start(tm_pylons.FakeConfigObj(config))
Ejemplo n.º 4
0
    def __init__(self):
        self.session = sessionmaker(bind=engine_sakuya_db)()

        self.config = get_config('webapp')
        mail_config = {}
        mail_config['mail.on'] = self.config['turbomail']['enable']
        mail_config['mail.manager'] = self.config['turbomail']['manager']
        mail_config['mail.transport'] = self.config['turbomail']['transport']
        mail_config['mail.smtp.server'] = 'smtp.126.com'
        mail_config['mail.smtp.username'] = '******'
        mail_config['mail.smtp.password'] = '******'
        interface.start(mail_config)
Ejemplo n.º 5
0
    def __init__(self):
        self.session = sessionmaker(bind=engine_sakuya_db)()

        self.config = get_config('webapp')
        mail_config = {}
        mail_config['mail.on'] = self.config['turbomail']['enable']
        mail_config['mail.manager'] = self.config['turbomail']['manager']
        mail_config['mail.transport'] = self.config['turbomail']['transport']
        mail_config['mail.smtp.server'] = 'smtp.126.com'
        mail_config['mail.smtp.username'] = '******'
        mail_config['mail.smtp.password'] = '******'
        interface.start(mail_config)
Ejemplo n.º 6
0
def __notify(chart, message):
    """
    notify using email

    chart: Charts data row
    message: message body

    sending alert email to owner and followers
    """
    config = __get_config('webapp')

    mail_config = {}
    mail_config['mail.on'] = config['turbomail']['enable']
    mail_config['mail.manager'] = config['turbomail']['manager']
    mail_config['mail.transport'] = config['turbomail']['transport']
    mail_config['mail.smtp.server'] = config['turbomail']['server']

    sender = config['turbomail']['sender']
    """
    rand send email 
    """
    day_str = datetime.datetime.strftime(datetime.datetime.today(), "%d%H")
    sender = 'Knowing <*****@*****.**>' % day_str

    subject = message

    u = session.query(Users).filter(Users.username == chart.owner)

    addressee = ''
    if u:
        for i in u:
            if i.mobile:
                addressee = i.mobile + '@139.com'
            else:
                logger.warning("no mobile set for user \"%s\"" % i.username)
                return

    interface.start(mail_config)
    now = str(datetime.datetime.now())[0:19]

    chart_url = 'http://knowing.corp.anjuke.com/chart/%d' % chart.id

    html_part = u"<html><body><h1>Look, %s</h1><p>时间: %s</p><p>详细信息: %s</p><p><a href='%s'>%s</a></p><p>This mail is sent by Knowing</p></body></html>"
    html_part %= (chart.name, now, message, chart_url, chart_url)
    text_part = u"[critical] 时间: %s 详细信息: %s"
    text_part %= (now, message)

    mail = Message(sender, addressee, subject)
    mail.encoding = 'utf-8'
    mail.plain = message
    mail.rich = html_part
    flag = mail.send()
Ejemplo n.º 7
0
def __notify(chart, message):
    """
    notify using email

    chart: Charts data row
    message: message body

    sending alert email to owner and followers
    """
    config = __get_config('webapp')

    mail_config = {}
    mail_config['mail.on'] = config['turbomail']['enable']
    mail_config['mail.manager'] = config['turbomail']['manager']
    mail_config['mail.transport'] = config['turbomail']['transport']
    mail_config['mail.smtp.server'] = config['turbomail']['server']

    sender = config['turbomail']['sender']
    """
    rand send email 
    """
    day_str = datetime.datetime.strftime(datetime.datetime.today(),"%d%H")
    sender = 'Knowing <*****@*****.**>' % day_str

    subject = message

    u = session.query(Users).filter(Users.username == chart.owner)

    addressee = ''
    if u:
        for i in u:
            if i.mobile:
                addressee = i.mobile + '@139.com'
            else:
                logger.warning("no mobile set for user \"%s\"" % i.username)
                return

    interface.start(mail_config)
    now = str(datetime.datetime.now())[0:19]

    chart_url = 'http://knowing.corp.anjuke.com/chart/%d' % chart.id

    html_part = u"<html><body><h1>Look, %s</h1><p>时间: %s</p><p>详细信息: %s</p><p><a href='%s'>%s</a></p><p>This mail is sent by Knowing</p></body></html>"
    html_part %= (chart.name, now, message, chart_url, chart_url)
    text_part = u"[critical] 时间: %s 详细信息: %s"
    text_part %= (now, message)

    mail = Message(sender, addressee, subject)
    mail.encoding = 'utf-8'
    mail.plain = message
    mail.rich = html_part
    flag = mail.send()
Ejemplo n.º 8
0
def process_user_events():
    logging.info('Processing user events (%d users).' % len(user_events))

    # prepare email interface
    config = get_config('webapp')
    mail_config = {}
    mail_config['mail.on'] = config['turbomail']['enable']
    mail_config['mail.manager'] = config['turbomail']['manager']
    mail_config['mail.transport'] = config['turbomail']['transport']
    mail_config['mail.smtp.server'] = config['turbomail']['server']
    interface.start(mail_config)

    for id, info in user_events.iteritems():

        if len(info['events']) <= 5:
            for event in info['events']:
                title, plain, rich = format_single(event)
                send_email(config['turbomail']['sender'], info['truename'], info['email_list'], title, plain, rich)
        else:
            title, plain, rich = format_batch(info['events'])
            send_email(config['turbomail']['sender'], info['truename'], info['email_list'], title, plain, rich)

    if no_data:
        send_email(config['turbomail']['sender'], 'jizhang', ['*****@*****.**', '*****@*****.**'], 'no data', 'no data', 'no data')