Coder Social home page Coder Social logo

freebox-api's Introduction

freebox-api

PyPI GitHub Release Python Version License

Read the documentation at https://freebox-api.readthedocs.io/ Tests Codecov GitHub Activity

pre-commit Black

Features

Easily manage your freebox in Python using the Freebox OS API. Check your calls, manage your contacts, configure your dhcp, disable your wifi, monitor your LAN activity and many others, on LAN or remotely.

freebox-api is a python library implementing the freebox OS API. It handles the authentication process and provides a raw access to the freebox API in an asynchronous manner.

This project is based on fstercq/freepybox, which provides the same features as freebox-api in a synchronous manner.

Requirements

  • TODO

Installation

You can install freebox-api via pip from PyPI:

$ pip install freebox-api

Or manually download the last version from github and install it with Poetry

$ git clone https://github.com/hacf-fr/freebox-api.git
$ python poetry install

Usage

# Import the freebox-api package.
from freebox_api import Freepybox

async def reboot()
   # Instantiate the Freepybox class using default options.
   fbx = Freepybox()

   # Connect to the freebox with default options.
   # Be ready to authorize the application on the Freebox.
   await fbx.open('192.168.0.254')

   # Do something useful, rebooting your freebox for example.
   await fbx.system.reboot()

   # Properly close the session.
   await fbx.close()

Have a look at the example.py for a more complete overview.

Notes on HTTPS

When you access a Freebox with its default-assigned domain (ending in fbxos.fr), the library verifies its certificate by automatically trusting the Freebox certificate authority. If you want to avoid this, you can setup a custom domain name which will be associated with a Let's Encrypt certificate.

Resources

Freebox OS API documentation : http://dev.freebox.fr/sdk/os/

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

License

Distributed under the terms of the GNU GPL v3 license, freebox-api is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Credits

This project was generated from @cjolowicz's Hypermodern Python Cookiecutter template.

freebox-api's People

Contributors

dependabot[bot] avatar foreign-sub avatar stilllman avatar quentame avatar fstercq avatar oncleben31 avatar snoof85 avatar narmishka avatar alekitto avatar fabaff avatar pdecat avatar rithynicolastan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.