Package net.dv8tion.jda.api.managers
Interface Presence
-
public interface Presence
The Presence associated with the provided JDA instance- Since:
- 3.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Activity
getActivity()
The current Activity for this session.JDA
getJDA()
The JDA instance of this PresenceOnlineStatus
getStatus()
The 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 Detail
-
getJDA
@Nonnull JDA getJDA()
The JDA instance of this Presence- Returns:
- The current JDA instance
-
getStatus
@Nonnull OnlineStatus 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
@Nullable Activity 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
void setStatus(@Nullable OnlineStatus status)
Sets theOnlineStatus
for this session- Parameters:
status
- theOnlineStatus
to be used (OFFLINE/null -> INVISIBLE)- Throws:
java.lang.IllegalArgumentException
- if the provided OnlineStatus isUNKNOWN
-
setActivity
void setActivity(@Nullable Activity activity)
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:
Activity.playing(String)
,Activity.streaming(String, String)
-
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
void setPresence(@Nullable OnlineStatus status, @Nullable Activity activity, boolean idle)
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:
java.lang.IllegalArgumentException
- If the specified OnlineStatus isUNKNOWN
-
setPresence
void setPresence(@Nullable OnlineStatus status, @Nullable Activity activity)
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:
java.lang.IllegalArgumentException
- If the specified OnlineStatus isUNKNOWN
-
setPresence
void setPresence(@Nullable OnlineStatus status, boolean idle)
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:
java.lang.IllegalArgumentException
- If the specified OnlineStatus isUNKNOWN
-
setPresence
void setPresence(@Nullable Activity activity, boolean idle)
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)
)
-
-