Browse Source

UPD: removed GetStatus from SmartESL constructor
UPD: optimized fb service cli

Giancarlo Voci 7 years ago
parent
commit
5283440393

+ 1 - 1
cfg/config.bin

@@ -1 +1 @@
-eJyFkV1v2jAUhu/Pr4i42jQ1cUigbJGlhWAgbYhZvsRWIRSCgaiJTfMBpYj/vpB12kUvZsnS0ZHf8z7n9dMuE+s4K5cQEc+3qYtVuScjMMOAOtQc4U5ZJEoHLNOaEglLgRcSCG1cp8q2ELxifKPAiAzDCe4CcS06st0J7oTB+G7Qgak9mTrNDfC28WDwYHoyez2kBcOXS5Xm7NPnL5ra0/oIoesVRr6LO/m5fMm+7UVZ4UwkcXarjIMoKqxpqG9s1jzOGRZ5lvLnDmzWdckKXAhRNfUhLkssDoznKd/AzFysPBJ4P1dj6q3GZugEWEUNbYSromYAhjSPqz0MTZ+EnoOVP0PBtwPimjOC6ezOuTUcOqErK/QDOiNeQ/79XXG9Ko0hq0olzeMdK5VM7IR84DuwLequbrIw+N/7umoVDYzPMpZU0mmfJnspqctK5KyQkqzRSIzH64zBX4gW7x0XnizqEXm7Xt4WKsSmTqpUcDDaDNWvXVntD2QVyaqO4EMPQZttD+m61jIUx8Y0IH4AxjM7Ywv9O6qq3+uoq6HePRht1r+K3dvz8aGgj9z1LT7nkzetvph9NvXdRXQs4eOIXg91VV1HOrQTnCgLdTZXt/EgMh9P233a3e9+nF+Og/h84hO1WW9su6MhXfjEi2yLLGFOveYju5oOvwHpNtgs
+eJyFkV2PmkAUhu/PryBetWkWhg9dWzNJEUdlVxnDh7G7MQZwVqnAUBhcXeN/L9JtmrQXnWSSk5N5z/ucd553KY/CtFrDkrieTR2syl0ZgRn4dEbNEe5UZax0wDKtKZGw5LsBgcDGdaK8lDwXLN8qMCLDYII1II5FR7YzwZ3AH9/1OzC1J9NZc3380ngweDBdmZ2KpGT4chFJxj58/KSrXb2HELpeYeQ5uJOdqx/plz2vBE55HKa3alDwUmBdR73BNsrDjGGepUl+6MA2qitW4pJz0dRFWFWYFyzPknwLc3O1cYnvftuMqbsZm8HMxypqaJdYlDUDGEiLUOxhaHokcGdY+TUUPNsnjjknmM7vZrfGjE7oxgo8n86J25B/fVdcr0pjyESlJFm4Y5WS8h2Xi3wHtkWdzU0W+P97X4tW0cB4LGWxkF73SbyX4roSPGOlFKeNRmJ5GKUMfkO0eO+48GxRl8gv0fq2UMm3dSwSnkMbofpZk9VeX1aRrBoIBn83NQ1BG24XGYbeQpTHxtUnng8HdsYW+nNU1bg3kKaj7j20UT+Vu7fD8aGkj7njWfkin7zp9cXssannrJbHCgb/jugaXU3r6Vpj1s44nUXvyX2kemGFK/Y6jZxTOK9XPPpek+Hk0G/2G9vOaEhXHnGXtkXWsKBu85OabsBPzo7YoQ==

+ 18 - 61
src/Modules/Blank/Pages.php

@@ -9,6 +9,7 @@
 namespace Modules\Blank;
 
 use Base;
+use OpenMind\FindBox\FindBoxCoreSystem;
 use OpenMind\FindBox\QueueCommand;
 use OpenMind\System\QueueSystem;
 use OpenMind\Web\Controller;
