Documentation Index
Fetch the complete documentation index at: https://backstage.spotify.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Soundcheck can emit events to the backstage events plugin.
Configuration
To enable events add the following configuration to your soundcheck config:
soundcheck:
events:
enabled: true
Make sure you are also running the most recent version of @spotify/backstage-plugin-soundcheck-node, as this package includes typing for the events.
Event Types
There are currently two types of events supported, CheckStatusChangeEvent and CertificationChangeEvent.
CheckStatusChangeEvent
This event is emitted when a check status changes, for example if a check status goes from failed to passed.
Example Payload:
eventPayload: {
checkId: 'check-1',
entityRef: 'component:default/test-1',
state: 'passed',
timestampMs: 1743777961,
previousState: 'failed',
scope: 'default'
},
topic: 'soundcheck-check-status-change',
If there was no prior check status, the event’s previousState field will be undefined.
To use this event you can subscribe to it via events service:
import { EventsService } from '@backstage/plugin-events-node';
import {
CHECK_STATUS_CHANGE_TOPIC,
CheckStatusChangeEvent,
} from '@spotify/backstage-plugin-soundcheck-node';
const subscribeToEvents = (events: EventsService) => {
events.subscribe({
id: 'test-sub',
topics: [CHECK_STATUS_CHANGE_TOPIC],
onEvent: async params => {
// handle event
},
});
}
//...
subscribeToEvents(eventsService);
CertificationStatusChangeEvent
This event is emitted when a certification state changes, for example if a certification for a level goes from failed to passed.
Example Payload:
eventPayload: {
trackId: 'track-1',
entityRef: 'component:default/test-1',
state: 'passed',
cumulativeState: 'passed',
levelOrdinal: 1,
timestampMs: 1743777961,
previousState: 'failed',
scope: 'default',
},
topic: 'soundcheck-certification-change',
If there was no prior certification status, the event’s previousState field will be undefined.
To use this event you can subscribe to it via events service:
import { EventsService } from '@backstage/plugin-events-node';
import {
CERTIFICATION_CHANGE_TOPIC,
CertificationChangeEvent,
} from '@spotify/backstage-plugin-soundcheck-node';
const subscribeToEvents = (events: EventsService) => {
events.subscribe({
id: 'test-sub',
topics: [CERTIFICATION_CHANGE_TOPIC],
onEvent: async params => {
// handle event
},
});
}
//...
subscribeToEvents(eventsService);