An extensible Windows service framework for integrating building automation systems with third-party applications using EcoStruxure™ Web Services (EWS).
Smart Connector lets developers write Processors (scheduled tasks) and REST endpoints that bridge Schneider Electric systems with external data sources — weather APIs, energy analytics, IoT platforms, and more.
| Framework | .NET Framework 4.8 · C# |
| Runtime | Windows Service |
| Protocols | EWS SOAP 1.1/1.2 · REST/JSON · Syslog |
| Current SDK | v2.6 |
| Guide | Description |
|---|---|
| Developer Guide | Architecture, Quick Start, Extension development, full SDK reference |
| RESTful EWS Gateway | REST API reference for building automation data (values, alarms, trends, subscriptions) |
| Migration Guide | Upgrading to SDK v2.6 — breaking changes, NuGet feed migration, new features |
| How-To Guides | Task-oriented recipes: bulk writes, cron scheduling, REST auth, syslog, trend logs with backfill, safe scheduled processors, and more |
Time to first build: ~10 minutes
-
Configure the NuGet feed — add the GitHub Packages source for
SchneiderElectricBuildings:dotnet nuget add source "https://nuget.pkg.github.com/SchneiderElectricBuildings/index.json" ` --name "SmartConnector" --username YOUR_USERNAME --password YOUR_PAT
Your PAT needs
read:packagesscope only. See the full instructions. -
Create a class library targeting .NET Framework 4.8.
-
Add NuGet packages:
Mongoose.Process(provides theProcessorbase class),Mongoose.Ews.Server.Data(providesEwsServerDataAdapter), andSxL.Common(providesLogger). -
Write a Processor — see the Quick Start walkthrough or the sample project.
-
Deploy the compiled DLL to the Smart Connector Extensions folder and configure via the Portal.
| Project | Description |
|---|---|
| QuickStart.HelloEws | Minimal Processor that writes a UTC timestamp to an EWS ValueItem |
| SmartConnector.WeatherExtension | The Developer Guide "Develop an Extension" walkthrough, fully implemented — fetches current conditions and a 3-day forecast from OpenWeatherMap and demonstrates self-provisioning, per-cycle trend sampling, a phased cycle, and a re-entrancy guard |
| SmartConnector.GridStatusExtension | Full reference extension — fetches North American grid signals (prices, load, fuel mix, carbon) and demonstrates self-provisioning, trend logs with backfill, a phased update cycle, and a re-entrancy guard |
| SmartConnector.EntsoeExtension | Full reference extension — fetches European energy-market data (prices, load, generation) with multi-zone support, using the same production patterns as the Grid Status example |
See SECURITY.md for vulnerability reporting.
Copyright © 2017–2026 Schneider Electric. All rights reserved.
The examples and documentation in this repository are released under the MIT License, so you are free to use, copy, and modify them in your own projects, including commercial ones.