/
lambda_function
58 lines (44 loc) · 1.75 KB
/
lambda_function
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import json
def prepareResponse(event, msgText):
response = {
"sessionState": {
"dialogAction": {
"type": "Close"
},
"intent": {
"name": event['sessionState']['intent']['name'],
"state": "Fulfilled"
}
},
"messages": [
{
"contentType": "PlainText",
"content": msgText
}
]
}
return response
def cancelPizzaOrder(event):
# Your order cancelation code here
msgText = "Order has been canceled"
return prepareResponse(event, msgText)
def createPizzaOrder(event):
firstName = event['sessionState']['intent']['slots']['name']['value']['interpretedValue']
pizzaFlavor = event['sessionState']['intent']['slots']['flavor']['value']['interpretedValue']
pizzaSize = event['sessionState']['intent']['slots']['size']['value']['interpretedValue']
print(firstName, pizzaFlavor, pizzaSize)
discount = event['sessionState']['sessionAttributes']['discount']
#print('Discount: ', discount)
# Your custom order creation code here.
msgText = "Your Order for, " + str(pizzaSize) + " " + str(pizzaFlavor) + " Pizza has been placed with Order#: 342342"
return prepareResponse(event, msgText)
def lambda_handler(event, context):
intentName = event['sessionState']['intent']['name']
response = None
if intentName == 'CreateOrderIntent':
response = createPizzaOrder(event)
elif intentName == 'CancelOrderIntent':
response = cancelPizzaOrder(event)
else:
raise Exception('The intent : ' + intentName + ' is not supported')
return response