=========
.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png :target: https://odoo-community.org/page/development-status :alt: Beta .. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fiot-lightgray.png?logo=github :target: https://github.com/OCA/iot/tree/14.0/iot_input_oca :alt: OCA/iot .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png :target: https://translation.odoo-community.org/projects/iot-14-0/iot-14-0-iot_input_oca :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png :target: https://runbot.odoo-community.org/runbot/269/14.0 :alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
This addon allows to use a device in order to input data to odoo automatically.
It opens a URL that a device can use to connect (with a password) that can only execute an specific action.
Inputs are useful when a device wants to communicate to odoo for a single and simple action. This way, the device does not need to be configured with a odoo user and password, it is handled by odoo devices.
Examples:
Table of contents
.. contents:: :local:
There are two endpoints you can use: Endpoint 1: /iot//action
Takes application/x-www-form-urlencoded
parameters:
passphase, value (where value is a JSON object)
IoT > Config Devices
The function that the system will call must be of the following kind::
@api.model
def call_function(self, key):
return {}
Where key
is the input string send by the device and the result must be a dictionary
that will be responded to the device as a JSON.
Endpoint 2: /iot/<device_identification>/multi_input It can be used to send values with multiple data in one POST request such as:
Takes application/x-www-form-urlencoded
parameters:
passphase, values (a JSON array of JSON objects)
It is called using device_identification and passing two POST parameters: device passphrase and a JSON string containing an array of values for input
address
key can be a string or a numeric (to conserve bytes in memory
restricted devices when creating the JSON object) and is converted to string when parsing.value
key can either be string, number or boolean according to
JSON specs.
You can see an example of a valid JSON input object in the examples folder, using a few
combinations.It requires the function that the system will call must be of the following kind::
@api.model
def call_function(self, key):
'do something
if err:
return {'status': 'error', 'message': 'The error message you want to send to the device'}
return {'status': 'ok', 'message': 'Optional success message'}
Where key
is a dict send by the device having at least value for keys: 'address', 'value'
The function must always return a JSON with status and message. If value contains a value with 'uuid' as key, it is returned along with the object for the IoT device to identify success/failure per record.
It has full error reporting and the return value is a JSON array of dicts containing at least status and message. Error message respose is at some points generic, though extended logging is done in Odoo server logs.
Bugs are tracked on GitHub Issues <https://github.com/OCA/iot/issues>
.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
feedback <https://github.com/OCA/iot/issues/new?body=module:%20iot_input_oca%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>
.
Do not contact contributors directly about support or help with technical issues.
Authors
* Creu Blanca
Contributors
Maintainers
This module is maintained by the OCA.
.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
.. |maintainer-etobella| image:: https://github.com/etobella.png?size=40px
:target: https://github.com/etobella
:alt: etobella
Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
|maintainer-etobella|
This module is part of the `OCA/iot <https://github.com/OCA/iot/tree/14.0/iot_input_oca>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
Version | Tag | Published |
---|---|---|
14.0.1.0.1.dev2 | 1yr ago |