From 13531171d7c00751a590018f190dbee1710970f0 Mon Sep 17 00:00:00 2001 From: Ramon Gutierrez Date: Wed, 3 May 2023 11:03:25 +0800 Subject: [PATCH] Update MQTT client to send to both legacy and new customer sessions #730 --- src/Service/MQTTClient.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/Service/MQTTClient.php b/src/Service/MQTTClient.php index 00229f5f..8beebde5 100644 --- a/src/Service/MQTTClient.php +++ b/src/Service/MQTTClient.php @@ -38,13 +38,23 @@ class MQTTClient //error_log('sending mqtt event: '); //error_log(print_r($payload, true)); - $sessions = $job_order->getCustomer()->getMobileSessions(); + // get all new and legacy mobile sessions + $legacy_sessions = $job_order->getCustomer()->getMobileSessions(); + + $new_sessions = []; + $cust_user = $job_order->getCustomer()->getCustomerUser(); + if (!empty($cust_user)) { + $new_sessions = $cust_user->getMobileSessions(); + } + + $sessions = array_merge($legacy_sessions, $new_sessions); // TODO: make this more elegant since getPhoneNumber() might differ later on + if (count($sessions) == 0) { error_log("no sessions to send mqtt event to"); return; } - + $channels = []; // send to every customer session