62 lines
1.6 KiB
Python
Executable File
62 lines
1.6 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
"""
|
|
发送任务到滴答清单(通过邮件)
|
|
"""
|
|
|
|
import smtplib
|
|
from email.mime.text import MIMEText
|
|
from email.utils import formataddr
|
|
import sys
|
|
|
|
# 163邮箱配置
|
|
SMTP_SERVER = "smtp.163.com"
|
|
SMTP_PORT = 465
|
|
EMAIL = "work_fyx02@163.com"
|
|
PASSWORD = "PU7fV9D2UeVN9duK"
|
|
|
|
# 滴答清单任务邮箱
|
|
DIDA_TASK_EMAIL = "todo+ekrdvt2ifemv@mail.dida365.com"
|
|
|
|
def send_task_email(subject, content=""):
|
|
"""发送任务邮件到滴答清单"""
|
|
|
|
msg = MIMEText(content, 'plain', 'utf-8')
|
|
msg['From'] = formataddr(("OpenClaw", EMAIL))
|
|
msg['To'] = DIDA_TASK_EMAIL
|
|
msg['Subject'] = subject
|
|
|
|
try:
|
|
server = smtplib.SMTP_SSL(SMTP_SERVER, SMTP_PORT)
|
|
server.login(EMAIL, PASSWORD)
|
|
server.sendmail(EMAIL, [DIDA_TASK_EMAIL], msg.as_string())
|
|
server.quit()
|
|
return True
|
|
except Exception as e:
|
|
print(f"❌ 发送失败: {e}")
|
|
return False
|
|
|
|
def main():
|
|
if len(sys.argv) < 2:
|
|
print("用法:")
|
|
print(" python send_dida_task.py '任务标题'")
|
|
print(" python send_dida_task.py '任务标题' '任务详情'")
|
|
return
|
|
|
|
subject = sys.argv[1]
|
|
content = sys.argv[2] if len(sys.argv) > 2 else ""
|
|
|
|
print(f"\n📧 发送任务到滴答清单")
|
|
print(f" 收件人: {DIDA_TASK_EMAIL}")
|
|
print(f" 主题: {subject}")
|
|
if content:
|
|
print(f" 内容: {content}")
|
|
|
|
if send_task_email(subject, content):
|
|
print("\n✅ 任务邮件已发送!")
|
|
print(" 请在滴答清单APP中查看新任务")
|
|
else:
|
|
print("\n❌ 发送失败")
|
|
|
|
if __name__ == "__main__":
|
|
main()
|