Explorar el Código

Merged in tr069_v1 (pull request #71)

Alternativa TR069 para Econocable FD3-497

Approved-by: Guillermo Espinoza <guillermo@interlink.com.ar>
Maximiliano Schvindt hace 7 años
padre
commit
a16a265694
Se han modificado 5 ficheros con 2595 adiciones y 2091 borrados
  1. 3 0
      app/config/parameters.yml.dist
  2. 3 0
      app/config/parameters.yml.docker
  3. 3 2
      composer.json
  4. 2570 2055
      composer.lock
  5. 16 34
      src/FTTHBundle/Admin/ONUAdmin.php

+ 3 - 0
app/config/parameters.yml.dist

@@ -51,7 +51,10 @@ parameters:
     env(HOST_DUMMY): http://www.flowdat.com/
     env(HOST_DUMMY): http://www.flowdat.com/
 
 
     tr069_service: false
     tr069_service: false
+    tr069_api: tr069.api
     tr069_user: admin
     tr069_user: admin
     tr069_pass: admin
     tr069_pass: admin
     tr069_host: genieacs-nbi
     tr069_host: genieacs-nbi
     tr069_port: 7557
     tr069_port: 7557
+
+    tr069_selenium_host: selenium

+ 3 - 0
app/config/parameters.yml.docker

@@ -46,7 +46,10 @@ parameters:
     onu.distance.nap: 0.2
     onu.distance.nap: 0.2
 
 
     tr069_service: false
     tr069_service: false
+    tr069_api: tr069.api
     tr069_user: admin
     tr069_user: admin
     tr069_pass: admin
     tr069_pass: admin
     tr069_host: genieacs-nbi
     tr069_host: genieacs-nbi
     tr069_port: 7557
     tr069_port: 7557
+
+    tr069_selenium_host: selenium

+ 3 - 2
composer.json

@@ -130,6 +130,7 @@
     },
     },
     "require": {
     "require": {
         "php": ">=5.5.9",
         "php": ">=5.5.9",
+        "codeception/codeception": "^2.4",
         "doctrine/doctrine-bundle": "^1.6",
         "doctrine/doctrine-bundle": "^1.6",
         "doctrine/doctrine-cache-bundle": "^1.2",
         "doctrine/doctrine-cache-bundle": "^1.2",
         "doctrine/doctrine-migrations-bundle": "^1.2",
         "doctrine/doctrine-migrations-bundle": "^1.2",
@@ -151,6 +152,7 @@
         "ik/oauthclient-bundle": "dev-master",
         "ik/oauthclient-bundle": "dev-master",
         "ik/owner-voter-bundle": "dev-master",
         "ik/owner-voter-bundle": "dev-master",
         "ik/template-bundle": "dev-master",
         "ik/template-bundle": "dev-master",
+        "ik/tr069-bundle": "dev-master",
         "ik/webservice-bundle": "dev-master",
         "ik/webservice-bundle": "dev-master",
         "ik/workflow-bundle": "dev-master",
         "ik/workflow-bundle": "dev-master",
         "incenteev/composer-parameter-handler": "^2.0",
         "incenteev/composer-parameter-handler": "^2.0",
@@ -171,8 +173,7 @@
         "symfony/web-server-bundle": "^3.3",
         "symfony/web-server-bundle": "^3.3",
         "twig/extensions": "^1.5",
         "twig/extensions": "^1.5",
         "twig/twig": "^2.0",
         "twig/twig": "^2.0",
-        "voryx/restgeneratorbundle": "dev-master",
-        "ik/tr069-bundle": "dev-master"
+        "voryx/restgeneratorbundle": "dev-master"
     },
     },
     "require-dev": {
     "require-dev": {
         "phpunit/phpunit": "^6.4",
         "phpunit/phpunit": "^6.4",

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 2570 - 2055
composer.lock


+ 16 - 34
src/FTTHBundle/Admin/ONUAdmin.php

@@ -112,6 +112,8 @@ class ONUAdmin extends WorkflowBaseAdmin
         if($this->isCurrentRoute('edit')) {
         if($this->isCurrentRoute('edit')) {
 
 
             if($this->getParameter('tr069_service')) {
             if($this->getParameter('tr069_service')) {
+                $serviceName = $this->getParameter('tr069_api');
+                $tr069 = $this->get($serviceName);
                 $object = $this->getSubject();
                 $object = $this->getSubject();
                 
                 
                 $query = array('$or' => array());
                 $query = array('$or' => array());
@@ -131,11 +133,11 @@ class ONUAdmin extends WorkflowBaseAdmin
                 }
                 }
 
 
 
 
-                $devices = $this->get('tr069.api')->getDevices($query);
+                $devices = $tr069->getDevices($query);
 
 
                 if(is_array($devices) && isset($devices[0]) && isset($devices[0]['_id'])) {
                 if(is_array($devices) && isset($devices[0]) && isset($devices[0]['_id'])) {
 
 
-                    $tr069Data = $this->getTR069Data($devices[0]);
+                    $tr069Data = $tr069->getTR069Data($devices[0]);
 
 
                     $id = $tr069Data['_id'] ?? null;
                     $id = $tr069Data['_id'] ?? null;
                     $manufacturer = $tr069Data['_deviceId']['_Manufacturer'] ?? null;
                     $manufacturer = $tr069Data['_deviceId']['_Manufacturer'] ?? null;
@@ -258,6 +260,8 @@ class ONUAdmin extends WorkflowBaseAdmin
             ->end();
             ->end();
 
 
         if($this->getParameter('tr069_service')) {
         if($this->getParameter('tr069_service')) {
+            $serviceName = $this->getParameter('tr069_api');
+            $tr069 = $this->get($serviceName);
             $object = $this->getSubject();
             $object = $this->getSubject();
                 
                 
             $query = array('$or' => array());
             $query = array('$or' => array());
@@ -276,11 +280,11 @@ class ONUAdmin extends WorkflowBaseAdmin
                 $query['$or'][] = array("InternetGatewayDevice.DeviceInfo.SerialNumber" => strtolower($object->getPonSerialNumberAux()));
                 $query['$or'][] = array("InternetGatewayDevice.DeviceInfo.SerialNumber" => strtolower($object->getPonSerialNumberAux()));
             }
             }
             
             
-            $devices = $this->get('tr069.api')->getDevices($query);
+            $devices = $tr069->getDevices($query);
 
 
             if(is_array($devices) && isset($devices[0]) && isset($devices[0]['_id'])) {
             if(is_array($devices) && isset($devices[0]) && isset($devices[0]['_id'])) {
 
 
-                $tr069Data = $this->getTR069Data($devices[0]);
+                $tr069Data = $tr069->getTR069Data($devices[0]);
 
 
                 $id = $tr069Data['_id'] ?? null;
                 $id = $tr069Data['_id'] ?? null;
                 $manufacturer = $tr069Data['_deviceId']['_Manufacturer'] ?? null;
                 $manufacturer = $tr069Data['_deviceId']['_Manufacturer'] ?? null;
@@ -371,13 +375,16 @@ class ONUAdmin extends WorkflowBaseAdmin
             $broadcast = ($this->getForm()->get('tr069_broadcast')->getData()) ?? null;
             $broadcast = ($this->getForm()->get('tr069_broadcast')->getData()) ?? null;
             $status = ($this->getForm()->get('tr069_status')->getData()) ?? null;
             $status = ($this->getForm()->get('tr069_status')->getData()) ?? null;
 
 
-            if($ssid) $aux = $this->get('tr069.api')->setWlan($id, $ssid, $pass);
-            
-            if(!is_null($catv)) $aux = $this->get('tr069.api')->setCATV($id, $catv);
+            $serviceName = $this->getParameter('tr069_api');
+            $tr069 = $this->get($serviceName);
+
+            if(!is_null($catv)) $aux = $tr069->setCATV($id, $catv);
+
+            if($ssid) $aux = $tr069->setWlan($id, $ssid, $pass);
             
             
-            if(!is_null($broadcast)) $aux = $this->get('tr069.api')->setWbroadcast($id, $broadcast);
+            if(!is_null($broadcast)) $aux = $tr069->setWbroadcast($id, $broadcast);
             
             
-            if(!is_null($status)) $aux = $this->get('tr069.api')->setWstatus($id, $status);
+            if(!is_null($status)) $aux = $tr069->setWstatus($id, $status);
         }
         }
         
         
     }
     }
@@ -479,31 +486,6 @@ class ONUAdmin extends WorkflowBaseAdmin
 	    	}
 	    	}
 	    }
 	    }
 	    return parent::update($object);
 	    return parent::update($object);