@@ -22,7 +23,7 @@ class Pages extends Controller
 	 */
 	public function HelloWorld($f3)
 	{
-		$this->BlinkON([
+		$labels = [
 			'0113067F',
 			'011306C5',
 			'01130713',
@@ -31,8 +32,7 @@ class Pages extends Controller
 			'011307B4',
 			'01130D98',
 			'01130D9A',
-			'01130DA5']);
-		$this->BlinkON([
+			'01130DA5',
 			'01130E03',
 			'01130E27',
 			'01130F13',
@@ -41,70 +41,27 @@ class Pages extends Controller
 			'0113174B',
 			'01131777',
 			'01131797',
-			'01131798'
-		]);
-		$this->BlinkON([
+			'01131798',
+			'0113C2FB',
+			'0113C2FE',
+			'0113C330',
 			'0113C333',
+			'0113C337',
 			'0113C371',
-			'0113C330',
 			'0113C374',
-			'0113C337',
-			'0113C2FE',
-			'0113C377',
-			'0113C2FB'
-		]);
+			'0113C377'
+		];
 
-		sleep(30);
+/*		$findBoxCore = new FindBoxCoreSystem(...array_values($f3->get('CORE.fb')));
 
-		$this->BlinkOFF([
-			'0113067F',
-			'011306C5',
-			'01130713',
-			'01130747',
-			'011307A4',
-			'011307B4',
-			'01130D98',
-			'01130D9A',
-			'01130DA5']);
-		$this->BlinkOFF([
-			'01130E03',
-			'01130E27',
-			'01130F13',
-			'01131170',
-			'01131749',
-			'0113174B',
-			'01131777',
-			'01131797',
-			'01131798']);
-		$this->BlinkOFF([
-			'0113C333',
-			'0113C371',
-			'0113C330',
-			'0113C374',
-			'0113C337',
-			'0113C2FE',
-			'0113C377',
-			'0113C2FB'
-		]);
+		foreach($labels as $label) {
+			$findBoxCore->Bind($label, $label);
+			//$findBoxCore->UnBind($label);
+		}*/
 
-		/*		$this->BlinkON(['0113C333']);
-				$this->BlinkON(['0113C371']);
-				$this->BlinkON(['0113C330']);
-				$this->BlinkON(['0113C374']);
-				$this->BlinkON(['0113C337']);
-				$this->BlinkON(['0113C2FE']);
-				$this->BlinkON(['0113C377']);
-				$this->BlinkON(['0113C2FB']);
-				sleep(30);
-				$this->BlinkOFF(['0113C333']);
-				$this->BlinkOFF(['0113C371']);
-				$this->BlinkOFF(['0113C330']);
-				$this->BlinkOFF(['0113C374']);
-				$this->BlinkOFF(['0113C337']);
-				$this->BlinkOFF(['0113C2FE']);
-				$this->BlinkOFF(['0113C377']);
-				$this->BlinkOFF(['0113C2FB']);
-		*/
+		$this->BlinkON($labels);
+		//sleep(15);
+		//$this->BlinkOFF($labels);
 
 		$f3->set('MESSAGE', 'Hello World');
 		$f3->set('CONTENT', 'message.tpl');

+ 12 - 3
src/OpenMind/FindBox/FindBoxService.php

@@ -159,7 +159,6 @@ class FindBoxService
 		$jobs = [];
 
 		while (true) {
-
 			$this->getCurrentQueue();
 
 			foreach($this->labelToBlink as $commandID => &$label) {
@@ -199,7 +198,6 @@ class FindBoxService
 
 				// Response RESTful ricevuta da Findbox Core?
 				if (is_array($err)) {
-
 					if ($this->ManageBlinkFaults($asyncBlink, $asyncBlink->getLabels(), $err)) {
 						// Remove the JOB
 						unset($jobs[$commandID]);
@@ -233,7 +231,12 @@ class FindBoxService
 					break;
 				case QueueCommand::$Q_BLINK_ON:
 				case QueueCommand::$Q_BLINK_OFF:
-					$this->labelToBlink[rand(0, 60000)] = $qCommand;
+					$labelsSplitted = array_chunk($qCommand->id, 9);
+					foreach($labelsSplitted as $labels) {
+						$cmd = clone $qCommand;
+						$cmd->id = $labels;
+						$this->labelToBlink[rand(0, 60000)] = $cmd;
+					}
 					break;
 				case QueueCommand::$Q_DISPLAY:
 					$this->ServiceLogger->write("Change display for label {$qCommand->id} requested", 'd/m/Y H:i:s');
@@ -269,6 +272,12 @@ class FindBoxService
 	private function ManageBlinkFaults(AsyncJobClass &$job, array $labels, $fbError): bool
 	{
 		$labelResponses = $this->findBoxCore->getLabelsFromResponse($fbError);
+		if ($labelResponses === NULL) {
+			$labelJ = join(', ', $labels);
+			$this->ServiceLogger->write("Label(s) {$labelJ} error removed from queue: {$fbError['value']['value']}", 'd/m/Y H:i:s');
+			return true;
+		}
+
 		// Filter labels with errors
 		$fail = array_filter($labelResponses, function ($v) {
 			return !$v;

+ 2 - 2
src/OpenMind/FindBox/QueueCommand.php

@@ -20,9 +20,9 @@ class QueueCommand
 	public $description;
 	public $params;
 
-	public function __construct($labelID)
+	public function __construct(array $labels)
 	{
-		$this->id = $labelID;
+		$this->id = $labels;
 		$this->params = null;
 	}
 

+ 0 - 2
src/OpenMind/FindBox/SmartESL.php

@@ -17,8 +17,6 @@ class SmartESL
 	{
 		$this->core = $coreL;
 		$this->labels = array_map('strtoupper', $LabelID);
-		// TODO utilizzare la $Cache di F3 per velocizzare le operazioni
-		$this->labelProperties = $this->GetStatus();
 	}
 
 	/**