MCPcopy Index your code
hub / github.com/Boris-code/feapder / email_warning

Function email_warning

feapder/utils/tools.py:2549–2581  ·  view source on GitHub ↗
(
    message,
    title,
    message_prefix=None,
    email_sender=None,
    email_password=None,
    email_receiver=None,
    email_smtpserver=None,
    rate_limit=None,
)

Source from the content-addressed store, hash-verified

2547
2548
2549def email_warning(
2550 message,
2551 title,
2552 message_prefix=None,
2553 email_sender=None,
2554 email_password=None,
2555 email_receiver=None,
2556 email_smtpserver=None,
2557 rate_limit=None,
2558):
2559 # 为了加载最新的配置
2560 email_sender = email_sender or setting.EMAIL_SENDER
2561 email_password = email_password or setting.EMAIL_PASSWORD
2562 email_receiver = email_receiver or setting.EMAIL_RECEIVER
2563 email_smtpserver = email_smtpserver or setting.EMAIL_SMTPSERVER
2564 rate_limit = rate_limit if rate_limit is not None else setting.WARNING_INTERVAL
2565
2566 if not all([message, email_sender, email_password, email_receiver]):
2567 return
2568
2569 if reach_freq_limit(
2570 rate_limit, email_receiver, email_sender, message_prefix or message
2571 ):
2572 log.info("报警时间间隔过短,此次报警忽略。 内容 {}".format(message))
2573 return
2574
2575 if isinstance(email_receiver, str):
2576 email_receiver = [email_receiver]
2577
2578 with EmailSender(
2579 username=email_sender, password=email_password, smtpserver=email_smtpserver
2580 ) as email:
2581 return email.send(receivers=email_receiver, title=title, content=message)
2582
2583
2584def linkedsee_warning(message, rate_limit=3600, message_prefix=None, token=None):

Callers 1

send_msgFunction · 0.85

Calls 4

EmailSenderClass · 0.90
reach_freq_limitFunction · 0.85
infoMethod · 0.80
sendMethod · 0.80

Tested by

no test coverage detected