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.boolean
isIdle()
Whether the current session is marked as afk or not.void
setActivity
(Activity activity) Sets theActivity
for this session.void
setIdle
(boolean idle) Sets whether this session should be marked as afk or notvoid
setPresence
(Activity activity, boolean idle) Sets two presence fields of this session.void
setPresence
(OnlineStatus status, boolean idle) Sets two presence fields of this session.void
setPresence
(OnlineStatus status, Activity activity) Sets two presence fields of this session.void
setPresence
(OnlineStatus status, Activity activity, boolean idle) Sets all presence fields of this session.void
setStatus
(OnlineStatus status) Sets theOnlineStatus
for 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
OnlineStatus
of 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
Activity
of 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 theOnlineStatus
for this session- Parameters:
status
- theOnlineStatus
to be used (OFFLINE/null -> INVISIBLE)- Throws:
IllegalArgumentException
- if the provided OnlineStatus isUNKNOWN
-
setActivity
Sets theActivity
for 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
- AnActivity
instance 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
- TheOnlineStatus
for this session (SeesetStatus(OnlineStatus)
)activity
- TheActivity
for 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
- TheOnlineStatus
for this session (SeesetStatus(OnlineStatus)
)activity
- TheActivity
for 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
- TheOnlineStatus
for 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
- TheActivity
for 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)
)
-