Следующим вызовом оказалось то, что помимо реализации самого протокола взаимодействия с зарядной инфраструктурой, требуется предусмотреть и обработать большое количество специфичных сценариев, связанных как с несовершенством протокола, так и с проблемами в реализации данного протокола со стороны вендоров оборудования. В результате появились всевозможные бэкграунд процессы и кроны, которые отслеживают многочисленные метрики и события от станции, обновляют и перезапрашивают данные, исправляют и мониторят проблемы. Например, система должна корректно обрабатывать ретроспективные данные, появляющиеся в случае временного обрыва связи; адекватно реагировать на аппаратные сбои и дейстия злоумышленников, уметь балансировать нагрузку в случае превышения допустимых лимитов. Хотя процесс выявления подобных сценариев и тьюнинга бесконечен, мы добились в нем существенного прогресса и успешно справляемся с возникающими проблемами. Также отмечу, что именно эта часть программного обеспечения несет наибольшую ценность для владельца зарядных станции, т к именно подобными механизмами и хуками достигается общая стабильность решения.