Anbindung der Community Hennef an Domäne Wupper

auf dem Kartenserver mache ich folgendes: Wuppertal ist weiterhin auf bat0. GL auf bat-bcd und GM auf bat-rdv bis dahin nichts besonderes. Nun kommt der Trick mit anderem Socket:

alfred -m -b bat-bcd -i bat-bcd -u /var/run/alfred-bcd.sock
batadv-vis -s -i bat-bcd -u /var/run/alfred-bcd.sock
alfred -m -b bat-rdv -i bat-rdv -u /var/run/alfred-rdv.sock
batadv-vis -s -i bat-rdv -u /var/run/alfred-rdv.sock

und da ich alles vergessen habe, was ich über Python gelernt habe, habe ich den Backend auf die Schnelle gehackt. Beispiel für RDV:

--- a/alfred.py
+++ b/alfred.py
@@ -7,7 +7,7 @@ class alfred:
     self.request_data_type = request_data_type

   def aliases(self):
-    output = subprocess.check_output(["alfred-json","-r",str(self.request_data_type),"-f","json","-z"])
+    output = subprocess.check_output(["alfred-json","-r",str(self.request_data_type),"-f","json","-z","-s","/var/run/alfred-rdv.sock"])
     alfred_data = json.loads(output.decode("utf-8"))
     alias = {}
     for mac,node in alfred_data.items():

--- a/bat2nodes.py
+++ b/bat2nodes.py
@@ -38,6 +38,10 @@ parser.add_argument('-A', '--alfred', action='store_true',
 parser.add_argument('-d', '--destination-directory', action='store',
                  help='destination directory for generated files',required=True)
 
+parser.add_argument('-u', '--unix-path', action='store',
+               default=["/var/run/alfred.sock"],
+               help='path to unix socket used for alfred server communication')
+
 args = parser.parse_args()

options = vars(args)

--- a/batman.py
+++ b/batman.py
@@ -36,14 +36,14 @@ class batman:
   def vis_data_batadv_vis(self):
     """ Parse "batadv-vis -i <mesh_interface> -f json" into an array of dictionaries.
     """
-    output = subprocess.check_output(["batadv-vis","-i",self.mesh_interface,"-f","json"])
+    output = subprocess.check_output(["batadv-vis","-u","/var/run/alfred-rdv.sock","-f","json"])
     lines = output.splitlines()
     return self.vis_data_helper(lines)
 
   def gateway_list(self):
     """ Parse "batctl -m <mesh_interface> gwl -n" into an array of dictionaries.
     """
-    output = subprocess.check_output(["batctl","-m",self.mesh_interface,"gwl","-n"])
+    output = subprocess.check_output(["batctl","-m","bat-rdv","gwl","-n"])
     output_utf8 = output.decode("utf-8")
     lines = output_utf8.splitlines()

das war 's. Dazu wurde bereits etwas geschrieben Fehler bei der Anzahl der Clients - #4 von phip

1 „Gefällt mir“