@@ -133,6 +133,17 @@ export class TallyInput extends EventEmitter {
133
133
}
134
134
135
135
protected addBusToAddress ( address : string , bus : string ) {
136
+ //replace bus with its real id if it is "preview" or "program" or "aux"
137
+ if ( bus === "preview" ) {
138
+ bus = currentConfig . bus_options . find ( ( b ) => b . type === "preview" ) . id ;
139
+ }
140
+ else if ( bus === "program" ) {
141
+ bus = currentConfig . bus_options . find ( ( b ) => b . type === "program" ) . id ;
142
+ }
143
+ else if ( bus === "aux" ) {
144
+ bus = currentConfig . bus_options . find ( ( b ) => b . type === "aux" ) . id ;
145
+ }
146
+
136
147
if ( ! Array . isArray ( this . tallyData [ address ] ) ) {
137
148
this . tallyData [ address ] = [ ] ;
138
149
}
@@ -142,6 +153,17 @@ export class TallyInput extends EventEmitter {
142
153
}
143
154
144
155
protected removeBusFromAddress ( address : string , bus : string ) {
156
+ //replace bus with its real id if it is "preview" or "program" or "aux"
157
+ if ( bus === "preview" ) {
158
+ bus = currentConfig . bus_options . find ( ( b ) => b . type === "preview" ) . id ;
159
+ }
160
+ else if ( bus === "program" ) {
161
+ bus = currentConfig . bus_options . find ( ( b ) => b . type === "program" ) . id ;
162
+ }
163
+ else if ( bus === "aux" ) {
164
+ bus = currentConfig . bus_options . find ( ( b ) => b . type === "aux" ) . id ;
165
+ }
166
+
145
167
if ( ! Array . isArray ( this . tallyData [ address ] ) ) {
146
168
this . tallyData [ address ] = [ ] ;
147
169
} else {
@@ -150,6 +172,17 @@ export class TallyInput extends EventEmitter {
150
172
}
151
173
152
174
protected removeBusFromAllAddresses ( bus : string ) {
175
+ //replace bus with its real id if it is "preview" or "program" or "aux"
176
+ if ( bus === "preview" ) {
177
+ bus = currentConfig . bus_options . find ( ( b ) => b . type === "preview" ) . id ;
178
+ }
179
+ else if ( bus === "program" ) {
180
+ bus = currentConfig . bus_options . find ( ( b ) => b . type === "program" ) . id ;
181
+ }
182
+ else if ( bus === "aux" ) {
183
+ bus = currentConfig . bus_options . find ( ( b ) => b . type === "aux" ) . id ;
184
+ }
185
+
153
186
for ( const address of Object . keys ( this . tallyData ) ) {
154
187
this . tallyData [ address ] = this . tallyData [ address ] . filter ( ( b ) => b !== bus ) ;
155
188
}
@@ -173,8 +206,6 @@ export class TallyInput extends EventEmitter {
173
206
}
174
207
}
175
208
176
- //console.log("realBusses", realBusses);
177
-
178
209
this . tallyData [ address ] = realBusses || [ ] ;
179
210
}
180
211
@@ -191,8 +222,25 @@ export class TallyInput extends EventEmitter {
191
222
}
192
223
193
224
protected sendIndividualTallyData ( address : string , busses : string [ ] ) {
225
+ //if bus is "preview" or "program", find its real bus id and use that instead because many source types use those words instead of the actual busId
226
+ let realBusses = [ ] ;
227
+ for ( let bus of busses ) {
228
+ if ( bus === "preview" ) {
229
+ realBusses . push ( currentConfig . bus_options . find ( ( b ) => b . type === "preview" ) . id ) ;
230
+ }
231
+ else if ( bus === "program" ) {
232
+ realBusses . push ( currentConfig . bus_options . find ( ( b ) => b . type === "program" ) . id ) ;
233
+ }
234
+ else if ( bus === "aux" ) {
235
+ realBusses . push ( currentConfig . bus_options . find ( ( b ) => b . type === "aux" ) . id ) ;
236
+ }
237
+ else {
238
+ realBusses . push ( bus ) ;
239
+ }
240
+ }
241
+
194
242
let individualTallyData = { } ;
195
- individualTallyData [ address ] = busses ;
243
+ individualTallyData [ address ] = realBusses || [ ] ;
196
244
this . tally . next ( individualTallyData ) ;
197
245
}
198
246
}
0 commit comments