Example #1
0
 public PlayCensorshipSucksVideoTauntCommandProcessor(LineService lineService
                                                      , IVideoAccessor videoAccessor
                                                      , ISettingsAccessor settingsAccessor) : base(Keyword.PlayCensorshipSucks, lineService)
 {
     _videoAccessor    = videoAccessor;
     _settingsAccessor = settingsAccessor;
 }
Example #2
0
 public PlayRedLightGreenLightVideoTauntCommandProcessor(LineService lineService
                                                         , IVideoAccessor videoAccessor
                                                         , ISettingsAccessor settingsAccessor) : base(Keyword.PlayRedLightGreenLight, lineService)
 {
     _videoAccessor    = videoAccessor;
     _settingsAccessor = settingsAccessor;
 }
Example #3
0
 public SettingsVocabularyProcessor(ISettingsAccessor settingsAccessor)
 {
     Vocabulary = new Dictionary <string, Func <Session, string, string> >
     {
         { @"#Settings\.(.*)+", ProcessLine }
     };
     _settingsAccesor = settingsAccessor;
 }
 public RiskyPickStartCommandProcessor(LineService lineService
                                       , IPathsAccessor pathsAccessor
                                       , ISettingsAccessor settingsAccessor) : base(Keyword.RiskyPickStart, lineService)
 {
     _lineService      = lineService;
     _pathsAccessor    = pathsAccessor;
     _settingsAccessor = settingsAccessor;
 }
Example #5
0
 public VitalSubSubmitDailyReportCommandProcessor(LineService lineService
                                                  , IVitalSubService vitalSubService
                                                  , ISettingsAccessor settingsAccessor
                                                  )
     : base(Keyword.VitalSubSubmitDailyReport
            , lineService)
 {
     _vitalSubService = vitalSubService;
 }
Example #6
0
 public DecideOrgasmCommandProcessor(LineService lineService
                                     , IRandomNumberService randomNumberService
                                     , IBookmarkService bookmarkService
                                     , ISettingsAccessor settingsAccessor
                                     ) : base(Keyword.DecideOrgasm, lineService)
 {
     _randomNumberService = randomNumberService;
     _bookmarkService     = bookmarkService;
     _settingsAccessor    = settingsAccessor;
 }
Example #7
0
 public EmailSenderFactory(IBackgroundJobClient jobClient,
                           SettingsRepository settingsSettingsRepository,
                           ISettingsAccessor <PoliciesSettings> policiesSettings,
                           StoreRepository storeRepository,
                           Logs logs)
 {
     Logs                = logs;
     _jobClient          = jobClient;
     _settingsRepository = settingsSettingsRepository;
     PoliciesSettings    = policiesSettings;
     _storeRepository    = storeRepository;
 }
