Does Bixby cache the requests on server?

Viewed 349

In my application all the utterances from Bixby are redirected to an action which makes an api call. This api call returns the response to Bixby for the user utterance. Recently I observed that if the user says the following: -

user says: - Add xyz to my cart
api response: - Would you like 2 of those?
user says: - Yes
api response: - Would you like to checkout?
user says: - Yes

Ideally now the request should come to my api and the user should be shown the checkout result page, but instead Bixby shows the user cached response and is shown the below response again: -

api response: - Would you like to checkout?

and the loop continues indefinitely. I wanted to know if this behaviour is expected? Is there a way we can skip the caching and send the request to the api endpoint to respond?

2 Answers

In addition to cacheTime provided by the client, the Server can sometimes provide additional directives (max-age and no-store or no-cache) in the Cache-Control header. When this occurs, this is what Bixby does:

  1. no-cache or no-store: Bixby will not cache anything. This will override the cacheTime variable provided by client.
  2. time of response + max-age < current time: Remove response from cache (even if client requested a longer cacheTime)
  3. time of response + cacheTime < current time: Remove response from cache (even if response provided a longer max-age)
Related