refs #948 get MAC address
							parent
							
								
									58b7f0d406
								
							
						
					
					
						commit
						376dec466f
					
				|  | @ -316,7 +316,7 @@ class ogAdmClientWorker (ogLiveWorker): | ||||||
|             } |             } | ||||||
|         return { |         return { | ||||||
|             'nfn': 'RESPUESTA_status', |             'nfn': 'RESPUESTA_status', | ||||||
|             'mac': '12:23:34:45:56:67', |             'mac': self.mac, | ||||||
|             'ip': self.IPlocal, |             'ip': self.IPlocal, | ||||||
|             'cfg': cfg, |             'cfg': cfg, | ||||||
|             'threads': thr_status, |             'threads': thr_status, | ||||||
|  |  | ||||||
|  | @ -200,6 +200,15 @@ class ogLiveWorker(ServerWorker): | ||||||
|         logger.info ('local IP is "{}"'.format (self.IPlocal)) |         logger.info ('local IP is "{}"'.format (self.IPlocal)) | ||||||
|         return True |         return True | ||||||
| 
 | 
 | ||||||
|  |     def tomaMAClocal (self): | ||||||
|  |         ## tomaIPlocal() calls interfaceAdm('getIpAddress') | ||||||
|  |         ## getIpAddress runs 'ip addr show' and returns the IP address of every network interface except "lo" | ||||||
|  |         ## (ie. breaks badly if there's more than one network interface) | ||||||
|  |         ## let's make the same assumptions here | ||||||
|  |         mac = subprocess.run (["ip -json link show |jq -r '.[] |select (.ifname != \"lo\") |.address'"], shell=True, capture_output=True, text=True) | ||||||
|  |         self.mac = mac.stdout.strip() | ||||||
|  |         return True | ||||||
|  | 
 | ||||||
|     def enviaMensajeServidor (self, path, obj={}): |     def enviaMensajeServidor (self, path, obj={}): | ||||||
|         obj['iph'] = self.IPlocal          ## Ip del ordenador |         obj['iph'] = self.IPlocal          ## Ip del ordenador | ||||||
|         obj['ido'] = self.idordenador      ## Identificador del ordenador |         obj['ido'] = self.idordenador      ## Identificador del ordenador | ||||||
|  | @ -272,6 +281,7 @@ class ogLiveWorker(ServerWorker): | ||||||
| 
 | 
 | ||||||
|         self.pathinterface   = None |         self.pathinterface   = None | ||||||
|         self.IPlocal         = None     ## Ip del ordenador |         self.IPlocal         = None     ## Ip del ordenador | ||||||
|  |         self.mac             = None     ## MAC del ordenador | ||||||
|         self.idordenador     = None     ## Identificador del ordenador |         self.idordenador     = None     ## Identificador del ordenador | ||||||
|         self.nombreordenador = None     ## Nombre del ordenador |         self.nombreordenador = None     ## Nombre del ordenador | ||||||
|         self.cache           = None |         self.cache           = None | ||||||
|  | @ -294,6 +304,9 @@ class ogLiveWorker(ServerWorker): | ||||||
|         if not self.tomaIPlocal(): |         if not self.tomaIPlocal(): | ||||||
|             raise Exception ('Se han generado errores. No se puede continuar la ejecución de este módulo') |             raise Exception ('Se han generado errores. No se puede continuar la ejecución de este módulo') | ||||||
| 
 | 
 | ||||||
|  |         if not self.tomaMAClocal(): | ||||||
|  |             raise Exception ('Se han generado errores. No se puede continuar la ejecución de este módulo') | ||||||
|  | 
 | ||||||
|         threading.Thread (name='monitoring_thread', target=self.mon, daemon=True).start() |         threading.Thread (name='monitoring_thread', target=self.mon, daemon=True).start() | ||||||
| 
 | 
 | ||||||
|     def _long_running_job (self, name, f, args): |     def _long_running_job (self, name, f, args): | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue