private static void Main(string[] args) { ColorConsole.WriteGray("Creating MovieStreamingActorSystem"); MovieStreamingActorSystem = ActorSystem.Create("MovieStreamingActorSystem"); ColorConsole.WriteGray("Creating actor supervisory hierarchy"); MovieStreamingActorSystem.ActorOf(Props.Create <PlaybackActor>(), "Playback"); do { ShortPause(); Console.WriteLine(); Console.ForegroundColor = ConsoleColor.DarkGray; ColorConsole.WriteGray("enter a command and hit enter"); var command = Console.ReadLine(); if (command.StartsWith("play")) { int userId = int.Parse(command.Split(',')[1]); string movieTitle = command.Split(',')[2]; var message = new PlayMovieMessage(movieTitle, userId); MovieStreamingActorSystem.ActorSelection("/user/Playback/UserCoordinator").Tell(message); } if (command.StartsWith("stop")) { int userId = int.Parse(command.Split(',')[1]); var message = new StopMovieMessage(userId); MovieStreamingActorSystem.ActorSelection("/user/Playback/UserCoordinator").Tell(message); } if (command == "exit") { MovieStreamingActorSystem.Dispose(); ColorConsole.WriteGray("Actor system shutdown"); Console.ReadKey(); Environment.Exit(1); } } while (true); }