module JamRuby class SubscriptionMessage # sent whenever we change the desired direction of the source def self.mount_source_direction(mount) Notification.send_subscription_message('mount', mount.id, {type: 'source_direction_change', source_direction: true}.to_json) end # sent whenever we receive an update about a sourcing attempt by a client # source_change_json is created by a rabl, so currently only possible to use via web def self.mount_source_change(mount, source_change_json) Notification.send_subscription_message('mount', mount.id, source_change_json) end def self.mount_source_up_requested(mount) Notification.send_subscription_message('mount', mount.id, {change_type: IcecastSourceChange::CHANGE_TYPE_MOUNT_UP_REQUEST}.to_json) end def self.mount_source_down_requested(mount) Notification.send_subscription_message('mount', mount.id, {change_type: IcecastSourceChange::CHANGE_TYPE_MOUNT_DOWN_REQUEST}.to_json) end def self.jam_track_signing_job_change(jam_track_right) Notification.send_subscription_message('jam_track_right', jam_track_right.id.to_s, {signing_state: jam_track_right.signing_state, current_packaging_step: jam_track_right.current_packaging_step, packaging_steps: jam_track_right.packaging_steps}.to_json) end def self.mixdown_signing_job_change(jam_track_mixdown_package) Notification.send_subscription_message('mixdown', jam_track_mixdown_package.id.to_s, {signing_state: jam_track_mixdown_package.signing_state, current_packaging_step: jam_track_mixdown_package.current_packaging_step, packaging_steps: jam_track_mixdown_package.packaging_steps}.to_json) end def self.test Notification.send_subscription_message('some_key', '1', {field1: 'field1', field2: 'field2'}.to_json) end end end