-    }
-
-    private function getTR069Data($data) {
-        $result = array();
-
-        $result['_id'] = $data['_id'] ?? null;
-        $result['_deviceId'] = $data['_deviceId'] ?? null;
-
-        $result['SSID'] = $data['InternetGatewayDevice']['LANDevice']['1']['WLANConfiguration']['1']['SSID'] ?? null;
-        $result['keyPassphrase'] = $data['InternetGatewayDevice']['LANDevice']['1']['WLANConfiguration']['1']['KeyPassphrase'] ?? null;
-        $result['SSIDAdvertisementEnabled'] = $data['InternetGatewayDevice']['LANDevice']['1']['WLANConfiguration']['1']['SSIDAdvertisementEnabled'] ?? null;
-        $result['Status'] = $data['InternetGatewayDevice']['LANDevice']['1']['WLANConfiguration']['1']['Enable'] ?? null;
-        
-        //InternetGatewayDevice.LANDevice.1.WLANConfiguration.1.PreSharedKey.1.PreSharedKey
-        $result['preSharedKey'] = $data['InternetGatewayDevice']['LANDevice']['1']['WLANConfiguration']['1']['PreSharedKey']['1']['PreSharedKey'] ?? null;
-        
-        $result['CatvPower'] = $data['InternetGatewayDevice']['VS_AppCfg']['VsCatvCfg']['CatvPower'] ?? null;
-        $result['ExternalIPAddress'] = $data['InternetGatewayDevice']['WANDevice']['1']['WANConnectionDevice']['1']['WANPPPConnection']['1']['ExternalIPAddress'] ?? null;
-
-        return $result;
-            
-
-        
-
-
     }
     }
     
     
 }
 }