{"id":13506027,"url":"https://github.com/telefonicaid/iotagent-json","last_synced_at":"2025-04-09T12:06:58.068Z","repository":{"id":2033776,"uuid":"45597990","full_name":"telefonicaid/iotagent-json","owner":"telefonicaid","description":"IoT Agent for a JSON based protocol (with HTTP, MQTT and AMQP transports)","archived":false,"fork":false,"pushed_at":"2024-04-15T10:08:35.000Z","size":2423,"stargazers_count":48,"open_issues_count":35,"forks_count":89,"subscribers_count":15,"default_branch":"master","last_synced_at":"2024-04-16T10:45:09.068Z","etag":null,"topics":["fiware","iot","iot-agent"],"latest_commit_sha":null,"homepage":"https://fiware-iotagent-json.rtfd.io/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/telefonicaid.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES_NEXT_RELEASE","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"docs/roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-11-05T08:31:24.000Z","updated_at":"2024-04-26T11:26:50.901Z","dependencies_parsed_at":"2023-10-20T16:41:01.065Z","dependency_job_id":"5d4c8682-8cfa-4a26-8d23-f04070de5b5a","html_url":"https://github.com/telefonicaid/iotagent-json","commit_stats":{"total_commits":1138,"total_committers":40,"mean_commits":28.45,"dds":0.6608084358523726,"last_synced_commit":"07ec3b1e2ac64f156f498eaaf8abc5cdf05c9cf1"},"previous_names":[],"tags_count":68,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/telefonicaid%2Fiotagent-json","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/telefonicaid%2Fiotagent-json/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/telefonicaid%2Fiotagent-json/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/telefonicaid%2Fiotagent-json/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/telefonicaid","download_url":"https://codeload.github.com/telefonicaid/iotagent-json/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248036063,"owners_count":21037092,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fiware","iot","iot-agent"],"created_at":"2024-08-01T01:00:33.218Z","updated_at":"2025-04-09T12:06:58.047Z","avatar_url":"https://github.com/telefonicaid.png","language":"JavaScript","funding_links":[],"categories":["FIWARE Catalogue","Interoperability and Digital Infrastructure"],"sub_categories":["IoT Agents"],"readme":"# FIWARE IoT Agent for a JSON-based Protocol\n\n[![FIWARE IoT Agents](https://nexus.lab.fiware.org/static/badges/chapters/iot-agents.svg)](https://www.fiware.org/developers/catalogue/)\n[![License: APGL](https://img.shields.io/github/license/telefonicaid/iotagent-json.svg)](https://opensource.org/licenses/AGPL-3.0)\n[![Support badge](https://img.shields.io/badge/tag-fiware+iot-orange.svg?logo=stackoverflow)](https://stackoverflow.com/questions/tagged/fiware+iot)\n\u003cbr/\u003e\n[![Quay badge](https://img.shields.io/badge/quay.io-fiware%2Fiotagent--json-grey?logo=red%20hat\u0026labelColor=EE0000)](https://quay.io/repository/fiware/iotagent-json)\n[![Docker badge](https://img.shields.io/badge/docker-telefonicaiot%2Fiotagent--json-blue?logo=docker)](https://hub.docker.com/r/telefonicaiot/iotagent-json/)\n\u003cbr/\u003e\n[![Documentation badge](https://img.shields.io/readthedocs/fiware-iotagent-json.svg)](https://fiware-iotagent-json.readthedocs.io/en/latest/?badge=latest)\n[![CI](https://github.com/telefonicaid/iotagent-json/workflows/CI/badge.svg)](https://github.com/telefonicaid/iotagent-json/actions?query=workflow%3ACI)\n[![Coverage Status](https://coveralls.io/repos/github/telefonicaid/iotagent-json/badge.svg?branch=master)](https://coveralls.io/github/telefonicaid/iotagent-json?branch=master)\n![Status](https://nexus.lab.fiware.org/static/badges/statuses/iot-json.svg)\n[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/4695/badge)](https://bestpractices.coreinfrastructure.org/projects/4695)\n\nAn Internet of Things Agent for a JSON based protocol (with [AMQP](https://www.amqp.org/),\n[HTTP](https://www.w3.org/Protocols/) and [MQTT](https://mqtt.org/) transports). This IoT Agent is designed to be a\nbridge between [JSON](https://json.org/) and the\n[NGSI](https://swagger.lab.fiware.org/?url=https://raw.githubusercontent.com/Fiware/specifications/master/OpenAPI/ngsiv2/ngsiv2-openapi.json)\ninterface of a context broker.\n\nIt is based on the [IoT Agent Node.js Library](https://github.com/telefonicaid/iotagent-node-lib). Further general\ninformation about the FIWARE IoT Agents framework, its architecture and the common interaction model can be found in the\nlibrary's GitHub repository.\n\nThis project is part of [FIWARE](https://www.fiware.org/). For more information check the FIWARE Catalogue entry for the\n[IoT Agents](https://github.com/Fiware/catalogue/tree/master/iot-agents).\n\n| :books: [Documentation](https://fiware-iotagent-json.readthedocs.io) | :mortar_board: [Academy](https://fiware-academy.readthedocs.io/en/latest/iot-agents/idas) | \u003cimg style=\"height:1em\" src=\"https://quay.io/static/img/quay_favicon.png\"/\u003e [quay.io](https://quay.io/repository/fiware/iotagent-json) | :whale: [Docker Hub](https://hub.docker.com/r/telefonicaiot/iotagent-json/) | :dart: [Roadmap](https://github.com/telefonicaid/iotagent-json/blob/master/docs/roadmap.md) |\n| -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |\n\n\n## Contents\n\n-   [Background](#background)\n-   [Install](#install)\n-   [Usage](#usage)\n-   [API](#api)\n-   [Contributing](#contributing)\n-   [Testing](#testing)\n-   [License](#license)\n\n## Background\n\nThis IoT Agent is designed to be a bridge between an MQTT/HTTP+JSON based protocol and the FIWARE NGSI standard used in\nFIWARE. This project is based in the Node.js IoT Agent library. More information about the IoT Agents can be found\nwithin the library's [GitHub repository](https://github.com/telefonicaid/iotagent-node-lib).\n\nA quick way to get started is to read the [Step by step Manual](./docs/stepbystep.md).\n\nAs is the case in any IoT Agent, this one follows the interaction model defined in the\n[Node.js IoT Agent Library](https://github.com/telefonicaid/iotagent-node-lib), that is used for the implementation of\nthe Northbound APIs. Information about the IoTAgent's architecture can be found on that global repository. This\ndocumentation will only address those features and characteristics that are particular to the JSON IoTAgent.\n\nIf you want to contribute to the project, check out the [Development section](#development) and the\n[Contribution guidelines](./docs/contribution.md).\n\nAdditional information about operating the component can be found in the\n[Operations: logs and alarms](docs/operations.md) document.\n\n## Install\n\nInformation about how to install the JSON IoTAgent can be found at the corresponding section of the\n[Installation \u0026 Administration Guide](docs/installationguide.md).\n\nA `Dockerfile` is also available for your use - further information can be found [here](docker/README.md)\n\n## Usage\n\nInformation about how to use the IoT Agent can be found in the [User \u0026 Programmers Manual](docs/usermanual.md).\n\nThe following features are listed as [deprecated](docs/deprecated.md).\n\n## API\n\nApiary reference for the Configuration API can be found\n[here](https://telefonicaiotiotagents.docs.apiary.io/#reference/configuration-api) More information about IoT Agents and\ntheir APIs can be found in the IoT Agent Library [documentation](https://iotagent-node-lib.readthedocs.io/).\n\nThe latest IoT Agent for JSON documentation is also available on\n[ReadtheDocs](https://fiware-iotagent-json.readthedocs.io/en/latest/)\n\n## Contributing\n\nIf you'd like to contribute, start by searching through the issues and pull requests to see whether someone else has\nraised a similar idea or question.\n\nBefore contributing, please check out [contribution guidelines](docs/contribution.md)\n\n## Testing\n\n[Mocha](https://mochajs.org/) Test Runner + [Should.js](https://shouldjs.github.io/) Assertion Library.\n\nThe test environment is preconfigured to run BDD testing style.\n\nModule mocking during testing can be done with [proxyquire](https://github.com/thlorenz/proxyquire)\n\nTo run tests, type\n\n```console\nnpm test\n```\n\nPlease have a look to extra information about functional tests in [this specific document](test/functional/README.md).\n\n#### Requirements\n\nAll the tests are designed to test end-to-end scenarios, and there are some requirements for its current execution:\n\n-   MQTT v5 broker (like mosquitto v1.6.7 server running)\n-   MongoDB v4.x server running\n-   RabbitMQ\n\nTo run requirements you can type:\n\n```\n   docker run -d -p 27017:27017 --hostname mongo --name mongo mongo:6.0.12\n   docker run -d -p 1883:1883 --hostname mosquitto --name mosquitto eclipse-mosquitto:1.6.15\n   docker run -d -p 5672:5672 --hostname rabbit --name rabbit rabbitmq:3.11.13\n```\n\n---\n\n## License\n\nThe IoT Agent for JSON is licensed under [Affero General Public License (GPL) version 3](./LICENSE).\n\n© 2023 Telefonica Investigación y Desarrollo, S.A.U\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eFurther information on the use of the AGPL open source license\u003c/strong\u003e\u003c/summary\u003e\n\n### Are there any legal issues with AGPL 3.0? Is it safe for me to use?\n\nThere is absolutely no problem in using a product licensed under AGPL 3.0. Issues with GPL (or AGPL) licenses are mostly\nrelated with the fact that different people assign different interpretations on the meaning of the term “derivate work”\nused in these licenses. Due to this, some people believe that there is a risk in just _using_ software under GPL or AGPL\nlicenses (even without _modifying_ it).\n\nFor the avoidance of doubt, the owners of this software licensed under an AGPL-3.0 license wish to make a clarifying\npublic statement as follows:\n\n\u003e Please note that software derived as a result of modifying the source code of this software in order to fix a bug or\n\u003e incorporate enhancements is considered a derivative work of the product. Software that merely uses or aggregates (i.e.\n\u003e links to) an otherwise unmodified version of existing software is not considered a derivative work, and therefore it\n\u003e does not need to be released as under the same license, or even released as open source.\n\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftelefonicaid%2Fiotagent-json","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftelefonicaid%2Fiotagent-json","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftelefonicaid%2Fiotagent-json/lists"}