public ActionResult BuyTicket(Guid movieid)
        {
            Guid cinemaId       = Guid.Parse("{A83BEBA7-0752-4A11-8F3A-95F84B53A0D4}"); //todo build in cinemas
            var  movieItemProxy = new MovieShowTimeProxy(movieid);

            var movieTicket = new MovieTicket()
            {
                CinimaId  = cinemaId,
                MovieId   = movieItemProxy.MovieShowTimeId.Guid,
                MovieName = movieItemProxy.MovieName
            };

            var buyTicketInteraction = new SelfServiceMachineInteraction(Tracker.Current.Contact, movieTicket);

            buyTicketInteraction.ExecuteInteraction();
            return(Redirect(Feature.SitecoreCinema.ProjectConst.Links.SitecoreCinema.Lobby.LobbyLanding));
        }
        public async Task ExecuteStep()
        {
            var arr = new[]
            {
                @" _____ _      _        _   ",
                @"|_   _(_) ___| | _____| |_ ",
                @"  | | | |/ __| |/ / _ \ __|",
                @"  | | | | (__|   <  __/ |_ ",
                @"  |_| |_|\___|_|\_\___|\__|",
            };

            DrawStepTitle(arr);
            DrawTriggerMessage("You swiped your loyalty card.");

            var selfServiceMachineInteraction = new SelfServiceMachineInteraction(Identifier);

            await selfServiceMachineInteraction.ExecuteInteraction();

            var knownDataHelper         = new KnownDataHelper();
            KnownDataXConnect knownData = await knownDataHelper.GetKnownDataByIdentifierViaXConnect(Identifier);

            if (!selfServiceMachineInteraction.Errors.Any() && knownData?.PersonalInformationDetails != null &&
                knownData.VisitorInfoMovie != null)
            {
                Feedback.WriteLine("Why hello there " +
                                   knownData.PersonalInformationDetails.FirstName + " "
                                   + knownData.PersonalInformationDetails.LastName
                                   + ", whose favorite film is..." + knownData.VisitorInfoMovie.FavoriteMovie
                                   + ". Wow, really? Ok, to each their own I guess.");

                DrawPostInteractionMessage(new string[] {
                    "Here's your ticket - we'll charge you when you use it, in case you have some sort of emergency between here and the movie",
                    "It's just one of those courtesies we offer loyalty card member! Now go buy some candy."
                }
                                           );
            }
        }