Panelde bir soketin durumu size şüpheli geliyor: Gerçekten şarj ediyor mu, yoksa bir mesaj mı kayboldu? Bir sonraki ölçümü beklemek yerine cihazdan bilgiyi hemen isteyebilirsiniz. OCPP'de bunun adı TriggerMessage'dır. OCPP 1.6J'de "Remote Trigger" profilinin parçasıdır.

Nasıl çalışır?

CSMS, cihaza hangi mesajı tetiklemek istediğini söyler. Cihaz önce TriggerMessage'a cevap verir, ardından istenen mesajı normal bir istek olarak gönderir.

[2, "11001", "TriggerMessage", {"requestedMessage": "StatusNotification", "connectorId": 1}] [3, "11001", {"status": "Accepted"}]

Ardından cihaz:

[2, "c-551", "StatusNotification", {"connectorId": 1, "status": "Charging", "errorCode": "NoError"}]

Hangi mesajlar tetiklenebilir?

OCPP 1.6J'de requestedMessage şu değerleri alabilir:

  • BootNotification: Cihaz bilgilerini (model, firmware) yeniden gönderir.
  • Heartbeat: Canlılık kontrolü ve saat senkronizasyonu.
  • StatusNotification: Bir veya tüm konnektörlerin durumu.
  • MeterValues: Anlık ölçüm değerleri.
  • DiagnosticsStatusNotification: Tanı dosyası yükleme durumu.
  • FirmwareStatusNotification: Firmware güncelleme durumu.

connectorId belirtilmezse mesaj tüm konnektörler veya cihazın geneli için gönderilir. OCPP 2.0.1 ve 2.1'de liste genişletilmiştir; örneğin TransactionEvent, LogStatusNotification ve sertifika imzalama isteği de tetiklenebilir.

Olası cevaplar

  • Accepted: Mesaj gönderilecek.
  • Rejected: Cihaz bu mesajı şu anda göndermeyecek.
  • NotImplemented: İstenen mesaj tetiklenemiyor.

Pratik kullanım senaryoları

Haritadaki durumu doğrulamak

Bir sürücü "uygulamada boş görünüyor ama soket dolu" diye bildirdiğinde, StatusNotification tetikleyerek gerçek durumu hemen öğrenebilirsiniz. Kayıp bir mesaj yüzünden paneldeki bilginin eskidiği durumlarda bu çok işe yarar.

Canlı şarj bilgisini güncellemek

Müşteri hizmetleri, şarjın gerçekten devam edip etmediğini görmek için MeterValues tetikleyebilir. Anlık güç sıfır görünüyorsa sorun araç tarafında olabilir.

Firmware envanteri

Tüm cihazlardan BootNotification tetiklemek, hangi cihazın hangi firmware sürümünde olduğunu güncellemenin pratik yoludur. Ancak bu işlemi çok sayıda cihaza aynı anda yapmaktan kaçının.

Bağlantı testi

Heartbeat tetiklemek, cihazın komutlara cevap verip vermediğini ve saatinin doğru olup olmadığını hızlıca gösterir.

Güncelleme takibi

Bir firmware güncellemesinin takıldığından şüpheleniyorsanız FirmwareStatusNotification tetikleyerek son durumu öğrenebilirsiniz. Bkz. OCPP ile firmware güncelleme.

Dikkat edilmesi gerekenler

  • TriggerMessage desteği isteğe bağlıdır. Bazı eski cihazlar NotImplemented döner.
  • Tetiklenen mesaj, cevaptan hemen sonra gelmeyebilir; cihazın mesaj kuyruğunda sıra bekleyebilir.
  • Aşırı kullanım, özellikle mobil hatlarda gereksiz veri tüketimi yaratır. Periyodik tetikleme yerine doğru Heartbeat ve ölçüm aralıklarını tercih edin.
  • Tetiklenen BootNotification, bazı cihazlarda cihazı yeniden başlatmaz ama bazı yazılımlar bunu yeniden başlama gibi yorumlayabilir; raporlarınızda ayırt edin.

Otomatik kullanım örnekleri

TriggerMessage elle kullanıldığı kadar otomasyonda da işe yarar. Örneğin bir cihaz belirli bir süre StatusNotification göndermediyse, sistem otomatik olarak durum tetikleyip yanıt gelip gelmediğine bakabilir; yanıt gelmezse çevrimdışı uyarısı üretebilir. Benzer şekilde, uzun süren bir oturumda MeterValues akışı kesildiyse anlık ölçüm tetiklemek, oturumun hâlâ sürüp sürmediğini anlamanın hızlı bir yoludur. Bu otomasyonları kurarken tetikleme sıklığını sınırlamak ve her cihaz için bir bekleme süresi tanımlamak, gereksiz trafiği önler.

Bir diğer kullanışlı senaryo, CSMS tarafında yaşanan bir kesintiden sonra tüm ağın durumunu yeniden senkronize etmektir. Sunucu birkaç dakika erişilemez olduysa, cihazlar yeniden bağlandığında tüm konnektörler için StatusNotification tetiklemek paneldeki bilginin doğru olmasını garanti eder. Bu işlemi cihaz başına birkaç saniye arayla sıraya koymak sunucuyu ve mobil hatları yormaz.

Sonuç

TriggerMessage, panelde gördüğünüz bilginin güncelliğinden şüphe ettiğiniz anlarda cihazdan doğrudan teyit almanın yoludur. Durum, ölçüm ve cihaz bilgisi için hızlı bir teşhis aracıdır. Üreticy'nin OCPP yazılımı tüm OCPP haberleşmesini kayıt altında tutar; tetiklenen mesajları ve cevaplarını loglarda kolayca izleyebilirsiniz. Mesaj zarfını anlamak için OCPP mesaj yapısı yazımıza da göz atın.