GithubHelp home page GithubHelp logo

aiocoap's Introduction

aiocoap -- The Python CoAP library

The aiocoap package is a Python implementation of CoAP, the Constrained Application Protocol (RFC 7252, more info at http://coap.technology/).

It uses the asyncio module introduced in Python 3.4 to facilitate concurrent operations while maintaining a simple to use interface and not depending on anything outside the standard library.

aiocoap is originally based on txThings. If you want to use CoAP in your existing twisted application, or can not migrate to Python 3 yet, that is probably more useful to you than aiocoap.

Usage

For details on how to use the aiocoap library, have a look at the :mod:`aiocoap` module documentation, or at the :doc:`examples` and :doc:`tools` provided.

All examples can be run directly from a source code copy. If you prefer to install it, the usual Python mechanisms apply.

Dependencies

The core aiocoap functionality works out of the box with Python 3.4; with the additional asyncio module, it works with version 3.3 as well.

When application/link-format typed resources (RFC 6690) are supposed to be used, the link_header module is required as well. When the respective code paths are used without the module, an ImportError will be raised, or a 5.00 status code will be returned.

Development

aiocoap tries to stay close to PEP8 recommendations and general best practice, and should thus be easy to contribute to. Unit tests are implemented in the ./tests/ directory; complete test coverage is aimed for, but not yet complete (and might never be, as the error handling for pathological network partners is hard to trigger with a library designed not to misbehave).

Documentation is built using sphinx; hacks used there are described in ./doc/README.doc.

Bugs from design goal and wishlist to typos are currently tracked in the github issue tracker.

Relevant URLs

Licensing

aiocoap is published under the MIT License, see :doc:`LICENSE` for details.

Copyright (c) 2012-2014 Maciej Wasilak <http://sixpinetrees.blogspot.com/>,
2013-2014 Christian Amsüss <[email protected]>

aiocoap's People

Contributors

aellwein avatar chrysn avatar kxepal avatar mwasilak avatar

Watchers

 avatar  avatar  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.