Example #8
0
 public VitalSubService(IPathsAccessor pathsAccessor
                        , ILineCollectionFilter lineCollectionFilter
                        , IRandomNumberService randomNumberService
                        , ISettingsAccessor settingsAccessor
                        , IScriptAccessor scriptAccessor
                        )
 {
     _pathsAccessor        = pathsAccessor;
     _lineCollectionFilter = lineCollectionFilter;
     _randomNumberService  = randomNumberService;
     _settingsAccessor     = settingsAccessor;
     _scriptAccessor       = scriptAccessor;
 }
 public VitalSubAssignmentCommandProcessor(LineService lineService
                                           , ISettingsAccessor settingsAccessor
                                           , ILineCollectionFilter lineCollectionFilter
                                           , IRandomNumberService randomNumberService
                                           , IPathsAccessor pathsAccessor
                                           , IVitalSubService vitalSubService
                                           )
     : base(Keyword.VitalSubAssignment, lineService)
 {
     _settingsAccessor     = settingsAccessor;
     _lineCollectionFilter = lineCollectionFilter;
     _pathsAccessor        = pathsAccessor;
     _randomNumberService  = randomNumberService;
     _vitalSubService      = vitalSubService;
 }
 public GetCommandProcessorsService(IScriptAccessor scriptAccessor
                                    , IFlagAccessor flagAccessor
                                    , LineService lineService
                                    , IImageAccessor imageAccessor
                                    , IVideoAccessor videoAccessor
                                    , IVariableAccessor variableAccessor
                                    , ITauntAccessor tauntAccessor
                                    , IConfigurationAccessor configurationAccessor
                                    , IRandomNumberService randomNumberService
                                    , INotifyUser notifyUser
                                    , ISettingsAccessor settingsAccessor
                                    , IPathsAccessor pathsAccessor
                                    , IBookmarkService bookmarkService
                                    , IMediaContainerService mediaContainerService
                                    , ITimeService timeService
                                    , ILineCollectionFilter lineCollectionFilter
                                    , IVitalSubService vitalSubService
                                    , IConditionalObjectLogic conditionalObjectLogic
                                    , IVocabularyProcessor sessionVocabularyProcessor
                                    )
 {
     _scriptAccessor             = scriptAccessor;
     _flagAccessor               = flagAccessor;
     _lineService                = lineService;
     _imageAccessor              = imageAccessor;
     _videoAccessor              = videoAccessor;
     _variableAccessor           = variableAccessor;
     _tauntAccessor              = tauntAccessor;
     _configurationAccessor      = configurationAccessor;
     _randomNumberService        = randomNumberService;
     _notifyUser                 = notifyUser;
     _settingsAccessor           = settingsAccessor;
     _pathsAccessor              = pathsAccessor;
     _bookmarkService            = bookmarkService;
     _mediaContainerService      = mediaContainerService;
     _timeService                = timeService;
     _lineCollectionFilter       = lineCollectionFilter;
     _vitalSubService            = vitalSubService;
     _conditionalObjectLogic     = conditionalObjectLogic;
     _sessionVocabularyProcessor = sessionVocabularyProcessor;
 }
Example #11
0
        private Dictionary <MessageProcessor, IMessageProcessor> CreateMessageProcessors(ISettingsAccessor settingsService
                                                                                         , IStringService stringService
                                                                                         , LineService lineService
                                                                                         , ISystemVocabularyAccessor systemVocabularyAccessor
                                                                                         , IVariableAccessor variableAccessor
                                                                                         , IRandomNumberService randomPercentService
                                                                                         )
        {
            var rval = new Dictionary <MessageProcessor, IMessageProcessor>();

            rval.Add(MessageProcessor.Greeting, new GreetingMessageProcessor(settingsService, stringService));
            rval.Add(MessageProcessor.Safeword, new SafewordMessageProcessor());
            rval.Add(MessageProcessor.ScriptResponse, new ScriptResponseMessageProcessor(lineService));
            rval.Add(MessageProcessor.EdgeDetection, new EdgeMessageProcessor(systemVocabularyAccessor, variableAccessor, randomPercentService));
            return(rval);
        }
