如何使用计时器和NodeJ中的某些条件来管理队列?

Pun*_*ngh 5 sockets events node.js express

我正在创建一个出租车应用程序,其中,当用户订购出租车时,系统选择了三个附近的驾驶员,并向第一个驾驶员发送请求.

现在司机将有30秒接受或拒绝预订,如果司机接受,则确认预订并且不会通知其他司机,

但如果司机拒绝预订或在30秒内未对预订作出回应,则会向第二位司机发送请求.

现在的问题是,我不知道如何管理有三个条件的动作队列.

  1. 如果系统在30秒内没有得到第一个驱动程序的回复,则向队列中的下一个驱动程序发送请求

  2. 如果司机接受预订,则停止排队过程并预订车程.

  3. 如果驾驶员拒绝预订,则立即向下一位驾驶员发送请求,而无需等待30秒.

    欢迎任何建议和想法.