public void SetPresence(string gameName) { if (!IsPresenceEnabled) { return; } try { if (!isConnected && !isConnecting) { InitializeDiscord(); } var pres = discord.CurrentPresence; discord.SetPresence(new DiscordRPC.RichPresence { Details = gameName, Assets = new DiscordRPC.Assets { LargeImageKey = "playnite-avatar", LargeImageText = "Playnite game library manager." } }); } catch (Exception e) when(!PlayniteEnvironment.ThrowAllErrors) { logger.Error(e, "Failed to set Discord presence"); } }
public static void SetDiscordRPCStatus(string details) { if (DiscordRPCEnabled == true) { try { if (client != null) { client.SetPresence(new DiscordRPC.RichPresence() { Details = details, Timestamps = new DiscordRPC.Timestamps() { Start = DateTime.UtcNow }, Assets = new DiscordRPC.Assets() { LargeImageKey = "bigwk", LargeImageText = "WolvenKit", } }); client.Invoke(); } } catch { } } }
public static void SetRPC() { var settings = SettingsManager.Load(); if (settings.DiscordRPC) { RPCClient.SetPresence(RichPresence); } }
private void RpcTimer_Tick(object sender, EventArgs e) { if (staticMC != null) { if (Data._usingRichPresence) { // Do rich presence update. DiscordRPC.DiscordRpcClient rpc = Data.rpccli; string serv = "Details hidden."; if (Data._showServerIP) { serv = currentServer; if (string.IsNullOrEmpty(serv)) { serv = "Not playing on any servers."; } } if (Data._showPartyInfo) { if (Data._showServerIP) { serv += "\n" + Data.party.GetPartyString(); } else { serv = Data.party.GetPartyString(); } } string state = "Playing Minecraft."; if (Data._showUsername) { state = "Playing as " + Data.username; } string smallImageText = "Playing Minecraft"; if (Data._showGamePlaying) { smallImageText += " - " + Data.game.ToString(); } rpc.SetPresence(new DiscordRPC.RichPresence() { State = state, Details = serv, Assets = new DiscordRPC.Assets() { LargeImageKey = "logo", LargeImageText = "MarsClient", SmallImageKey = "mc_png", SmallImageText = smallImageText } }); } } }
public void InitDiscordRPC() { client = new DiscordRPC.DiscordRpcClient("807752124078620732"); //Set the logger client.Logger = new DiscordRPC.Logging.ConsoleLogger() { Level = DiscordRPC.Logging.LogLevel.Warning }; //Subscribe to events client.OnReady += (sender, e) => { Console.WriteLine("Received Ready from user {0}", e.User.Username); }; client.OnPresenceUpdate += (sender, e) => { Console.WriteLine("Received Update! {0}", e.Presence); }; //Connect to the RPC client.Initialize(); //Set the rich presence //Call this as many times as you want and anywhere in your code. client.SetPresence(new DiscordRPC.RichPresence() { Details = "Launching", Assets = new DiscordRPC.Assets() { LargeImageKey = "bigwolf", LargeImageText = "Testing", SmallImageKey = "bigwolf" } }); client.Invoke(); }
private void updateStatus() { string url = "http://api.paladinspresence.com/" + playerId; var wc = new WebClient { Proxy = null }; var resp = wc.DownloadString(url); JToken json = JValue.Parse(resp); client.SetPresence(new DiscordRPC.RichPresence() { Details = json.SelectToken("rich").SelectToken("details").ToString(), State = json.SelectToken("rich").SelectToken("state").ToString(), Assets = new DiscordRPC.Assets() { LargeImageKey = json.SelectToken("rich").SelectToken("large_image_key").ToString(), LargeImageText = json.SelectToken("rich").SelectToken("large_image_text").ToString(), SmallImageKey = json.SelectToken("rich").SelectToken("small_image_key").ToString(), SmallImageText = json.SelectToken("rich").SelectToken("small_image_text").ToString() } }); }