in dialogflow-prebuilt-agents/cloud-functions/retail_assistant/main.py [0:0]
def get_reviews():
"""retrieve product's reviews (Currently using DUMMY reviews)"""
app.logger.warning("REACHED /GET_REVIEWS")
request_json = request.get_json(silent=False)
app.logger.warning("REQUEST: %s", request_json)
# Eventually this should look up reviews based on the product ID provided.
shown_products = request_json["shown_products"]
reviews_per_product = len(REVIEWS) // len(shown_products)
app.logger.warning("reviews_per_product: %s", reviews_per_product)
# splitting the reviews for the shown products
reviews = []
for idx, product in enumerate(shown_products):
for r in REVIEWS[
idx * reviews_per_product : (idx + 1) * reviews_per_product
]:
review = r.copy()
review["product_id"] = product["id"]
review["title"] = product["title"]
review["desc"] = review["desc"].replace("${title}", product["title"])
reviews.append(review)
app.logger.warning("REVIEWS: %s", reviews)
# Transforming reviews into a customer template format to display in UI
response = generate_custom_template(reviews, template="review-template")
response["reviews"] = reviews
return flask.jsonify(response)