Example #12
0
 public GreetingMessageProcessor(ISettingsAccessor settingsAccessor
                                 , IStringService stringService)
 {
     _settingsAccessor = settingsAccessor;
     _stringService    = stringService;
 }
        public VocabularyProcessor(ILineCollectionFilter lineCollectionFilter
                                   , LineService lineService
                                   , IVocabularyAccessor vocabularyAccessor
                                   , IImageAccessor imageAccessor
                                   , IRandomNumberService randomNumberService
                                   , ISettingsAccessor settingsAccessor
                                   )
        {
            var settings = settingsAccessor.GetSettings();

            _lineCollectionFilter = lineCollectionFilter;
            _lineService          = lineService;
            _vocabularyAccessor   = vocabularyAccessor;
            _vocabularyProcessors = new List <IVocabularyProcessor>
            {
                new ImageVocabularyProcessor(imageAccessor),
                new RandomVocabularyProcessor(lineService, randomNumberService),
                new SessionVocabularyProcessor(),
                new SettingsVocabularyProcessor(settingsAccessor)
            };
            _codeVocabulary = new Dictionary <string, Func <string, Session, string> >
            {
                { "#DommeName", (line, session) => line.Replace("#DommeName", session.Domme.Name) },
                { "#DomAge", (line, session) => line.Replace("#DomAge", session.Domme.Age.ToString()) },
                { "#DomApathy", (line, session) => line.Replace("#DomApathy", session.Domme.ApathyLevel.ToString()) },
                { "#DomAvgCockMin", (line, session) => line.Replace("#DomAvgCockMin", session.Domme.CockSmallLimit.ToString()) },
                { "#DomAvgCockMax", (line, session) => line.Replace("#DomAvgCockMax", session.Domme.CockBigLimit.ToString()) },
                { "#DomBirthdayMonth", (line, session) => line.Replace("#DomBirthdayMonth", session.Domme.BirthDay.ToString("MMMM")) },
                { "#DomBirthdayDay", (line, session) => line.Replace("#DomBirthdayDay", session.Domme.BirthDay.Day.ToString()) },
                { "#DomCup", (line, session) => line.Replace("#DomCup", session.Domme.CupSize.ToString()) },
                { "#DomEyes", (line, session) => line.Replace("#DomEyes", session.Domme.EyeColor) },
                { "#DomHair", (line, session) => line.Replace("#DomHair", session.Domme.HairColor) },
                { "#DomHairLength", (line, session) => line.Replace("#DomHairLength", session.Domme.HairLength.ToString()) },
                { "#DomHonorific", (line, session) => line.Replace("#DomHonorific", session.Domme.Honorific) },
                { "#DomLargeCockMin", (line, session) => line.Replace("#DomLargeCockMin", (session.Domme.CockBigLimit + 1).ToString()) },
                { "#DomLevel", (line, session) => line.Replace("#DomLevel", session.Domme.DomLevel.ToString()) },
                { "#DomMood", (line, session) => line.Replace("#DomMood", session.Domme.MoodLevel.ToString()) },
                { "#DomMoodMax", (line, session) => line.Replace("#DomMoodMax", session.Domme.MoodHappy.ToString()) },
                { "#DomMoodMin", (line, session) => line.Replace("#DomMoodMin", session.Domme.MoodAngry.ToString()) },
                { "#DomName", (line, session) => line.Replace("#DomName", session.Domme.Name) },
                { "#DomOrgasmRate", (line, session) => line.Replace("#DomOrgasmRate", "allow " + session.Domme.AllowsOrgasms.ToString().ToLower()) },
                { "#DomRuinRate", (line, session) => line.Replace("#DomRuinRate", "ruin " + session.Domme.RuinsOrgasms.ToString().ToLower()) },
                { "#DomSelfAgeMax", (line, session) => line.Replace("#DomSelfAgeMax", session.Domme.AgeOldLimit.ToString()) },
                { "#DomSelfAgeMin", (line, session) => line.Replace("#DomSelfAgeMin", session.Domme.AgeYoungLimit.ToString()) },
                { "#DomSmallCockMax", (line, session) => line.Replace("#DomSmallCockMax", (session.Domme.CockSmallLimit - 1).ToString()) },
                { "#DomSubAgeMax", (line, session) => line.Replace("#DomSubAgeMax", session.Domme.SubAgeOldLimit.ToString()) },
                { "#DomSubAgeMin", (line, session) => line.Replace("#DomSubAgeMin", session.Domme.SubAgeYoungLimit.ToString()) },

                { "#GreetSub", (line, session) => line.Replace("#GreetSub", GetGreetingReplacement(DateTime.Now)) },
                { "#EdgeTaunt", (line, session) => line.Replace("#EdgeTaunt", GetEdgeTaunt(session)) },
                { "#PetName", GetPetName },

                { "#SubName", (line, session) => line.Replace("#SubName", session.Sub.Name) },
                { "#SubAge", (line, session) => line.Replace("#SubAge", session.Sub.Age.ToString()) },
                { "#SubBirthdayMonth", (line, session) => line.Replace("#SubBirthdayMonth", session.Sub.Birthday.ToString("MMMM")) },
                { "#SubBirthdayDay", (line, session) => line.Replace("#SubBirthdayDay", session.Sub.Birthday.Day.ToString()) },
                { "#SubCockSize", (line, session) => line.Replace("#SubCockSize", session.Sub.CockSize.ToString()) },
                { "#SubEyes", (line, session) => line.Replace("#SubEyes", session.Sub.EyeColor) },
                { "#SubHair", (line, session) => line.Replace("#SubHair", session.Sub.HairColor) },
                { "#SubWritingTaskMax", (line, session) => line.Replace("#SubWritingTaskMax", session.Sub.WritingTaskMax.ToString()) },
                { "#SubWritingTaskMin", (line, session) => line.Replace("#SubWritingTaskMin", session.Sub.WritingTaskMin.ToString()) },

                { "#ShortName", (line, session) => line.Replace("#ShortName", settings.Domme.GlitterContactName) },
                { "#GlitterContact1", (line, session) => line.Replace("#GlitterContact1", session.Glitter[0].Name) },
                { "#Contact1", (line, session) => line.Replace("#Contact1", session.Glitter[0].Name) },
                { "#GlitterContact2", (line, session) => line.Replace("#GlitterContact2", session.Glitter[1].Name) },
                { "#Contact2", (line, session) => line.Replace("#Contact2", session.Glitter[1].Name) },
                { "#GlitterContact3", (line, session) => line.Replace("#GlitterContact3", session.Glitter[2].Name) },
                { "#Contact3", (line, session) => line.Replace("#Contact3", session.Glitter[2].Name) },
                { "#GlitterContact4", (line, session) => line.Replace("#GlitterContact4", session.Glitter[3].Name) },
                { "#Contact4", (line, session) => line.Replace("#Contact4", session.Glitter[3].Name) },

                //{ "#CBTCockCount", (line, session) => line.Replace("#CBTCockCount", session.CbtCockCount) },
                //{ "#CBTBallsCount", (line, session) => line.Replace("#CBTBallsCount", session.CbtBallsCount) },

                //{ "#OrgasmLockDate",  (line, session) => session.Sub.IsOrgasmRestricted ? line.Replace("#OrgasmLockDate", "#CockToClit") :"#C**k" },
                { "#C**k", (line, session) => line.Replace("#C**k", session.Sub.CallCockAClit ? "#CockToClit" :"#C**k") },
                { "stroking", (line, session) => session.Sub.CallCockAClit ? line.Replace("stroking", "#StrokingToRubbing") :"stroking" },
                { "#Balls", (line, session) => session.Sub.CallBallsAPussy ? line.Replace("#Balls", "#BallsToPussy") :"#Balls" },
                { "those #Balls", (line, session) => session.Sub.CallBallsAPussy ? line.Replace("those #Balls", "that #BallsToPussy") :"those #Balls" },
                { "#SessionEdges", (line, session) => line.Replace("#SessionEdges", session.Sub.EdgeCount.ToString()) },
                // Not sure if this is torture level or how many times it's been done
                { "#SessionCBTCock", (line, session) => line.Replace("#SessionCBTCock", session.Sub.CockTortureLevel.ToString()) },
                { "#SessionCBTBalls", (line, session) => line.Replace("#SessionCBTBalls", session.Sub.BallsTortureLevel.ToString()) },
                { "#GeneralTime", (line, session) => line.Replace("#GeneralTime", GetGeneralTime(DateTime.Now)) },
                { "#CurrentTime", (line, session) => line.Replace("#CurrentTime", DateTime.Now.ToString("h:mm")) },
                { "#CurrentDay", (line, session) => line.Replace("#CurrentDay", DateTime.Now.ToString("dddd")) },
                { "#CurrentMonth", (line, session) => line.Replace("#CurrentMonth", DateTime.Now.ToString("MMMMM")) },
                { "#CurrentYear", (line, session) => line.Replace("#CurrentYear", DateTime.Now.ToString("yyyy")) },
                { "#CurrentDate", (line, session) => line.Replace("#CurrentDate", DateTime.Now.ToShortDateString()) },
                { "#RP_CaseNumber", (line, session) => line.Replace("#RP_CaseNumber", session.GameBoard.SelectedCases.LastOrDefault().ToString()) },
                { "#RP_EdgeOffer", (line, session) => line.Replace("#RP_EdgeOffer", (session.GameBoard.Offer?.Edges).GetValueOrDefault().ToString()) },
                { "#RP_TokenOffer", (line, session) => line.Replace("#RP_TokenOffer", (session.GameBoard.Offer?.Tokens).GetValueOrDefault().ToString()) },
                { "#RP_RespondCase", (line, session) => line.Replace("#RP_RespondCase", session.GameBoard.LastSelectedCase?.ToString() ?? string.Empty) },
            };
        }
