Salto KS icon

Salto KS

Listens for incoming events on a Salto KS SignalR stream

Overview

This node listens for real-time events from a Salto KS SignalR stream. It establishes a WebSocket connection to the Salto KS event streaming service and continuously receives messages on specified channels such as "Entries" or "Incidents". The node is designed to be used as a trigger in workflows, emitting incoming event data as soon as it arrives.

Common scenarios where this node is beneficial include:

  • Monitoring access control events (e.g., entries or incidents) at specific sites.
  • Real-time alerting or logging based on Salto KS system events.
  • Integrating Salto KS event streams with other systems or automations in n8n.

Practical example:

  • A security team wants to automatically log every entry event at a particular site into a database or notify via messaging apps. This node can listen to the "Entries" channel for that site and trigger downstream workflow actions immediately when an event occurs.

Properties

Name Meaning
Environment Selects the Salto KS environment to connect to. Options: Production, Accept, Test, Development.
Channel Specifies which event channel to listen on. Options: Entries, Incidents.
Site ID The identifier of the site for which to receive events. Required string input.
User ID (Optional) Optional user identifier to filter events by user.
Retry Interval Base (ms) Base time in milliseconds to wait before the first reconnection attempt after disconnection.
Max Retry Interval (ms) Maximum time in milliseconds to wait between reconnection attempts.

Output

The node outputs JSON objects representing the received events from the Salto KS SignalR stream. Each output item contains a json field with the parsed event data as received from the stream.

Example structure of one output item:

{
  "json": {
    /* Parsed event data object from Salto KS */
  }
}

No binary data output is produced by this node.

Dependencies

  • Requires an API key credential for authenticating with Salto KS.
  • Uses Microsoft SignalR client library to establish WebSocket connections.
  • Uses Axios HTTP client for token authentication requests.
  • Requires network access to Salto KS event streaming endpoints.
  • The node handles OAuth2 token acquisition and refresh internally using provided credentials.

Troubleshooting

  • Connection failures: If the node cannot establish a SignalR connection, check that the API credentials are correct and have sufficient permissions. Also verify network connectivity to the Salto KS endpoints.
  • Authentication errors: Errors during token retrieval indicate invalid credentials or misconfiguration. Recheck the API key and secret.
  • Unexpected disconnects: The node implements exponential backoff retry logic. If disconnects persist, ensure stable network conditions and correct parameter settings for retry intervals.
  • Parsing errors: If incoming messages cannot be parsed as JSON, the node will emit an error. Verify that the Salto KS service is sending valid JSON payloads.

Links and References

Discussion