From d8bbfcce3df763ff33df933b5ef78e86799cb602 Mon Sep 17 00:00:00 2001 From: hydreliox Date: Wed, 5 Oct 2016 14:49:56 +0200 Subject: [PATCH] Add type to Docstring Change PyPI to 0.0.3-alpha --- MANIFEST | 10 +++++ dist/pybbox-0.0.1-alpha.zip | Bin 0 -> 3481 bytes dist/pybbox-0.0.2-alpha.zip | Bin 0 -> 5896 bytes dist/pybbox-0.0.3-alpha.zip | Bin 0 -> 6588 bytes pybbox/pybbox.py | 78 +++++++++++++++++++++++------------- setup.py | 4 +- 6 files changed, 62 insertions(+), 30 deletions(-) create mode 100644 MANIFEST create mode 100644 dist/pybbox-0.0.1-alpha.zip create mode 100644 dist/pybbox-0.0.2-alpha.zip create mode 100644 dist/pybbox-0.0.3-alpha.zip diff --git a/MANIFEST b/MANIFEST new file mode 100644 index 0000000..1e5a23b --- /dev/null +++ b/MANIFEST @@ -0,0 +1,10 @@ +# file GENERATED by distutils, do NOT edit +setup.cfg +setup.py +pybbox\__init__.py +pybbox\bboxApiURL.py +pybbox\bboxAuth.py +pybbox\bboxConstant.py +pybbox\boxApiCall.py +pybbox\pybbox.py +pybbox\test_bbox.py diff --git a/dist/pybbox-0.0.1-alpha.zip b/dist/pybbox-0.0.1-alpha.zip new file mode 100644 index 0000000000000000000000000000000000000000..95fa3202f5f665f69b17672b8bc4f5cedbded17c GIT binary patch literal 3481 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 literal 0 HcmV?d00001 diff --git a/dist/pybbox-0.0.2-alpha.zip b/dist/pybbox-0.0.2-alpha.zip new file mode 100644 index 0000000000000000000000000000000000000000..39dddbd963fbd888997b4ad8bf58daf9d2f12877 GIT binary patch literal 5896 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 G0R9JyyY!3z literal 0 HcmV?d00001 diff --git a/dist/pybbox-0.0.3-alpha.zip b/dist/pybbox-0.0.3-alpha.zip new file mode 100644 index 0000000000000000000000000000000000000000..52c4d2712a6bc3b9c51d9e8ed50b8e77b88d1251 GIT binary patch literal 6588 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 100): raise ValueError("Luminosity must be between 0 and 100") self.bbox_auth.set_access(BboxConstant.AUTHENTICATION_LEVEL_PRIVATE, @@ -59,14 +66,12 @@ def set_display_luminosity(self, luminosity): data = {'luminosity': luminosity} api = BoxApiCall(self.bbox_url, BboxConstant.HTTP_METHOD_PUT, data, self.bbox_auth) - response = api.execute_api_request() - return response + api.execute_api_request() def reboot(self): """ Reboot the device Useful when trying to get xDSL sync - :return: bool """ token = self.get_token() self.bbox_auth.set_access(BboxConstant.AUTHENTICATION_LEVEL_PRIVATE, BboxConstant.AUTHENTICATION_LEVEL_PRIVATE) @@ -74,14 +79,15 @@ def reboot(self): self.bbox_url.set_api_name(BboxConstant.API_DEVICE, url_suffix) api = BoxApiCall(self.bbox_url, BboxConstant.HTTP_METHOD_POST, None, self.bbox_auth) - resp = api.execute_api_request() - return resp.status_code == 200 + api.execute_api_request() def get_token(self): """ Return a string which is a token, needed for some API calls - TODO : make a token class to be able to store date of expiration - :return: string + :return: Token (can be used with some API call + :rtype: str + + .. todo:: make a token class to be able to store date of expiration """ self.bbox_auth.set_access(BboxConstant.AUTHENTICATION_LEVEL_PRIVATE, BboxConstant.AUTHENTICATION_LEVEL_PRIVATE) self.bbox_url.set_api_name(BboxConstant.API_DEVICE, "token") @@ -97,7 +103,8 @@ def get_token(self): def get_all_connected_devices(self): """ Get all info about devices connected to the box - :return: a list with all devices data + :return: a list with each device info + :rtype: list """ self.bbox_auth.set_access(BboxConstant.AUTHENTICATION_LEVEL_PUBLIC, BboxConstant.AUTHENTICATION_LEVEL_PRIVATE) self.bbox_url.set_api_name(BboxConstant.API_HOSTS, None) @@ -109,8 +116,10 @@ def get_all_connected_devices(self): def is_device_connected(self, ip): """ Check if a device identified by it IP is connected to the box - :param ip: IP of the device + :param ip: IP of the device you want to test + :type ip: str :return: True is the device is connected, False if it's not + :rtype: bool """ all_devices = self.get_all_connected_devices() for device in all_devices: @@ -124,9 +133,11 @@ def is_device_connected(self, ip): def login(self, password): """ - - :param password: - :return: + Authentify yourself against the box, + :param password: Admin password of the box + :type password: str + :return: True if your auth is successful + :rtype: bool """ self.bbox_auth.set_access(BboxConstant.AUTHENTICATION_LEVEL_PUBLIC, BboxConstant.AUTHENTICATION_LEVEL_PUBLIC) self.bbox_url.set_api_name("login", None) @@ -140,7 +151,9 @@ def login(self, password): def logout(self): """ - :return: + Destroy the auth session against the box + :return: True if your logout is successful + :rtype: bool """ self.bbox_auth.set_access(BboxConstant.AUTHENTICATION_LEVEL_PUBLIC, BboxConstant.AUTHENTICATION_LEVEL_PUBLIC) self.bbox_url.set_api_name("logout", None) @@ -157,8 +170,9 @@ def logout(self): def get_xdsl_info(self): """ - Get all info about the xdsl connection - :return: dict + Get all data about your xDSL connection + :return: A dict with all data about your xdsl connection (see API doc) + :rtype: dict """ self.bbox_auth.set_access(BboxConstant.AUTHENTICATION_LEVEL_PUBLIC, BboxConstant.AUTHENTICATION_LEVEL_PRIVATE) self.bbox_url.set_api_name(BboxConstant.API_WAN, "xdsl") @@ -169,8 +183,9 @@ def get_xdsl_info(self): def get_xdsl_stats(self): """ - Get stat about the xdsl connection - :return: dict + Get all stats about your xDSL connection + :return: A dict with all stats about your xdsl connection (see API doc) + :rtype: dict """ self.bbox_auth.set_access(BboxConstant.AUTHENTICATION_LEVEL_PUBLIC, BboxConstant.AUTHENTICATION_LEVEL_PRIVATE) self.bbox_url.set_api_name(BboxConstant.API_WAN, "xdsl/stats") @@ -181,8 +196,9 @@ def get_xdsl_stats(self): def get_ip_stats(self): """ - Get stat about the ip connection - :return: dict + Get all stats about your Wan ip connection + :return: A dict with all stats about your Wan ip connection (see API doc) + :rtype: dict """ self.bbox_auth.set_access(BboxConstant.AUTHENTICATION_LEVEL_PUBLIC, BboxConstant.AUTHENTICATION_LEVEL_PRIVATE) self.bbox_url.set_api_name(BboxConstant.API_WAN, "ip/stats") @@ -193,7 +209,9 @@ def get_ip_stats(self): def is_bbox_connected(self): """ + Check if your xDsl connection is ok :return: True is the box has an xdsl connection + :rtype: bool """ xdsl_info = self.get_xdsl_info() return xdsl_info["state"] == "Connected" @@ -201,6 +219,7 @@ def is_bbox_connected(self): def get_up_bitrates(self): """ :return: the upload bitrates of the xdsl connectionbitrates in Mbps + :rtype: float """ xdsl_info = self.get_xdsl_info() return xdsl_info["up"]["bitrates"] / 1000 @@ -208,6 +227,7 @@ def get_up_bitrates(self): def get_down_bitrates(self): """ :return: the download bitrates of the xdsl connectionbitrates in Mbps + :rtype: float """ xdsl_info = self.get_xdsl_info() return xdsl_info["down"]["bitrates"] / 1000 @@ -215,8 +235,9 @@ def get_down_bitrates(self): def get_up_used_bandwith(self): """ Return a percentage of the current used xdsl upload bandwith - 0 no bandwith is used, 100 all your bandwith is used - :return: int + Instant measure, can be very different from one call to another + :return: 0 no bandwith is used, 100 all your bandwith is used + :rtype: int """ ip_stats_up = self.get_ip_stats()['tx'] percent = ip_stats_up['bandwidth']*100/ip_stats_up['maxBandwidth'] @@ -225,8 +246,9 @@ def get_up_used_bandwith(self): def get_down_used_bandwith(self): """ Return a percentage of the current used xdsl download bandwith - 0 no bandwith is used, 100 all your bandwith is used - :return: int + Instant measure, can be very different from one call to another + :return: 0 no bandwith is used, 100 all your bandwith is used + :rtype: int """ ip_stats_up = self.get_ip_stats()['rx'] percent = ip_stats_up['bandwidth']*100/ip_stats_up['maxBandwidth'] diff --git a/setup.py b/setup.py index 7e8367b..6b3f98a 100644 --- a/setup.py +++ b/setup.py @@ -2,12 +2,12 @@ setup( name = 'pybbox', packages = ['pybbox'], # this must be the same as the name above - version = '0.0.2-alpha', + version = '0.0.3-alpha', description = 'a simple python3 library for the Bouygues BBox Routeur API', author = 'Hydreliox', author_email = 'hydreliox@gmail.com', url = 'https://github.com/HydrelioxGitHub/pybbox', # use the URL to the github repo - download_url = 'https://github.com/HydrelioxGitHub/pybbox/tarball/0.0.2-alpha', + download_url = 'https://github.com/HydrelioxGitHub/pybbox/tarball/0.0.3-alpha', keywords = ['bbox', 'Bouygues', 'routeur', 'API'], # arbitrary keywords classifiers = [], ) \ No newline at end of file