@API(status=STABLE)
public interface OboPresenceService
Modifier and Type | Method and Description |
---|---|
java.lang.String |
createPresenceFeed()
Creates a new stream capturing online status changes ("presence feed") for the company (pod) and returns the ID of
the new feed.
|
java.lang.String |
deletePresenceFeed(java.lang.String feedId)
Delete the specified presence feed that was created.
|
void |
externalPresenceInterest(java.util.List<java.lang.Long> userIds)
Register interest in a list of external users to get their presence info.
|
V2Presence |
getPresence()
Get the online status (presence info) of the calling user.
|
V2Presence |
getUserPresence(java.lang.Long userId,
java.lang.Boolean local)
Get the presence info of a specified user.
|
java.util.List<V2Presence> |
listPresences(java.lang.Long lastUserId,
java.lang.Integer limit)
Get the presence info of all users in a pod.
|
java.util.List<V2Presence> |
readPresenceFeed(java.lang.String feedId)
Reads the specified presence feed that was created.
|
V2Presence |
setPresence(PresenceStatus status,
java.lang.Boolean soft)
Set the presence info of the calling user.
|
V2Presence |
setUserPresence(java.lang.Long userId,
PresenceStatus status,
java.lang.Boolean soft)
Set the presence state of a another user.
|
V2Presence getPresence()
PresenceService.getPresence()
java.util.List<V2Presence> listPresences(@Nullable java.lang.Long lastUserId, @Nullable java.lang.Integer limit)
PresenceService.listPresences(Long, Integer)
lastUserId
- Last user ID retrieved, used for paging. If provided, results skip users with IDs less than
this parameter.limit
- Maximum number of records to return. The maximum supported value is 5000.V2Presence getUserPresence(@Nonnull java.lang.Long userId, @Nullable java.lang.Boolean local)
PresenceService.getUserPresence(Long, Boolean)
userId
- User Idlocal
- If true then Perform a local query and set the presence to OFFLINE for users who are not local to
the calling user’s pod. If false or absent then query the presence of all local and external users
who are connected to the calling user.void externalPresenceInterest(@Nonnull java.util.List<java.lang.Long> userIds)
PresenceService.externalPresenceInterest(List)
userIds
- List of user ids to be registered.V2Presence setPresence(@Nonnull PresenceStatus status, @Nullable java.lang.Boolean soft)
PresenceService.setPresence(PresenceStatus, Boolean)
status
- The new presence state for the user.
Possible values are AVAILABLE, BUSY, AWAY, ON_THE_PHONE, BE_RIGHT_BACK, IN_A_MEETING, OUT_OF_OFFICE, OFF_WORK.soft
- If true, the user's current status is taken into consideration. If the user is currently OFFLINE,
the user's presence will still be OFFLINE, but the new presence will take effect when the
user comes online. If the user is currently online, the user's activity state will be
applied to the presence if applicable. (e.g. if you are setting their presence to AVAILABLE,
but the user is currently idle, their status will be represented as AWAY)java.lang.String createPresenceFeed()
PresenceService.createPresenceFeed()
java.util.List<V2Presence> readPresenceFeed(@Nonnull java.lang.String feedId)
PresenceService.readPresenceFeed(String)
feedId
- The presence feed id to be read.java.lang.String deletePresenceFeed(@Nonnull java.lang.String feedId)
PresenceService.deletePresenceFeed(String)
feedId
- The presence feed id to be deleted.V2Presence setUserPresence(@Nonnull java.lang.Long userId, @Nonnull PresenceStatus status, @Nullable java.lang.Boolean soft)
PresenceService.setUserPresence(Long, PresenceStatus, Boolean)
userId
- The id of the specified user.status
- Presence state to set.
Possible values are AVAILABLE, BUSY, AWAY, ON_THE_PHONE, BE_RIGHT_BACK, IN_A_MEETING, OUT_OF_OFFICE, OFF_WORK.soft
- If true, the user's current status is taken into consideration. If the user is currently OFFLINE,
the user's presence will still be OFFLINE, but the new presence will take effect when the
user comes online. If the user is currently online, the user's activity state will be
applied to the presence if applicable. (e.g. if you are setting their presence to AVAILABLE,
but the user is currently idle, their status will be represented as AWAY)