kandi X-RAY | NGSI Summary
kandi X-RAY | NGSI Summary
NGSI
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Performs splitting step
- Calculate backward move info
- Choose the columns of the given matrix
- Calculate the column probability of a column
- Generate data
- Generate an AR matrix
- Searches for a given root value
- Pretty print
- Generate a single node
- Returns row and column variance
- R Compute the likelihood
- Calculates the delta of ais_model
- Perform a single step
- Save results to stdout
- Prints cluster clusters
- List all the jobs in the status txt file
- Sample from chain_chains
- Run a python script
- Calculate the codiag2 codonogonal filter
- Propose assignments
- Run a single model
- Generate a random image
- Calculates the pilde of a tilde
- Compute the p - t tilde tilde expansion
- Pretty print a list
- Randomly sample noise noise
- Slice a Gaussian distribution
NGSI Key Features
NGSI Examples and Code Snippets
Community Discussions
Trending Discussions on NGSI
QUESTION
I am trying to save multiple data entities in historical database, but only the first one from the array is saved in Mongo historical database. Below are the steps I performed.
Docker-compose for Cygnus:
...ANSWER
Answered 2022-Mar-08 at 08:35A first impression. At subscription you are using: "throttling": 5
throttling: Minimal period of time in seconds which must elapse between two consecutive notifications. It is optional.
That implies that just ONE notificación will be send in every 5 seconds time window. With your NGSIv2 batch update surely all notification will fall in the 5 sec window.
Try to remove that property.
QUESTION
I am trying to save historical context data in Mongo, but without success. Only the first payload sent to Draco is saved to MongoDB for historical data, but Mongo does not react to attribute updates. Versions used for the test: Orion-LD version 0.8.0, Mongo version 4.4, Draco version 1.3.6. I tested it also with the 3.4 version of Mongo and the behavior is the same.
Can you, please, help me to fix a problem?
Below are the steps I performed:
Create a Draco subscription:
...ANSWER
Answered 2022-Mar-04 at 10:35We do not use that precise stack, but we have got many production deployments keeping context historical data on MongoDb by using FIWARE Orion (v2 API) with FIWARE Cygnus (NGSIMongo Sink for historical raw data, and NGSISTH Sink for aggregated data at MongoDB).
Maybe this help.
QUESTION
I just started using FIWARE and I'm having trouble with the data I want to persist on MongoDB. I want to use STH Comet in minimal mode. I am using a Python script that creates my context data with a specific id and then updates certain attributes of this data. While I can't see any problem when I observe the JSON data from this script, and HTTP requests but MongoDB keeps only the last updated version of this data in the related collection. In addition, the "sth" labeled collections does not show up. However I can see the "credate" and "moddate" metadatas in attributes. But I need different records for every update.
Here is the first POST request that I send to Orion to create context data:
...ANSWER
Answered 2022-Mar-04 at 11:01To put it simply, I realized that the problem I was experiencing was due to the parameters that I did not change in the config.js file of the STH Comet I set up on the remote server.
So, I changed the host
parameter (from "localhost"
to the "server's own IP"
) in config.server
part and the URI
parameter (from "localhost:27017"
to "serversIP:27017"
) in the config.database
part in the file.
The system is now working as expected.
QUESTION
Hello everyone, after completing the tutorials on NGSI-LD at: https://github.com/fiware/tutorials.NGSI-LD/ I am currently trying to implement my datamodel and facing multpile issues.
First I know what JSON, JSON-LD and NGSI-LD is and the basics of how the context broker and the MongoDB work together.
My Problem is how to setup such a project. I didn't find any tutorials on how to setup a project. The main points i need to know are:
- How to setup the orion context broker
- How to provide the context File to the Context Broker
- How to setup MongoDB
- How to connect all of the above together to a project
For now I have tried to convert my datamodel to json-ld and ngsi-ld using the tutorial at: https://github.com/FIWARE/tutorials.Understanding-At-Context/tree/ba6ac22ce329ed8eaac6ef5f01266048dc84d244
Afterwards I deleted the datamodel from a tutorial like CRUD-OPerations and inserted my datamodel. But when I start the tutorial and make a POST request it accepts any data, ignoring the datamodel. I could create entities which do not exist in the datamodel with non-existing attributes. The same problem occurs if i start one tutorial with the default datamodel. So it seems to always ignoring the context-File.
Further after i have written some data with POST and read with GET (which both worked perfectly) and close the project the next problem occurs. After I restart the tutorial all data i have written is deleted.
Am I not really getting the whole point of FIWARE or did I do something wrong?
I would appreciate any info from links to detailed explanation.
...ANSWER
Answered 2022-Jan-14 at 09:15As described here, the NGSI-LD interface is a flexible API which outputs various JSON and JSON-LD formats and is used for data exchange. The tutorials are describing the correct use of the interface only. They do not cover production deployments.
After I restart the tutorial all data i have written is deleted.
The tutorials are just that - they start from a clean slate. The Mongo-DB instance in the docker-file
does not have a persistent volume and cleans up after itself.
it accepts any data, ignoring the data-model.
That is because JSON-LD @context
isn't used to validate JSON data - you need a JSON schema for that. Technically the @vocab
element in the NGSI-LD core context @context
file pushes any unknown elements onto the so-called default context https://uri.etsi.org/ngsi-ld/default-context/
. The @context
file is simply providing a mechanism to standardize the attribute names into IRIs. Assuming you have created a Swagger/Open API file for your use case, then you can use the Swagger editor to generate server or client code stubs. Doing this in Java say, will result in a POJO which just accepts the attributes of your model.
How to setup the orion context broker
You could use the docker-compose
provided as a basis for getting started, but for proper large scale deployments on Kubernetes, the provided Helm Charts are recommended. The Orion-LD documentation goes into more details.
How to provide the context File to the Context Broker
You place the @context
file on a public web server. How you host your @context
file is up to you. The tutorials use HTTPD for this purpose. The main idea behind an @context
is that you are publishing an agreed set of IRIs which correspond to the attributes in your data. Smart Data Models, Schema.org, GS1 and plenty of other bodies generate IRIs, you should reuse them and link to them or publish your own @context
describing your own world.
Once an @context
just append the Link
header to each context broker request.
QUESTION
In my environment, multiple OrionLD instances are running on a Kubernetes cluster.
The environment consists of two OrionLD(0.8.0) instances , one MongoDB instance, and a LoadBalancer to OrionLD.
I created an entity with a new tenant by using "NGSILD-Tenant" header. Next, when I tried to retrieve it with "GET /entities", sometimes the retrieval succeeded, and sometimes it failed.
The error message was below.
...ANSWER
Answered 2021-Nov-24 at 14:42ok, this seems to be a problem in the broker. Create an issue on Orion-LD's github, please: https://github.com/FIWARE/context.Orion-LD/issues.
I recently implemented tenant checks for retrievals. It's OK to create new tenants on the fly (entity create operations), but for queries, the tenant must exist already, and the list is in RAM. Meaning, only the broker that created the entity knows about the tenant. It completely explains your problem. I didn't think about this use case, but you are absolutely right. I will have to improve the way I check for "tenant exists" for retrieval operations.
QUESTION
I could not find Orion 3.3.0 nor Cygnus 2.14.0 official docker images at the docker hub.
How can I pull them?
...ANSWER
Answered 2021-Nov-12 at 15:14This is a consequence of the decision of Docker to remove or limit automated builds from various account types. It has made collating the images much more complicated. Previously the FIWARE Builds would trigger as clones of the contributory repositories. The problems caused by this issue have been recognized by the Technical Steering Committee of FIWARE. At the moment builds are transitioning to a newer build mechanism - possibly using a duplicate or alternative image repositories as well.
In most cases, such as the case of Orion and Cygnus created by Telefónica, you will still be able find tagged build generated from the original source repository under their own Docker Hub account - e.g telefonicaiot/fiware-orion
and telefonicaiot/fiware-cygnus
. The FIWARE clones of these images (a pull/push
of the same SHA1 hash) are built and tested by the fiwarebot
periodically - fiware/orion:3.3.0
is now available for example, but the mechanism to fully standardize and automate this procedure will need some bedding in.
Once the system is fully in place, it is likely that the FIWARE builds will still lag the builds made by the teams behind each generic enabler, but a standard release will occur in alignment with each of the full FIWARE Releases
QUESTION
I am trying to set up a system to save historic data with the flow like this: Prosys OPC-UA Server Simulation -> OPC-UA FIWARE IoT Agent -> Orion Context Broker -> FIWARE Cygnus Connector -> PostgreSQL database.
Here is the document I used to compose the docker-compose
file:
Here is the docker-compose
and .env
file I used
docker-compose.yml
ANSWER
Answered 2021-Sep-01 at 10:31You have a complex scenario here, composed of an end-to-end chain of 5 components:
- Prosys OPC-UA Server Simulation
- OPC-UA FIWARE IoT Agent
- Orion Context Broker
- FIWARE Cygnus Connector
- PostgreSQL database
My recomendation here would be to check every step in the chain (looking in logs, etc.) to ensure everything is correct before of checking the next step.
QUESTION
An Entity Id is required for each new entity in the broker.
In NGSI-LD the format for the Entity Id is urn:ngsi-ld:TemperatureSensor:001
.
Is it possible to somehow autoincrement the number of the Entity so that the new Entity can be created programmatically?
For example, provide something like urn:ngsi-ld:TemperatureSensor:*
and the new Entity can be created with an auto-incremented Entity Id.
Thanks.
ANSWER
Answered 2021-Sep-18 at 12:13The id should be generated by the application itself. You have multiple ways of generating unique ids but I would recommend ids that have some semantics behind so that you can, for instance, infer from an id in which area the sensor is located, who the owner is, etc.
QUESTION
ANSWER
Answered 2021-Jul-12 at 08:11Orion-LD does not implement federation yet. The concept is being defined in ETSI ISG CIM and until it is decided exactly how it is to work (in a standard way), it cannot be implemented (unless we're willing to reimplement it once it gets defined in ETSI).
That said, Scorpio (another NGSi-LD broker) implements its own "NEC proprietary" federation scheme.
About "/op/notify", it is actually implemented in Orion-LD (POST /ngsi-ld/ex/v1/notify), it's just not meant for federation but for maintaining a local copy of some other broker's entities, based on subscriptions/notifications. This feature in brand new and was added to Orion-LD a few weeks ago.
QUESTION
I am trying to replicate the following curl command in c++ code using the curl library but with no luck. The curl command is (the url is an actual url I am just hiding it):
...ANSWER
Answered 2021-Jul-06 at 12:22CURLOPT_POSTFIELDS
expects a char*
but you are supplying a std::string
.
This should be working better:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install NGSI
You can use NGSI like any standard Python library. You will need to make sure that you have a development environment consisting of a Python distribution including header files, a compiler, pip, and git installed. Make sure that your pip, setuptools, and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid changes to the system.
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page