void InvokeOnReceived(MonitorArgs obj)
        {
            InboundsArgs e = obj as InboundsArgs;

            onReceived.Invoke(m_AdminReference.twitchChat, e);
            if (GreetingsBehaviour.OnGreetingsReceived != null)
            {
                GreetingsBehaviour.OnGreetingsReceived(m_AdminReference.twitchChat, e);
            }

            if (m_Greeted.Contains(e.nick))
            {
                return;
            }
            m_Greeted.Add(e.nick);

            var greetingSet = m_Greetings.Find(x => string.Compare(x.message, e.greeting, true) == 0);

            if (greetingSet.description.Contains("{0}") && greetingSet.description.Contains("{1}"))
            {
                m_AdminReference.twitchChat.SendChatMessageFormat(greetingSet.description, e.nick, e.greeting);
            }
            else if (greetingSet.description.Contains("{0}"))
            {
                m_AdminReference.twitchChat.SendChatMessageFormat(greetingSet.description, e.nick);
            }
            else
            {
                m_AdminReference.twitchChat.SendChatMessage(greetingSet.description);
            }
        }
 private void OnMonitor(MonitorArgs args)
 {
     progressBar1.Value = args.Value;
     if (args.Value == _totalIterations)
     {
         MessageBox.Show(args.Text);
     }
 }
Example #3
0
        /// <summary>
        /// Spawn a user object for a player
        /// </summary>
        /// <param name="monitorArgs">Raw Command args to check for spawn command</param>
        public void Spawn(MonitorArgs monitorArgs)
        {
            CommandsArgs commandsArgs = monitorArgs as CommandsArgs;

            if (commandsArgs.IsCommand(m_SpawnCommand))
            {
                Spawn(commandsArgs.nick);
            }
        }
Example #4
0
        void InvokeOnReceived(MonitorArgs obj)
        {
            CommandsArgs e = obj as CommandsArgs;

            onReceived.Invoke(m_AdminReference.twitchChat, e);
            if (CommandsBehaviour.OnCommandsReceived != null)
            {
                CommandsBehaviour.OnCommandsReceived(m_AdminReference.twitchChat, e);
            }
        }
Example #5
0
 private void MonitorVolume(object sender, EventArgs e)
 {
     try
     {
         float volume = GetVolumeInfo();
         volume = volume.Clamp(0, 100);
         VolumeCheck(volume);
         MonitorArgs ma = new MonitorArgs(volume);
         OnMonitorUpdate(this, ma);
     }
     catch (Exception ex)
     {
         Trace.TraceInformation("Something happend at volume monitor: {0}", ex);
     }
 }
Example #6
0
        public string Execute(MonitorArgs args)
        {
            Logger log = new LoggerConfiguration()
                         .MinimumLevel.Error()
                         .WriteTo.Console()
                         .CreateLogger();

            audioStorage = new WatcherAudioStorage(log);
            evaluator    = new AudioEvaluator(log);
            recorder     = new AudioRecorder(evaluator, audioStorage);
            processor    = new AudioProcessor(recorder, evaluator, audioStorage);

            System.Console.WriteLine("Resgrid Audio");
            System.Console.WriteLine("-----------------------------------------");
            System.Console.WriteLine("Monitoring Audio on Device: " + args.Device);

            System.Console.WriteLine("Hooking into Events");
            recorder.SampleAggregator.MaximumCalculated  += SampleAggregator_MaximumCalculated;
            recorder.SampleAggregator.WaveformCalculated += SampleAggregator_WaveformCalculated;

            processor.TriggerProcessingStarted  += Processor_TriggerProcessingStarted;
            processor.TriggerProcessingFinished += Processor_TriggerProcessingFinished;

            evaluator.WatcherTriggered += Evaluator_WatcherTriggered;

            System.Console.WriteLine("Loading Settings");
            Config config = new Config();

            config.InputDevice = args.Device;
            config.AudioLength = 10;

            System.Console.WriteLine("Initializing Processor");
            processor.Init(config);

            System.Console.WriteLine("Starting Processor");
            processor.Start();

            System.Console.WriteLine("Ready, Monitoring Audio. Press Ctrl+C to exit.");
            System.Console.WriteLine($"Timestamp:		Min			Max			dB");
            System.Console.WriteLine($"---------------------------------------------------------------------------");

            while (recorder.RecordingState == RecordingState.Monitoring || recorder.RecordingState == RecordingState.Recording)
            {
                Thread.Sleep(100);
            }

            return("");
        }
        private void OnJniorMonitorNotify(Jnior jnior, MonitorArgs args)
        {
            StringBuilder sbInputs = new StringBuilder();
            StringBuilder sbOutputs = new StringBuilder();
            int inputs = jnior.GetInputs();
            int outputs = jnior.GetOutputs();
            for (int i = 7; i >= 0; i--)
            {
                sbInputs.Append(jnior.GetInput(i));
                sbOutputs.Append(jnior.GetOutput(i));
            }
            DateTime jniorTime = Jnior.EPOCH.AddMilliseconds(args.Monitor.jniorTime);
            string timeString = jniorTime.ToLocalTime().ToString("dd.MM.yyyy HH:mm:ss.fff");

            this.Invoke((MethodInvoker)delegate
            {
                if (jniorInputs.IsDisposed || jniorOutputs.IsDisposed || lastUpdated.IsDisposed)
                    return;

                jniorInputs.Text = sbInputs.ToString();
                jniorOutputs.Text = sbOutputs.ToString();
                lastUpdated.Text = timeString;
            });

            //Console.WriteLine("Inputs: " + sbInputs.ToString() + ", Outputs: " + sbOutputs.ToString() + ", Time : " + timeString);

            // Don't do the bridging, if the box is unchecked.
            // The jnior API fails to stop sending monitor packets after DisableMonitorPackets :P
            if (!monitorInputs.Checked)
                return;

            // Handle volume inputs
            // TODO: Don't increase when multiple monitor events come in without setting this back to 0.
            if (jnior.GetInput(JNIOR_INCREASE_INPUT) == 1)
            {
                dolby_.IncreaseVolume();
            }
            else if (jnior.GetInput(JNIOR_DECREASE_INPUT) == 1)
            {
                dolby_.DecreaseVolume();
            }
        }
Example #8
0
 void TwitchChat_OnReceived(object sender, MonitorArgs e)
 {
     m_OnAny.Invoke(e);
     m_OnRawData.Invoke(e.data);
 }