Apostol CSMS — motor, který pohání ChargeMeCar
ChargeMeCar je retailová služba na Apostol CSMS: platformě pro správu nabíjecích stanic se třemi verzemi OCPP, roamingem OCPI, platbami přes Stripe Connect a několika nezávislými operátory na jedné instanci. Tato stránka říká na rovinu, co je v produkci, co je hotové a co je zatím v plánu.
Jak se ChargeMeCar vztahuje k platformě
Tři věci, které stojí za to vědět - kvůli transparentnosti, ne kvůli brožuře.
Stejný motor, žádný fork
ChargeMeCar běží na stejném sestavení softwaru jako každá jiná značka na platformě, pod kryptograficky podepsanou licencí značky. Vydání platformy k němu přicházejí stejně jako ke všem: jeden příkaz aktualizace, kontroly zdraví, rollback stejného tvaru.
Provozně nezávislý
Náš účet Stripe, naše infrastruktura, naše právnická osoba - FROG IT SARL, Nice. Vlastník platformy ChargeMeCar neprovozuje a nemůže sáhnout na jeho peníze: platby se strhávají na účtech Stripe majitelů stanic a data značky jsou šifrována klíčem vlastním značce.
Otevřený základ, dokumentované jádro
Platforma stojí na otevřeném základu zveřejněném pod svobodnou licencí na GitHubu: transportním frameworku a platformní vrstvě v PostgreSQL. To, co značka kupuje nebo licencuje, je doménová vrstva nabíjení nad ním - a jádro, na němž závisí, si může přečíst kdokoli.
Co platforma umí - s poctivým stavem každé řádky
Tři úrovně, záměrně oddělené: v produkci - běží na živých stanicích se skutečnými penězi; hotové - implementované a pokryté testy a simulátorem stanic, ale zatím bez produkčního objemu; v plánu - na roadmapě, nedodáno.
Stanice
- OCPP 1.6 - hlavní protokol platformy; každá stanice, která jím mluví, se připojí bez úpravV produkci
- OCPP 2.0.1 - 12 z 16 funkčních bloků kompletně, 4 částečněHotové
- OCPP 1.5 - starší parkyHotové
- Smíšený park: verze se rozpozná automaticky, příkazy se překládají mezi formátyHotové
- Připojení svépomocí majitelem - asi 15 minut; stanice se registruje při prvním navázání spojeníV produkci
- Vzdálený start, stop, odemknutí kabelu, restart, zapnutí a vyřazení - z portálu, aplikace pro řidiče nebo přes QRV produkci
- Aktualizace firmwaru z odkazu nebo z knihovny souborů platformy; log bezpečnostních událostí staniceHotové
- Hromadné operace nad parkem, hierarchie lokalit (region → město → lokalita → zóna)V plánu
Tarify a peníze
- Pět účtovatelných služeb: za kWh, za minutu nabíjení, stání po skončení, rezervace, pauzaV produkci
- Tarify podle rozvrhu: den v týdnu, hodina, den/nocHotové
- Stripe a Stripe Connect: přímé stržení na účtu majitele stanice, účtenky na jméno majitele, vratkyHotové
- Ad hoc platba QR kódem bez registrace - požadavek EU AFIR; otestováno end-to-end proti skutečnému StripeHotové
- Poplatek platformy zadržený z každé platby; měsíční rozepsaný výpis majiteliV produkci
- Předplacený zůstatek organizace, účtování za nabíjení a kWh pro vlastní flotilyV produkci
- Podvojné účetnictví na interních účtech - součty sedí z principuV produkci
- Dynamické ceny (podle poptávky, podle ceny elektřiny)V plánu
Operátoři a řidiči
- Více nezávislých operátorů na jedné instanci, každý vidí jen svéV produkci
- Role: vlastník, administrátor, operátor, inženýr, podpora, řidič, partnerV produkci
- Partneři - podsíť uvnitř operátora, s evidencí výnosůHotové
- Webová aplikace pro řidiče: mapa s filtry, start a stop, průběh nabíjení, historie, uložené karty, RFID, rezervace - osm jazykůV produkci
- Notifikace: push, e-mail, v aplikaci; hromadné zprávyHotové
- AI asistent podpory v aplikaci pro řidiče, jednající přísně v právech řidičeHotové
- Nativní aplikace v App Store a Google PlayV plánu
Roaming a integrace
- OCPI 2.2.1 a 2.3.0 současně, v obou rolích: provozovatel nabíjecích bodů i poskytovatel služeb mobilityHotové
- Publikace stanic, tarifů, nabíjení a zúčtovacích záznamů partnerské síti přes hub - prošlo živou výměnouV produkci
- Příjem tokenů a příkazů partnera v živé výměněČástečně
- Smlouvy s Hubject a Gireve - obchodní krok operátora; technický předpoklad je splněnV plánu
- Otevřené REST API - stovky metod se specifikací OpenAPI, události v reálném čase, webhookyV produkci
- Konektory pro účetnictví a ERPV plánu
Provoz a bezpečnost
- Přehled operátora: stanice podle stavu, energie, výnosy, vytížení, alarmy; konzole incidentů se živým proudem událostíV produkci
- Dodávka v kontejnerech; instalace, aktualizace bez výpadku a rollback - čtyři nasazení na jedné pipelineV produkci
- Přihlášení OAuth 2.0 včetně Googlu; ochrana relace prohlížeče; tři nezávislé úrovně řízení přístupu; auditní deníkyV produkci
- Export reportů do Excelu/CSV, tvůrce reportů, metriky vytížení a dostupnostiV plánu
- Externí monitoring a upozornění, záloha k bodu v časeV plánu
- ISO 15118 Plug & Charge, vzájemné certifikátyV plánu
Otevřené standardy, žádná závislost na dodavateli
Platforma mluví protokoly, které používá každá moderní nabíjecí síť - OCPP směrem k hardwaru, OCPI směrem k ostatním sítím. Funguje každá stanice kompatibilní s OCPP, ať ji vyrobil kdokoli.
OCPP - tři verze, jeden runtime
- OCPP 1.5 (SOAP)
Kompatibilita se starším zařízením, které je stále v provozu.
- OCPP 1.6 (JSON / WebSocket)
Hlavní protokol platformy: stanice, která jím mluví, se připojí bez úprav.
- OCPP 2.0.1
Třívrstvý model Stanice → EVSE → Konektor, perzistentní model zařízení, bezpečnostní události, správa firmwaru. 12 z 16 funkčních bloků kompletně.
Verze se rozpozná při připojení. Příkazy z portálu se překládají 1.6 ↔ 2.0.1, takže smíšený park se spravuje v jednom rozhraní.
OCPI - roaming s oběma aktivními verzemi
- Role CPO
Zpřístupňuje stanice, tarify a nabíjení značky partnerským sítím - publikace přes hub prošla živou výměnou.
- Role eMSP
Přijímá tokeny řidičů partnerů a příkazy vzdáleného startu stejným kanálem - implementováno a otestováno, v živé výměně zatím neprokázáno.
Neutrální k hardwaru už z návrhu
Jakákoli stanice OCPP 1.5 / 1.6 / 2.0.1 - i konkurenční. Smíšený park se sloučí do jednoho portálu bez přeflashování: adresa serveru OCPP se mění ve vlastním webovém rozhraní stanice.
Postaveno kolem regulačního rámce EU
Přímá stržení Stripe Connect na účet majitele stanice, ad hoc platba QR kódem pro AFIR, silné ověření zákazníka podle PSD2, GDPR v datové vrstvě.
Stripe Connect
«Připojit přes Stripe» z portálu - váš vlastní účet Stripe, z jakékoli země; přímá stržení na účtu majitele; účtenka se vystavuje z účtu majitele na jeho jméno; poplatek platformy se zadrží z každé platby, s měsíčním výpisem pro účetnictví; vratky stejným kanálem.
AFIR - ad hoc platba
Veřejně přístupné body musí přijímat platbu od jakéhokoli řidiče bez smlouvy či aplikace: řidič naskenuje QR kód na stanici, vidí tarif, zaplatí kartou a nabíjí. Implementováno a otestováno end-to-end proti skutečnému Stripe.
PSD2 / 3-D Secure
Silné ověření zákazníka u evropských karet vynucuje Stripe; žádná platební cesta ho neobchází.
GDPR
Data zůstávají v EU, řidič si může smazat účet z aplikace, souhlasy se evidují, každá akce zanechává auditní stopu.
Tenký transport, logika v databázi
Dvě vrstvy v jádru: transport s jednou smyčkou napsaný v moderním C++ - HTTP, WebSocket, TLS, OCPP - a byznys logika napsaná přímo v PostgreSQL. Záměrné inženýrské rozhodnutí, s uvedenými argumenty.
Jedna smyčka událostí pro HTTP i PostgreSQL
Databázová spojení žijí ve stejné smyčce událostí jako spojení HTTP a WebSocket: požadavek je jedna cesta do databáze, jedna transakce. Desetitisíce stanic drží trvalá spojení k jedinému uzlu se stabilní latencí.
Integrita peněz z principu
Výpočet ceny, kontrola zůstatku, ochrana proti dvojímu utracení a fakturace běží v jedné databázové transakci - atomicitu zaručuje PostgreSQL, ne aplikační kód. Dokončené nabíjení se ztracenou fakturou nebo dvojí stržení při souběžných požadavcích je vyloučeno návrhem.
Licence a manifest značky
Značka běží pod kryptograficky podepsanou licencí - název, právnická osoba, trh, doména, daňové údaje - kterou nelze znovu vydat bez vlastníka platformy. Vzhled, poskytovatel plateb, jazyk, měna a mapy žijí v manifestu značky, který se upravuje v portálu a aplikuje bez nového sestavení.
Otevřený základ
Transportní framework a platformní vrstva v PostgreSQL jsou zveřejněny pod svobodnou licencí na GitHubu; doménová vrstva nabíjení nad nimi je produkt. Dodávka je Docker Compose na vlastním serveru značky, s databází nedostupnou z vnějšího síťového segmentu.
Kde platforma zaostává za enterprise lídry - a říká to
Nic z toho nebrání provozovat a vydělávat už dnes; vše je plánovaná práce.
ISO 15118 Plug & Charge
Auto se autorizuje samo, bez karty či aplikace. Důležité pro prémiové DC flotily a součást některých národních dotačních programů.
Nativní mobilní aplikace
Řidiči používají webovou aplikaci, která se nainstaluje do telefonu jedním klepnutím; přítomnost v App Store a Google Play je další krok.
Vyvažování zátěže na úrovni lokality
Výkonové profily se předávají stanici a ukládají; rozdělování výkonu mezi stanice jedné lokality a reakce na špičky v síti jsou v plánu.
Provoz parku ve velkém
Hromadné operace s firmwarem a nastavením, hierarchie lokalit, export reportů a tvůrce reportů - to, co žádá operátor s padesáti a více stanicemi.
Roamingové huby
Polovina eMSP v OCPI v živé výměně a smlouvy s Hubject a Gireve.
Chcete platformu pod vlastní značkou?
Nová značka se nasadí na připravený server za pár minut - s vlastní doménou, právnickou osobou, poskytovatelem plateb a vzhledem. Výrobci a operátoři: white-label program je na další stránce.