firebase 云函数中的 pub/sub 如何工作?
How does pub/sub in firebase cloud function work?
我正在构建一个关于使用 firebase 进行工作计划管理的 Web 应用程序。
流程是:
-创建排班表模板:
template = {
schedule : [
{
day : 'Monday',
work_time : '10am-6pm'
},
{
day : 'Tuesday',
work_time : '8am-3pm'
}
],
from_date : '2021/01/25',
to_date : '2021/05/25'
}
-创建用户班次:
将模板添加到用户的班次或编辑模板
所以基本上,我需要通过用户的模板数据来订阅云调度程序,以便在日期范围内每天添加到用户的班次。
shift = {
user_id : 'user_id',
day : 'Monday',
work_date : '2021/01/25',
work_time : '10am-6pm',
}
// on the next day auto create
shift = {
user_id : 'user_id',
day : 'Tuesday',
work_date : '2021/01/26',
work_time : '8am-3pm'
}
-我需要在用户轮班编辑模板时取消订阅调度程序。
-在模板创建中,有一个按钮可以停止为拥有该模板的所有用户创建班次。
我说的有道理吗?
请帮助我的用例。可能吗?
在某些用例中,每个午夜(或根据用例的任何时间)将 template/initial 数据添加到数据库中是很常见的,以便可以在某处更新或列出。
I need to unsubscribe the scheduler when editing template on each user's shift.
I also need to unsubscribe all related user's scheduler when click stop creating button on template creation.
没有直接的方法可以做那样的事情。当用户开始编辑他们的班次时,您必须先将其存储在数据库中。在您的预定功能中,您可以检查(从数据库)是否正在编辑任务。如果是,则跳过它并继续其他。
此外,“所有相关用户的调度程序” 是什么意思?理想情况下,您将拥有一个单一的云功能来处理所有用户,而不是为每个用户提供一个专门的 pub/sub 主题。您只需按照与第一种情况相同的方式操作,如果用户单击了那个 停止按钮 然后将其存储在数据库中并且在您的函数运行时不处理该用户。
我正在构建一个关于使用 firebase 进行工作计划管理的 Web 应用程序。 流程是:
-创建排班表模板:
template = {
schedule : [
{
day : 'Monday',
work_time : '10am-6pm'
},
{
day : 'Tuesday',
work_time : '8am-3pm'
}
],
from_date : '2021/01/25',
to_date : '2021/05/25'
}
-创建用户班次: 将模板添加到用户的班次或编辑模板
所以基本上,我需要通过用户的模板数据来订阅云调度程序,以便在日期范围内每天添加到用户的班次。
shift = {
user_id : 'user_id',
day : 'Monday',
work_date : '2021/01/25',
work_time : '10am-6pm',
}
// on the next day auto create
shift = {
user_id : 'user_id',
day : 'Tuesday',
work_date : '2021/01/26',
work_time : '8am-3pm'
}
-我需要在用户轮班编辑模板时取消订阅调度程序。
-在模板创建中,有一个按钮可以停止为拥有该模板的所有用户创建班次。
我说的有道理吗? 请帮助我的用例。可能吗?
在某些用例中,每个午夜(或根据用例的任何时间)将 template/initial 数据添加到数据库中是很常见的,以便可以在某处更新或列出。
I need to unsubscribe the scheduler when editing template on each user's shift.
I also need to unsubscribe all related user's scheduler when click stop creating button on template creation.
没有直接的方法可以做那样的事情。当用户开始编辑他们的班次时,您必须先将其存储在数据库中。在您的预定功能中,您可以检查(从数据库)是否正在编辑任务。如果是,则跳过它并继续其他。
此外,“所有相关用户的调度程序” 是什么意思?理想情况下,您将拥有一个单一的云功能来处理所有用户,而不是为每个用户提供一个专门的 pub/sub 主题。您只需按照与第一种情况相同的方式操作,如果用户单击了那个 停止按钮 然后将其存储在数据库中并且在您的函数运行时不处理该用户。