A python library to add ans search observations into flythings
Project description
FlyThings Client
Getting Started
To use this client is necesary:
$ pip install flythings
And now start to test the flythings clients.
Documentation
Configuration File
The general properties configuration in Configuration.properties:
- user: (Optional) user email or identifier to login on the system.
- password: (Optional) the user password to login, is not recommended use this configuration.
- server: (Optional, Default beta.flythings.io/api) configure the server url to insert the data.
- token: (Optional) the user token to send data into flythings plataform.
- device: (Optional) the device which sends data.
- sensor: (Optional) the sensor wich sends data.
- login_type: (Optional) type of login to use.
- timeout: (Optional) request timeout in seconds.
- authorization: (Optional) authorization token.
- Example of configuration file
SERVER:beta.flythings.io/api
USER:<put your username here>
PASSWORD:<put your password here>
DEVICE:Python
SENSOR:Client
LOGIN_TYPE:USER or DEVICE
TIMEOUT: 1000
AUTHORIZATION: <put your token here>
To load the data from the file call this function:
- load_data_by_file(String file)
Description: Loads data from the file.
Return: Nothing.
Examples:
- Loads config data from a file.
</code></pre> </li> </ul> <p>You can also introduce this general properties using the library methods.</p> <h3>General Module Configuration Methods</h3> <ul> <li> <p><strong>set_server</strong>(String server)<br /> <strong>Description</strong>: Sets the server to which the requests will be sent.<br /> <strong>Return</strong>: Returns a string representing the server.</p> </li> <li> <p><strong>set_device</strong>(String device, (Optional) object=None, always_update=False)<br /> <strong>Params</strong>:</p> <ul> <li>device: (Mandatory) Device name.</li> <li>object: (Optional) Object with extra device params.</li> <li>always_update: (Optional) Indicates if must send a request to create/update the device. <pre lang="PYTHON"><code> object = { "type": "CUSTOM", "geom": { "type": "Point", "crs": "4326", "coordinates": [ -19.323204, 27.611808 ] } }
Description: Sets the device of the observation. Uses a file named .foiCache to get a fast access to most used
devices.
Return: Returns a string representing the device.
set_sensor(String sensor)
Description: Sets the sensor of the observation.
Return: Returns a string representing the sensor.
set_token(String token)
Description: Sets the x-auth-token to authenticate into the server.
Return: Returns a string representing the token.
set_worskapce(Long workspace)
Description: Sets user workspace
Return: Returns the user workspace
set_custom_header(String header, String header_value)
Description: Sets a custom header for server requests.
Return: Returns a string representing the header.
get_headers(String header, String header_value)
Description: Return current headers.
Return: Return current headers.
set_timeout(int timeout)
Description: Sets the timeout value in seconds to the server requests.
Return: Returns an integer representing the timeout.
login(String user, String password, String login_type ['USER' or 'DEVICE'])
Description: Authenticate against the server.
Return: Returns a string representing the token or None if login fails.
logout()
Description: Logout against the server.
Return: Returns None.
set_authorization_token(token) Description: Sets bearer token on authorization hearer. Return: returns the authorization header value.
Modules documentation
Tests
In the test folder, after fill in the Configuration.Properties file write on bash:
nosetests flythingsTest.py
(Nose python library is needed)
Change log
License
Developed by ITG