Class PresenceChangeEvent
- All Implemented Interfaces:
Event,java.io.Serializable
public class PresenceChangeEvent extends java.lang.Object implements Event
If a user updates their presence manually, the manual_presence_change event will also be sent to all connected clients for that user.
There are two forms of this event. When only one user's presence is being communicated, you'll receive a user field with a single user ID present within. This form is deprecated.
Pass the batch_presence_aware=1 parameter to rtm.start or rtm.connect to instruct the Slack message server to batch your presence messages and send a users attribute instead, containing an array of users changing to the same status.
Sometimes you'll get a single event for a single user but if you use batch_presence_aware=1, that single user event will be single item in the users array.
In case you missed that: if you send batch_presence_aware=1 then the shape of presence_change events changes. Instead of a string-based user field, you'll get users, an array.
If you're writing a library that supports presence_change events, you should be prepared to handle both kinds of presence events.
RTM API Presence is now only available via subscription. As of January 2018, presence_change events are not dispatched without presence subscriptions established with presence_sub. Relatedly, current user presence status is no longer communicated in rtm.start. Learn more.
- See Also:
- Serialized Form
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringTYPE_NAME -
Constructor Summary
Constructors Constructor Description PresenceChangeEvent() -
Method Summary
Modifier and Type Method Description protected booleancanEqual(java.lang.Object other)booleanequals(java.lang.Object o)java.lang.StringgetPresence()java.lang.StringgetType()java.lang.StringgetUser()java.util.List<java.lang.String>getUsers()inthashCode()voidsetPresence(java.lang.String presence)voidsetUser(java.lang.String user)voidsetUsers(java.util.List<java.lang.String> users)java.lang.StringtoString()
-
Field Details
-
TYPE_NAME
public static final java.lang.String TYPE_NAME- See Also:
- Constant Field Values
-
-
Constructor Details
-
PresenceChangeEvent
public PresenceChangeEvent()
-
-
Method Details
-
getType
public java.lang.String getType() -
getUser
public java.lang.String getUser() -
getUsers
public java.util.List<java.lang.String> getUsers() -
getPresence
public java.lang.String getPresence() -
setUser
public void setUser(java.lang.String user) -
setUsers
public void setUsers(java.util.List<java.lang.String> users) -
setPresence
public void setPresence(java.lang.String presence) -
equals
public boolean equals(java.lang.Object o)- Overrides:
equalsin classjava.lang.Object
-
canEqual
protected boolean canEqual(java.lang.Object other) -
hashCode
public int hashCode()- Overrides:
hashCodein classjava.lang.Object
-
toString
public java.lang.String toString()- Overrides:
toStringin classjava.lang.Object
-