Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import time
- import os
- import logging
- import requests
- logger = logging.getLogger()
- logger.setLevel(logging.DEBUG)
- def lambda_handler(event, context):
- os.environ["TZ"] = "America/New_York"
- time.tzset()
- logger.debug("event.bot.name={}" + event['bot']['name'])
- return dispatch(event)
- def dispatch(intent_request):
- intent_name = intent_request['currentIntent']['name']
- if intent_name == 'AddToCartIntent':
- return get_cart(intent_request)
- if intent_name == 'SearchProductIntent':
- return searchProductIntent(intent_request)
- def get_cart(intent_request):
- slots = intent_request['currentIntent']['slots']
- brand = intent_request['currentIntent']['slots']['brand']
- model = intent_request['currentIntent']['slots']['model']
- quantity = intent_request['currentIntent']['slots']['quantity']
- r = requests.get("http://xx.xxx.xx.xx:xxx/products")
- result = r.json()
- logger.debug("result")
- logger.debug(result)
- session_attributes = {}
- product = intent_request.sessionAttributes.product;
- return close(
- session_attributes,
- 'Fulfilled', {
- 'contentType': 'PlainText',
- "content": 'brand =' + brand + ' model =' + model
- }
- )
- def searchProductIntent(intent_request):
- slots = intent_request['currentIntent']['slots']
- item = intent_request['currentIntent']['slots']['item']
- logger.debug("item")
- logger.debug(item)
- intent_request.sessionAttributes = {
- "product": item
- }
- return close(
- session_attributes,
- 'Fulfilled', {
- 'contentType': 'PlainText',
- "content": 'Sure , I will help you with it. Please select the brand you are looking for'
- }
- )
- def close(session_attributes, fulfillment_state, message):
- response = {
- 'sessionAttributes': session_attributes,
- 'dialogAction': {
- 'type': 'Close',
- 'fulfillmentState': fulfillment_state,
- 'message': message
- }
- }
- return response;
Add Comment
Please, Sign In to add comment