Development
and Integration
Low-Code Web IDE
We do our best to make Iotellect-based product development mostly a visual process. At the same time, we don’t wish our global partners to get stuck during their solution development once a platform’s feature is missing and wait for our development team to release it. Therefore, any part of the platform that cannot be extended using low code is programmatically extendable via the open-source SDK and APIs.
You can extend Iotellect edge and on-premise by developing device drivers, data storage and processing plugins, user interface components and integration connectors. Your devices get connected to any platform instance, including cloud, via the embedded open-source agent library. Your mobile apps can use the open-source API for connecting to the platform.
Iotellect’s applications are used to distribute partners' products and facilitate DevOps processes during their development stage.
Team Development and DevOps
Almost any IoT product is a team-work. Therefore, Iotellect enables concurrent life implementation, debugging and testing low code developer teams.
In contrast to code-first development that assumes every developer to have a local Git repository and spend time for builds, restarts, commits and pull requests, Iotellect applies the absolute majority of low code changes immediately. The whole collectively developed app can be pushed to Git or other version control systems once a certain version passes necessary QA checks.
Once your app graduates as a release candidate or production release, it can be published on your local marketplace server (for edge and on-premise apps) or pushed to the primary cloud instance. Your delivery process is fully customizable.
Testing and Optimizing Applications
Iotellect’s primary value is low-coding performance and short time-to-market for your products. Thus, efficient debugging, quality assurance, and fast refactoring of your app is extremely important and enabled by a dedicated toolset:
- Automatic discovery and visualization of your app’s structure including all relation between its modules, CPU-intensive hotspots, etc.
- Statistical information on platform module usage metrics, memory consumption, interaction with the storage facility, and network I/O performance
- Visual editors and debugging tools for backend logic (expressions, rulesets, workflows, queries) and frontend dashboards
- Detailed tracking of device communications, two-way data transfer, device configuration changes, operations executed, notifications received, and more
- Tips and tricks on performance optimization methods and low-coding best practices available throughout the documentation and via community support
Application Packaging and CI/CD
Products and services based on the Iotellect platform are delivered as applications, e.g. sets of low code resources that can be either exported as text files (e.g. for pushing them to Git) or packaged into special archives for uploading into a marketplace or deploying on other Iotellect instances.
Besides end user delivery automation, applications enable DevOps processes and team development across IT landscapes, such as dev, test, RC, and production.
New versions of your product often come with updated sets of resources, such as models or dashboards. However, updating any resources that were modified on the end customer's production server may cause loss of those local changes. To deal with those issues, Iotellect supports local modification tracking, versioning for individual resources, and resource dependency tracking.
While Labeling and Customization
Iotellect is a white-labeled platform. Products that you develop upon it can be rebranded and restyled to match your or your customer’s brand book. To achieve desired long-term commercial results, your product will inherit your brand name, domain name, copyright, logos, icons, documentation, and other corporate identity elements.
Iotellect also provides flexible app customization options:
Internationalization
All text resources can be translated into multiple languages.
Localization
This includes the custom rules for formatting date/time, numbers, and some other country-specific values.
End User Customization
Your end users can resell your IoT product with their custom graphical components, themes, product logos, icons, etc.
Enterprise Integration
Iotellect-based solutions capture live, up-to-date information about all of your assets in the field, often giving other enterprise systems real-time data to speed operations. For example, detected product faults can trigger automatic generation of a trouble ticket in a Service Desk system, dispatching field technicians with detailed information on required repairs. Usage data can be sent to billing and supply chain management systems eliminating error-prone manual steps and reducing process time delays from months to minutes.
Enterprise integration is enabled through any supported protocol, such as HTTP, MQTT, or JDBC/ODBC, as well as via open-source Java/.NET/C++ APIs. Any integration method provides full permission-controlled access to the unified data model.
Iotellect also enables two-way UI-level integration: Iotellect dashboards can be incorporated into a third-party portal while external web pages can, in their turn, appear inside platform-based dashboards.
Monetizing Your Apps
The crux of Iotellect is lowering costs and raising the pace of your development team. However, planning monetization of your IoT know-how requires extensive platform-side support. With Iotellect, you have full control over revenue acquisition within greatly varying cases:
- Any nature of your app (box product, web service, or customer-specific solution)
- Any delivery method (cloud, edge, on-premise, or hybrid)
- Any licensing model (perpetual licenses or subscriptions)
- Any usage model (fixed price, pay-per-use, etc.)
- Any usage metrics (devices, users, concurrent users, data items ingested/stored, product-specific units, etc.)
- Any customer scale (from B2C to enterprise products)
- Any e-commerce provider
- Any billing, CRM, or ERP system used in-house
- Any variation of license types, subscription tiers, and options/offers/discounts.
Extending the Platform
Existing practice of Iotellect partners shows that 99% of their applications’ data collection, analytics, integration, and UI logic is implemented as no-to-low-code. However, there are some rare cases when low code doesn’t do the trick.
For such cases, Iotellect offers Java and Python scripting, open-source Java SDK for plugins and drivers, and APIs for other platforms, such as .NET, C++ and JavaScript.
Plugin SDK
Custom Iotellect plugins can programmatically extend edge and on-premise servers with new data processing and storage functionality, as well as with new external authentication methods. Plugins are implemented in Java and can be distributed via Iotellect marketplaces just like regular low code applications.
Driver Development Kit
Iotellect Driver Development Kit (DDK) allows implementing device and data source communications in Java. We do our best to provide drivers for all standard communication protocols and also offer a powerful low code driver development tool (Flexible Driver), so the DDK is only required for rare complicated communication protocols that are implemented as existing Java libraries.
Agent SDK
Agent SDK is a software library embeddable into the firmware or acting as an internal application of your smart device. It makes a secure network connection to an Iotellect instance, making your device capable of centralized monitoring, control, configuration, management, and upgrading.
The Agent library is available on multiple platforms, including Java, .NET, C/C++, Android, and more.