public ChobbylaLocalListener(Chobbyla chobbyla, SteamClientHelper steam, ulong initialConnectLobbyID) { LastUserAction = DateTime.Now; this.chobbyla = chobbyla; this.steam = steam; steam.Listener = this; this.initialConnectLobbyID = initialConnectLobbyID; serializer = new CommandJsonSerializer(Utils.GetAllTypesWithAttribute <ChobbyMessageAttribute>()); tts = TextToSpeechBase.Create(); steam.JoinFriendRequest += SteamOnJoinFriendRequest; steam.OverlayActivated += SteamOnOverlayActivated; steam.SteamOnline += () => { SendSteamOnline(); }; steam.SteamOffline += () => { SendSteamOffline(); }; discordController = new DiscordController(GlobalConst.ZeroKDiscordID, GlobalConst.SteamAppID.ToString()); discordController.OnJoin += DiscordOnJoinCallback; discordController.OnDisconnected += DiscordOnDisconnectedCallback; discordController.OnError += DiscordOnErrorCallback; discordController.OnReady += DiscordOnReadyCallback; discordController.OnRequest += DiscordOnRequestCallback; discordController.OnSpectate += DiscordOnSpectateCallback; timer = new Timer((o) => OnTimerTick(), this, 500, 500); idleReport = new Timer((o) => SendCommand(new UserActivity() { IdleSeconds = WindowsApi.IdleTime.TotalSeconds }), this, 5000, 5000); }
public ChobbylaLocalListener(Chobbyla chobbyla, SteamClientHelper steam, ulong initialConnectLobbyID) { this.chobbyla = chobbyla; this.steam = steam; steam.Listener = this; this.initialConnectLobbyID = initialConnectLobbyID; serializer = new CommandJsonSerializer(Utils.GetAllTypesWithAttribute <ChobbyMessageAttribute>()); tts = TextToSpeechBase.Create(); steam.JoinFriendRequest += SteamOnJoinFriendRequest; steam.OverlayActivated += SteamOnOverlayActivated; steam.SteamOnline += () => { SendSteamOnline(); }; }
public static TextToSpeechBase Create() { TextToSpeechBase ret = null; try { if (Environment.OSVersion.Platform != PlatformID.Unix) { ret = Activator.CreateInstance(Type.GetType("ChobbyLauncher.TextToSpeechWindows")) as TextToSpeechBase; } else { ret = new TextToSpeechLinux(); } } catch (Exception ex) { Trace.TraceWarning("Failed to init VoiceCommands:{0}", ex.Message); } return(ret); }