A synchronizer of Notion and Apple Reminder App based on Scriptable API
When opening the reminder app, synchronize the to-do information and completion status between Notion and the reminder app.
- Collect all tasks from Reminder and Notion, and put them in two separate arrays.
- Traverse the Reminder tasks and judge:
- Tasks in lists like Maybe / Waiting for, Daily / Weekly, etc. will not be pushed.
- Whether there is a consistent task in Notion: If yes, judge the completion status and time and update it, taking the information on the Notion side as the main source.
- If not, completed tasks will not be pushed to Notion, and unfinished tasks will be synchronized (create a new Notion task).
- Traverse the Notion tasks and judge:
- Whether there is a consistent task in Reminder: If yes, and it has been updated.
- If not, completed tasks will not be pushed to Reminder, and unfinished tasks will be synchronized (create a new Reminder task).
- Synchronized content: time (day), tomato, and completion status.
Scriptable App
Token "secret_XXX"; Reminder DB ID "XXX"; Project DB ID "XXX";
Built according to GTD ideas, it includes the following Calendar (Reminder Container):
- Inbox: All unsorted to-do items
- @Context: To-do items without project affiliation
- ProjectXXX: To-do items belonging to a project
- Daily / Weekly, Waiting for, Someday / Maybe: No to-do synchronization involved
- Finish: checkbox, to judge whether it is completed
- Name: title, to-do item name
- Date: date, start and end date, only synchronize the start date
- Project: relation, link to the project title in the project database
- Tomatos: number, expected time consumption
- Project: title, project name
- Other properties do not involve to-do synchronization
在开启提醒事项app时同步Notion与提醒事项app中的待办事项信息与完成情况
- 收集Reminder和Notion的所有任务,分别放在两个array
- 遍历Reminder任务,判断:
- Maybe / Waiting for、Daily / Weekly等列表的任务不会push
- Notion中是否存在一致的任务:存在,判断完成状态与时间并更新,以Notion侧信息为主
- 不存在:已完成的任务不会push到notion,同步未完成任务(新建notion task)
- 遍历Notion任务,判断
- Reminder中是否存在一致的任务:存在,且已更新
- 不存在:已完成的任务不会push到Reminder,同步未完成任务(新建Reminder task)
- 同步内容:时间(日)、番茄、是否完成
Scriptable App
Token "secret_XXX"; 提醒事项ID "XXX"; 项目总览ID "XXX";
按照GTD思路搭建,包含如下Calendar(Reminder Container):
- Inbox:所有未整理的待办事项
- @Context:没有项目归属的待办事项
- ProjectXXX:属于某项目的待办事项
- Daily / Weekly, Waiting for,Someday / Maybe:不涉及待办同步
- Finish:checkbox,判断是否完成
- Name:title,待办事项名称
- Date:date,起止日期, 仅同步起始日期
- Project:relation,链接project数据库中项目title
- Tomatos:number,预期耗时
- 项目:title,项目名称
- 其他property不涉及待办同步