Example #14
0
 public AddTokensCommandProcessor(LineService lineService, ISettingsAccessor settingsAccessor, INotifyUser notifyUser) : base(Keyword.AddTokens, lineService)
 {
     _lineService      = lineService;
     _settingsAccessor = settingsAccessor;
     _notifyUser       = notifyUser;
 }
Example #15
0
 public TimeService(ISettingsAccessor settingsAccessor)
 {
     _settingsAccessor = settingsAccessor;
 }
Example #16
0
 public InterpolationProcessor(ISettingsAccessor settingsAccessor)
 {
     _settingsAccessor = settingsAccessor;
 }
 public DefaultSwaggerProvider(IWebHostEnvironment webHostEnvironment, ISettingsAccessor <PoliciesSettings> policies)
 {
     _fileProvider = webHostEnvironment.WebRootFileProvider;
     Policies      = policies;
 }
Example #18
0
 public ChastityOn(LineService lineService, ISettingsAccessor settingsAccessor) : base(Keyword.ChastityOn, lineService)
 {
     _settingsAccessor = settingsAccessor;
 }
Example #19
0
        public SessionEngine(ISettingsAccessor settingsAccessor
                             , IStringService stringService
                             , IScriptAccessor scriptAccessor
                             , ITimerFactory timerFactory
                             , IFlagAccessor flagAccessor
                             , IImageAccessor imageAccessor
                             , IVideoAccessor videoAccessor
                             , IVariableAccessor variableAccessor
                             , ITauntAccessor tauntAccessor
                             , ISystemVocabularyAccessor systemVocabularyAccessor
                             , IVocabularyAccessor vocabularyAccessor
                             , ILineCollectionFilter lineCollectionFilter
                             , IRandomNumberService randomNumberService
                             , IConfigurationAccessor configurationAccessor
                             , INotifyUser notifyUser
                             , IPathsAccessor pathsAccessor
                             , IGetCommandProcessorsService getCommandProcessorsService
                             , IInterpolationProcessor interpolationProcessor
                             )
        {
            CommandProcessors = getCommandProcessorsService.CreateCommandProcessors();

            CommandProcessors[Keyword.StartStroking].CommandProcessed += StartStrokingCommandProcessed;
            CommandProcessors[Keyword.Edge].CommandProcessed          += EdgeCommandProcessed;
            CommandProcessors[Keyword.End].CommandProcessed           += EndCommandProcessed;
            CommandProcessors[Keyword.TauntFromFile].CommandProcessed += TauntFromFileCommandProcessed;

            CommandProcessors[Keyword.ShowImage].CommandProcessed         += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowButtImage].CommandProcessed     += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowBoobsImage].CommandProcessed    += ShowImageCommandProcessed;
            CommandProcessors[Keyword.SearchImageBlog].CommandProcessed   += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowHardcoreImage].CommandProcessed += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowSoftcoreImage].CommandProcessed += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowLesbianImage].CommandProcessed  += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowBlowjobImage].CommandProcessed  += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowFemdomImage].CommandProcessed   += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowLezdomImage].CommandProcessed   += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowHentaiImage].CommandProcessed   += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowGayImage].CommandProcessed      += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowMaledomImage].CommandProcessed  += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowCaptionsImage].CommandProcessed += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowGeneralImage].CommandProcessed  += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowLikedImage].CommandProcessed    += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowDislikedImage].CommandProcessed += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowBlogImage].CommandProcessed     += ShowImageCommandProcessed;
            CommandProcessors[Keyword.NewBlogImage].CommandProcessed      += ShowImageCommandProcessed;
            CommandProcessors[Keyword.ShowLocalImage].CommandProcessed    += ShowImageCommandProcessed;

            CommandProcessors[Keyword.PlayVideo].CommandProcessed              += PlayVideoCommandProcessed;
            CommandProcessors[Keyword.PlayJoiVideo].CommandProcessed           += PlayVideoCommandProcessed;
            CommandProcessors[Keyword.PlayCockHeroVideo].CommandProcessed      += PlayVideoCommandProcessed;
            CommandProcessors[Keyword.PlayCensorshipSucks].CommandProcessed    += PlayCensorshipSucksVideoTauntCommandProcessed;
            CommandProcessors[Keyword.PlayRedLightGreenLight].CommandProcessed += PlayRedLightGreenLightVideoTauntCommandProcessed;
            CommandProcessors[Keyword.StopVideo].CommandProcessed              += StopVideoCommandProcessed;
            CommandProcessors[Keyword.PauseVideo].CommandProcessed             += PauseVideoCommandProcessed;
            CommandProcessors[Keyword.UnpauseVideo].CommandProcessed           += UnpauseVideoCommandProcessed;
            CommandProcessors[Keyword.ShowCensorshipBar].CommandProcessed      += ShowCensorshipBarCommandProcessed;
            CommandProcessors[Keyword.HideCensorshipBar].CommandProcessed      += HideCensorshipBarCommandProcessed;

            CommandProcessors[Keyword.SendDailyTasks].CommandProcessed     += RequestTaskCommandProcessed;
            CommandProcessors[Keyword.VitalSubAssignment].CommandProcessed += VitalSubAssignmentCommandProcessed;

            MessageProcessors = CreateMessageProcessors(settingsAccessor, stringService, new LineService(), systemVocabularyAccessor, variableAccessor, new RandomNumberService());

            MessageProcessors[MessageProcessor.ScriptResponse].MessageProcessed += ScriptResponse_MessageProcessed;
            MessageProcessors[MessageProcessor.EdgeDetection].MessageProcessed  += EdgeDetection_MessageProcessed;

            CommandProcessors[Keyword.RiskyPickStart].CommandProcessed += RiskyPickStartCommandProcessed;

            CommandProcessors[Keyword.LikeImage].BeforeCommandProcessed += LikeImageCommandProcessed;

            _scriptAccessor        = scriptAccessor;
            _variableAccessor      = variableAccessor;
            _configurationAccessor = configurationAccessor;
            _scriptTimer           = timerFactory.Create();
            _scriptTimer.Elapsed  += _scriptTimer_Elapsed;

            _tauntTimer          = timerFactory.Create();
            _tauntTimer.Elapsed += _tauntTimer_Elapsed;

            _teaseCountDown          = timerFactory.Create();
            _teaseCountDown.Elapsed += _teaseCountDown_Elapsed;

            _vocabularyProcesser    = new VocabularyProcessor(lineCollectionFilter, new LineService(), vocabularyAccessor, imageAccessor, randomNumberService, settingsAccessor);
            _interpolationProcessor = interpolationProcessor;
        }