diff options
Diffstat (limited to 'wrappers/python/eduvpncommon/main.py')
| -rw-r--r-- | wrappers/python/eduvpncommon/main.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/wrappers/python/eduvpncommon/main.py b/wrappers/python/eduvpncommon/main.py new file mode 100644 index 0000000..b8278ad --- /dev/null +++ b/wrappers/python/eduvpncommon/main.py @@ -0,0 +1,22 @@ +from . import lib, GOCB_StateChange +from ctypes import * + +@GOCB_StateChange +def state_change(old, new): + print(f"Python: State change {old.decode()} {new.decode()}") + +def InitializeOAuth(): + ptr = lib.InitializeOAuth() + value = cast(ptr, c_char_p).value + authURL = value.decode() + lib.FreeString(ptr) + return authURL + +# 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, url, state_callback): + name_bytes = name.encode('utf-8') + url_bytes = url.encode('utf-8') + lib.Register(name_bytes, url_bytes, state_callback) |
