Package net.dv8tion.jda.api.managers
Interface Presence
public interface Presence
The Presence associated with the provided JDA instance
- Since:
- 3.0
-
Method Summary
Modifier and TypeMethodDescriptionThe current Activity for this session.getJDA()The JDA instance of this PresenceThe current OnlineStatus for this session.booleanisIdle()Whether the current session is marked as afk or not.voidsetActivity(Activity activity) Sets theActivityfor this session.voidsetIdle(boolean idle) Sets whether this session should be marked as afk or notvoidsetPresence(Activity activity, boolean idle) Sets two presence fields of this session.voidsetPresence(OnlineStatus status, boolean idle) Sets two presence fields of this session.voidsetPresence(OnlineStatus status, Activity activity) Sets two presence fields of this session.voidsetPresence(OnlineStatus status, Activity activity, boolean idle) Sets all presence fields of this session.voidsetStatus(OnlineStatus status) Sets theOnlineStatusfor this session
-
Method Details
-
getJDA
The JDA instance of this Presence- Returns:
- The current JDA instance
-
getStatus
The current OnlineStatus for this session.
This might not be what the Discord Client displays due to session clashing!- Returns:
- The
OnlineStatusof the current session
-
getActivity
The current Activity for this session.
This might not be what the Discord Client displays due to session clashing!- Returns:
- The
Activityof the current session or null if no activity is set
-
isIdle
boolean isIdle()Whether the current session is marked as afk or not.This is relevant to client accounts to monitor whether new messages should trigger mobile push-notifications.
- Returns:
- True if this session is marked as afk
-
setStatus
Sets theOnlineStatusfor this session- Parameters:
status- theOnlineStatusto be used (OFFLINE/null -> INVISIBLE)- Throws:
IllegalArgumentException- if the provided OnlineStatus isUNKNOWN
-
setActivity
Sets theActivityfor this session.
An Activity can be retrieved viaActivity.playing(String). For streams you provide a valid streaming url as second parameterExamples:
presence.setActivity(Activity.playing("Thrones"));presence.setActivity(Activity.streaming("Thrones", "https://twitch.tv/EasterEggs"));- Parameters:
activity- AnActivityinstance or null to reset- See Also:
-
setIdle
void setIdle(boolean idle) Sets whether this session should be marked as afk or notThis is relevant to client accounts to monitor whether new messages should trigger mobile push-notifications.
- Parameters:
idle- boolean
-
setPresence
Sets all presence fields of this session.- Parameters:
status- TheOnlineStatusfor this session (SeesetStatus(OnlineStatus))activity- TheActivityfor this session (SeesetActivity(net.dv8tion.jda.api.entities.Activity)for more info)idle- Whether to mark this session as idle (useful for client accountssetIdle(boolean))- Throws:
IllegalArgumentException- If the specified OnlineStatus isUNKNOWN
-
setPresence
Sets two presence fields of this session.
The third field stays untouched.- Parameters:
status- TheOnlineStatusfor this session (SeesetStatus(OnlineStatus))activity- TheActivityfor this session (SeesetActivity(net.dv8tion.jda.api.entities.Activity)for more info)- Throws:
IllegalArgumentException- If the specified OnlineStatus isUNKNOWN
-
setPresence
Sets two presence fields of this session.
The third field stays untouched.- Parameters:
status- TheOnlineStatusfor this session (SeesetStatus(OnlineStatus))idle- Whether to mark this session as idle (useful for client accountssetIdle(boolean))- Throws:
IllegalArgumentException- If the specified OnlineStatus isUNKNOWN
-
setPresence
Sets two presence fields of this session.
The third field stays untouched.- Parameters:
activity- TheActivityfor this session (SeesetActivity(net.dv8tion.jda.api.entities.Activity)for more info)idle- Whether to mark this session as idle (useful for client accountssetIdle(boolean))
-