All Xeoma integration capabilities: from smart homes to third-party software
Reliability, flexibility, and functionality are the main principles guiding our company’s software development. In Xeoma, these principles are embodied in its integration capabilities with third-party software, various equipment, and our company’s openness to modifying Xeoma to meet customers’ needs. In this article, we will provide a brief tour into the world of automation, discussing all integration capabilities of Xeoma and sharing real-world examples of our partners’ recent projects.
Smart home integration
Are you familiar with the Internet of Things (IoT) term? It was coined in the early 2000s to describe a global network of smart devices capable of interacting with each other. Initially, such a network was just a figment of a futurist’s imagination, but now it’s hard to imagine life without smart devices. Are we getting the most out of their use? Not really, as the essence of the Internet of Things lies in device interaction and automation capabilities.
Imagine that you have smart outlets powering your home appliance, light bulbs lighting up your room, a robot vacuum cleaner doing the dusting, and a smart coffee machine brewing you a cup of invigorating coffee every morning. The only question is, how to make all devices work together in a unified system? For this, you require a universal program capable of managing all devices simultaneously, like Xeoma does. Support for sending prompts over the world’s most common protocol – HTTP – makes Xeoma perfect for organizing useful smart home interaction scenarios. All you need is one or several surveillance cameras and practically any computer.
Do you often worry whether you turned off the iron when leaving home? Set up a scenario where Xeoma automatically turns off smart sockets if no one is home for more than 10 minutes. Do you love keeping your home perfectly clean? Let Xeoma activate the robot vacuum cleaner when spots or debris appear on the floor. Do you enjoy drinking coffee in the morning? Xeoma will detect you getting out of the bed and send a command to the coffee machine, and a cup of invigorating coffee awaits you in the kitchen within a minute.
A tech-savvy reader might note that not all gadgets support HTTP. In such cases, APIs – application programming interfaces – come in handy. In simplified terms, an API is a list of commands that a device or program can accept. Almost all major smart device manufacturers, such as Samsung, Toshiba, Philips, etc., develop their APIs, enabling their devices to work not only with their native applications but also with third-party ones. We have previously published an article on Xeoma’s integration with SmartThing API, Smapee API, Wink API, and other interfaces. Even if the API you’re interested in isn’t currently supported, we can develop integration with it specifically for you!
The real magic happens when Xeoma not only sends commands but also receives them from smart devices. Acting as an intermediary between devices, Xeoma allows you to configure countless interaction scenarios and manage everything in one program. Here are just a few relevant examples:
- Xeoma can send a command to open a window when receiving a command from a carbon dioxide sensor;
- Xeoma can control the raising/lowering of smart blinds when receiving commands from a light sensor;
- Xeoma can regulate the home temperature by sending commands to the thermostat based on data from a humidity sensor;
- Xeoma can activate a smart irrigation system when receiving a command from a soil moisture sensor;
- Xeoma can instantly unlock the front door when receiving a signal from a smoke detector for quick evacuation from a burning building;
- Xeoma can send an alarm signal when detecting a person or a car from the blacklist at the doorstep;
- Xeoma can adjust lighting brightness depending on the homeowner’s emotions or the time of day;
And much more!
For true modern technology enthusiasts, we’ve developed support for JSON API – a programming interface allowing smart devices to directly control Xeoma – activate/deactivate/delete/add video analytics modules, change their settings, request data on module triggering, and much more. These capabilities allow to fully unlock the potential of a smart home, giving its owner genuine emotions and an impression of living in the distant future. Here’s a recent scenario implemented by one of our customers:
“I’ve been into smart gadgets for quite a while – I’ve installed smart outlets, sensors, alarms, a smart speaker with a voice assistant, etc. at home, and recently added IP cameras to each room. Xeoma was chosen as VMS on my friend’s recommendation. I was generally satisfied with the program but faced an issue: by default, I wanted to record the archive by motion but also wanted to start continuous recording if smoke detectors or alarms are activated. To do so the support team suggested using JSON API. After studying the guide, I managed to set up deactivation of the Motion Detector when receiving a command from a relevant device. Now, in case of an emergency, continuous recording starts, and after deactivating the sensors, it returns to regular motion-based recording. I couldn’t find similar features in other programs.”
A few years ago, setting up such automation would have required system administration skills and basic programming knowledge. Xeoma makes creating a smart home of a dream an exciting and feasible task. You can find many interesting ideas for smart home automation and instructions for implementing them on our website.
Integration with specialized devices
Some ambitious security projects require not only exceptional measurement accuracy, but also high response speed, which cannot be provided even by a combination of the most advanced AI algorithms and HTTP request sending (the primary data transfer protocol in Xeoma). Integrating specialized equipment with the surveillance system directly is the best solution in such cases.
A good example of such a project is the integration of Xeoma with traffic lights ordered by the traffic police within the framework of the “Safe City” project. The aim of the project was to automatically track traffic violations and send photo evidence to the customer’s servers. The existing “Color Recognizer” module was not suitable for determining the traffic light color as constantly changing weather conditions and lighting distorted the colors. Developing support for Modbus – a protocol on which physical traffic light controllers operate – became the solution of the problem.
Being connected to the traffic lights directly, Xeoma was able to receive real-time information about traffic light color, avoiding the influence of any weather conditions. Then, automation using JSON API was set up to allow Xeoma to activate the necessary modules according to the traffic light signal: cross-line detector on the roadway during green and yellow signals and a similar detector on the pedestrian crossing during the red signal. When one of the detectors was triggered, Xeoma would send a notification with the violator’s photo attached via email and save the video evidence to the local storage. The customer was satisfied with the final detection accuracy, as well as with the reliability and complete autonomy of the system, which allowed Xeoma to be used on city streets.
Often, manufacturers of professional sensors, speed measuring devices, and specialized cameras develop proprietary protocols, allowing for close interaction scenarios between equipment and software. Developing support for one of such protocols made it possible to implement an important project in the healthcare sector and save many lives.
In 2020, the world was gripped by the COVID-19 pandemic, the most serious challenge to the healthcare system in recent decades. Governments put significant efforts into controlling the spread of the virus, while measuring body temperature in public places was one of the monitoring methods. Our company was asked to develop integration with specialized HikVision thermal cameras for organizing smart video surveillance in a large shopping mall.
Thermal cameras can observe objects in infrared spectrum, coloring them in different colors in the frame depending on their temperature. The previously mentioned “Color Recognizer” module managed to monitor high body temperature (i.e., people colored red in the frame), but the solution appeared to be too cumbersome, not intuitive, and complex to set up. After studying the manufacturer’s documentation, our developers found a convenient tool – ISAPI, a proprietary application programming interface from HikVision. The API allowed us to achieve full integration of the program with the cameras “without kludges” – Xeoma received object temperature measurements directly without additional video analytics.
The resulting “Thermal Camera Data” module became an excellent addition to the already developed “Mask Detector” module and was used not only in shopping malls, but also in healthcare organizations and many other public places.
If you are a business owner and you wish to integrate a video surveillance system with high-tech equipment, please contact us! Our experienced specialists will conduct research in the shortest possible time and offer you optimum solutions.
Integration with third-party software
The IT infrastructure of modern enterprises rarely consists of just a couple of software solutions. Usually, it includes dozens of programs and services: specialized software, CRM systems, accounting tools, cloud storage, and databases. In such cases, IT specialists often face the task of combining terabytes of data from various instances into a clear and structured system for statistical calculations and long-term planning. Can Xeoma be integrated into such a system? The answer is “Yes!”, as the video analytics data collected locally by the program can be automatically sent to third-party services in several convenient ways.
All available options of Xeoma integration with third-party services have already been described in the “API for integration of Xeoma” article. Now, we would like to demonstrate some of them using examples from our clients’ real projects.
Sending HTTP Commands (integration with third-party sensors and equipment)
There are scenarios where it is important to keep track of the triggering of video analytics modules for collecting statistics. The most common example is counting visitors in a shop or a restaurant. “Cross-Line Detector” is the module usually used for this purpose: it can automatically calculate the difference between the number of line crossings on entry and exit, thus showing not only the total number of visitors for the day but also the current number of clients. However, sometimes business owners need to calculate statistics outside of Xeoma, which can easily be done with the help of HTTP request sending.
In 2024 such people counting system was implemented in one of the shopping malls in Germany. Initially a combination of “Cross-line Detector” and “HTTP Request Sending” modules was used for entrance and exit separately. Once a detector was triggered, Xeoma would send an http-request with the information about the time of the triggering and the module ID to the owner’s CRM. This way the statistics was collected outside of Xeoma.
Our client was satisfied with the accuracy of the visitors counting, but there appeared to be an issue: the increased number of detectors (2 cross-line detectors for each camera) caused a too high CPU load. To make the load lower our programmers developed a new feature – the possibility to assign a separate HTTP Request Sender module to each virtual line within one Cross-line Detector module. As a result, we were able to halve the number of detectors, thus reducing the CPU load by 50% without any effect on the detection accuracy.
CSV reports + Application Runner
Each Xeoma video analytics module is capable of saving data about its triggering to a table report in CSV format, which can then be exported, for instance, to Excel. These reports can be used not only to process data manually, but also to create automatic statistics calculation systems.
This capability came in handy while creating an automatic work time tracking system for a metalworking plant in France. Two IP cameras were installed at the entrance to observe the coming and leaving employees. Two “Face Recognition” modules (one for each camera) provided high accuracy of workers identification by comparing the observed faces to the faces stored in the database.
Xeoma would create an entry in the report each time it recognized a worker’s face in the frame with the name of the employee and recognition time. By the end of the workday two CSV reports (one for each camera) were stored on the local video surveillance server. IT specialist on the client’s side created a Python script to merge two CVS reports and calculate the difference between arrival and departure time, thus creating a final daily worktime report. Xeoma would run the script by the end of each workday, using the combination of the “Scheduler” and “Application Runner” modules.
Thanks to advance video surveillance technologies, our client managed not only to avoid mistakes in work time reports, but also to save on employee wages by replacing security guards at the entrance with an intelligent Xeoma video management system and automating the employee admission process.
The article can be well summarized with our company’s motto: “Nothing is impossible!” This phrase reflects our specialists’ approach to Xeoma development: no matter how ambitious your project is, there is always a way to implement it. Xeoma is a consequence of this philosophy, a universal tool for bringing you technical dreams to reality. Xeoma already provides impressive capabilities, but if they’re still not enough, we’re always open to custom development. Contact us – we’ll be glad to discuss our partnership!
June 6, 2024
Read also:
Deep learning technology
Top 8 AI features in CCTV solutions straight from the future
Video surveillance in the HoReCa industry: a tool to cut losses, increase performance, automate operations
Public safety and the benefits of city CCTV surveillance
Automatic working time tracking in Xeoma