Class LiveServerSessionResumptionUpdate.Builder
- Enclosing class:
- LiveServerSessionResumptionUpdate
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract LiveServerSessionResumptionUpdate
build()
lastConsumedClientMessageIndex
(Long lastConsumedClientMessageIndex) Setter for lastConsumedClientMessageIndex.Setter for newHandle.resumable
(boolean resumable) Setter for resumable.
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
newHandle
Setter for newHandle.newHandle: New handle that represents state that can be resumed. Empty if `resumable`=false.
-
resumable
Setter for resumable.resumable: True if session can be resumed at this point. It might be not possible to resume session at some points. In that case we send update empty new_handle and resumable=false. Example of such case could be model executing function calls or just generating. Resuming session (using previous session token) in such state will result in some data loss.
-
lastConsumedClientMessageIndex
public abstract LiveServerSessionResumptionUpdate.Builder lastConsumedClientMessageIndex(Long lastConsumedClientMessageIndex) Setter for lastConsumedClientMessageIndex.lastConsumedClientMessageIndex: Index of last message sent by client that is included in state represented by this SessionResumptionToken. Only sent when `SessionResumptionConfig.transparent` is set.
Presence of this index allows users to transparently reconnect and avoid issue of losing some part of realtime audio input/video. If client wishes to temporarily disconnect (for example as result of receiving GoAway) they can do it without losing state by buffering messages sent since last `SessionResmumptionTokenUpdate`. This field will enable them to limit buffering (avoid keeping all requests in RAM).
Note: This should not be used for when resuming a session at some time later -- in those cases partial audio and video frames arelikely not needed.
-
build
-