Notificaciones push al repartidor

hola a todos, nesesito ayuda para crear una funcion de notificacion de nueva oportunidad de entrega.
el funcionamiento seria el siguiente.
El local marca el pedido como listo y se inicia un proceso para enviar una notificacion push al repartidor.
esta notificacion en lugar de llegar a todos los repartidores al mismo tiempo deberia llegar al repartidor (conectado, mas cercano, libre) “y solo a ese” una vez le llegue al repartidor este podra aceptar o rechazar la orden, en caso de rechazarla esta orden buscara al siguiente repartidor (conectado, mas cercano, libre) y en caso de aceptarla el proceso terminaria ahi. se me ocurrio que podria hacerlo con un Foreach pero no se me ocurrio la logica para llevarlo adelante.
si pudieran ayudarme estaria eternamente agradecido.

Con un get query geolocation y un foreach.
Si deseas ayuda me puedes contactar.

Saludos, Andress Ortiz.
QuickDev
WhatsApp: +593987633680