Snap4City is not created on top of FIWARE but is compliant with FIWARE since it use the ORION Broker as other brokers as well.
Snap4City provides a large number of additional functionalities with respect to FIWARE to shortening a large number of operations on fiware solutions and also provide additional tools and services for federation of smart city API and API in general. Snap4City is Gold Member of FiWare and an official platform of FiWare https://www.fiware.org/ .
- Snap4City is a platform compliant with many kind of brokers: MQTT, Orion Broker / FIWARE, COAP, AMQP, etc., and a large range of gateways, see https://www.snap4city.org/65
- Snap4City core part for data ingestion is Ni-Fi Apache, single or in cluster, front end distribution is ASCAPI and Web Socket server with Kafka
- Snap4City Impact Story on FIWARE: https://fiware-foundation.medium.com/snap4city-fiware-powered-smart-app-builder-for-sentient-cities-acfe24df49d5
- PDF version: FF_ImpactStories_Snap4City.pdf
- Snap4City is a Powered by FIWARE Solution/Platform: https://www.fiware.org/marketplace/product-details/?category=powered&id=snap4city-snap4city
- Snap4City is certified to offer FIWARE Coaching & Training Services: https://www.fiware.org/marketplace/product-details/?category=services&id=snap4city-coachingtrainingservices
- Snap4City is certified to offer FIWARE Consultancy & Integration Services: https://www.fiware.org/marketplace/product-details/?category=services&id=snap4city-consultancyintegrationservices
- DISIT Lab, which is operating Snap4City, has two FIWARE Certified Experts: P. Nesi, P. Bellini
Integration with Fiware can be realized in different manners:
- A) IoT Orion Broker as an External Broker of a Snap4City platform
- Devices are mainly managed by Orion Broker only
- IoT Directory can harvest devices on Broker to registered them
- B) IoT Orion Broker is an Internal Broker of a Snap4City platform
- This implies that Snap4City facilities are exploited for:
- IoT Devices registration, IoT devices discovery, Knowledge Base (RDF Store) registration and search, IoT Device Bulk registration, optimization of stored data into the storage, simple impementation of adaptation (integration) IoT Applications, simpler implementation of filtering process to avoid providing too many duplications into storage, etc.
- All the devices are registered into IoT Directory, which in turn automatically performs their registration on both: (i) IoT Orion Broker and (ii) Snap4City (Knowledge Base) and data shadow
- MQTT is another internla broker kind of Snap4City
- This implies that Snap4City facilities are exploited for:
- C) Federation of a collection of IoT Orion Broker having their own storage (Crate-DB for instance) by using SSM2ORION
- IoT Devices are managed by Orion Broker only
- the federation is with other IoT Orion Brokers and/or with other Snap4City installations (see: https://www.snap4city.org/673 )
- the federation is providing Smart City API to web and mobile applications interested (see: https://www.snap4city.org/673 )
- D) hybrid solutions in which the exploitation also may include the possibility of
- developing Web and Mobile App which may exploit both Orion Broker NGSI API and Snap4City services and Smart City API
- presenting/including Snap4City Dashboards and/or Widgets into third party web pages and applications
See course slide for a deeper understanding of what Snap4City Solution is adding with respect to a generic solution using only FIWARE components.
Snap4City is FIWARE compliant since:
- uses IOT Orion Broker and thus copes with NGSI V1 and NGSI V2 protocols, at level of general IOT connections and on IOT Applications and Dashboards. Please note that Snap4City is compatible with many other protocols and IOT Brokers as well. The IOT Orion Broker can connect JSON, MQTT, Lightweight M2M, LoraWAN, OPC, SigFOX, etc. see FiWare https://www.fiware.org/
- please note that Snap4City is compatible with all the above protocols via IOT Orion Broker, via direct connection on ETL processes on their corresponding IOT brokers, and/or via IOT Applications.
- please note that Snap4City is also compatible with many other protocols, see the table reported in page: https://www.snap4city.org/drupal/node/65, direcly and by meand of IDAS of FIWARE
- This means that you can chose to connect your devices at Snap4City Platform in differet manners: (a) directly to Snap4City, or (b) via an IOT Orion Broker (external IOT Broker or those provided by Snap4City), or (c) via any third party IOT Brokers in any protocol you have.
- snap4city also provide tools for the automated deploy of ORION Broker on demand.
- Snap4City is working on finalizing NGSI LD
- provides a set of NGSI Fi-Ware compliant tools such as
- IOT Directory for managing multiple Brokers,
- Storage for data shadown and general data management.
- Km4City API for semantically modeling and storing via IOT Directly all kind of of devices, enabling the IOT Device Discovery semantically and geographically. The Km4CIty is an ontology and expert system, also adopted and at the core of the Snap4City solution.
- improves IOT Orion Broker with the so called Orion Broker Filter (Orion Broker Filter, NGSI Security Wrapper) which is a secure wrapper for NGSI V1 and V2 protocol for enforcing Mutual Authentication, Security, roles, etc. This tool as the rest of Snap4City is fully Open Source, you ahve download it from GITHUB/DISIT
- produces and releases open hardware and open software NGSI Fiware compliant as:
- IOT Devices with mutual authentication and security based for NGSI V1/V2 on: Android, Arduino and ESP32, IOT Button, etc.
- IOT Edge devices with mutual authentication and security based for NGSI V1/V2 on: Raspberry PI, Windows, Linux.
- includes CKAN with Snap4City DataGate tool
- is compatible with Mongo, Hadoop, HBASE, LDAP, OpenIDConnect, GIS, CKAN, Spark, etc.
All the other tools of Snap4City have been developed and integrated by Snap4City team and are 100% open source.
Snap4City also is compatibile with many other procols and formats, it can work with a large number of IOT Brokers, data aggregators, etc.
Snap4City participated at FiWare global submit, Genova, Italy, https://www.fiware.org/summit/ (SLIDE: Slides: Fi-ware General Assembly, Genova 2019)