1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
from . import lib, VPNStateChange, GetDataError
from ctypes import *
@VPNStateChange
def state_change(old, new, data):
print(f"Python: State change {old.decode()} {new.decode()} DATA {data.decode()}")
# Registers the python app with the Go code
# name: The name of the app to be registered
# url: The url of the server to connect to, FIXME: To be removed
# state_callback: The callback to trigger whenever a state is changed, FIXME: Remove whenever this wrapper has implemented callbacks using function decorations
def Register(name, config_directory, state_callback):
name_bytes = name.encode('utf-8')
dir_bytes = config_directory.encode('utf-8')
lib.Register(name_bytes, dir_bytes, state_callback)
def GetDiscoServers():
servers, serversErr = GetDataError(lib.GetServersList())
organizations, organizationsErr = GetDataError(lib.GetOrganizationsList())
return servers, serversErr, organizations, organizationsErr
|