Documentation
¶
Overview ¶
Package kaufmann handles the Kaufmann connection license, which carries two telemetry families on a single connection, distinguished by the CloudEvent `ds` (data version):
- "r/..." Ruptela Smart5 telemetry (numeric IO-id signals). Decoded by the ruptela module — the historical behavior for this source.
- "kam/..." Queclink/Kamaleon telemetry that the Kaufmann oracle has already decoded into VSS-named signals. Decoded by the default module.
CloudEvent headers are identical for both families: the producer is the synthetic device NFT DID and the subject is the vehicle NFT DID, both built from the token ids in the envelope. Only signal/event/fingerprint decoding forks on the ds.
Index ¶
- type Module
- func (m Module) CloudEventConvert(ctx context.Context, msgData []byte) ([]cloudevent.CloudEventHeader, []byte, error)
- func (m Module) EventConvert(ctx context.Context, event cloudevent.RawEvent) ([]vss.Event, error)
- func (m Module) FingerprintConvert(ctx context.Context, event cloudevent.RawEvent) (modelce.Fingerprint, error)
- func (m Module) SignalConvert(ctx context.Context, event cloudevent.RawEvent) ([]vss.Signal, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Module ¶
type Module struct {
ChainID uint64 `json:"chain_id"`
AftermarketContractAddr common.Address `json:"aftermarket_contract_addr"`
VehicleContractAddr common.Address `json:"vehicle_contract_addr"`
}
Module routes Kaufmann events to the ruptela or default module based on ds. Its contract configuration matches how DIS configures the ruptela module for the Kaufmann source: AftermarketContractAddr is the synthetic device contract.
func (Module) CloudEventConvert ¶
func (m Module) CloudEventConvert(ctx context.Context, msgData []byte) ([]cloudevent.CloudEventHeader, []byte, error)
CloudEventConvert builds the CloudEvent header(s) for an event. The Kamaleon family becomes a single status event whose producer is the synthetic device DID and subject is the vehicle DID; the "r/" family is delegated to the ruptela module unchanged.
func (Module) EventConvert ¶
EventConvert routes to the default module for the Kamaleon family and to ruptela otherwise.
func (Module) FingerprintConvert ¶
func (m Module) FingerprintConvert(ctx context.Context, event cloudevent.RawEvent) (modelce.Fingerprint, error)
FingerprintConvert routes to the default module for the Kamaleon family and to ruptela otherwise.
func (Module) SignalConvert ¶
SignalConvert decodes signals: Kamaleon events carry pre-decoded VSS signals (default module); ruptela events use the ruptela decoder.