Я создал чат-бота lex. Его цель - поднять тикет. После получения необходимых параметров от пользователя чат-бот отправляет электронное письмо соответствующей команде, чтобы поднять тикет. Я завершил до этого. rasied, я получу электронное письмо в Outlook с номером билета от команды, которая подняла тикет. Теперь я хочу, чтобы чат-бот получил номер тикета и передал его пользователю в виде сообщения для заполнения. Как извлечь номер тикета из отправить по электронной почте и сохранить в лямбде? Есть ли другой способ сделать это?
Пример разговора
Пользователь: Привет Чат-бот: Введите свой идентификатор? Пользователь: 1235 Чат-бот: введите свое описание? Пользователь: ab c Чат-бот: влияние? Пользователь: Низкий Чат-бот: Эй, ваш билет поднят (сообщение о заполнении). Также ваш номер билета t1234
Ниже приведен код ламы:
import json
import logging
import re
import http.client
import mimetypes
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
def send_email(empidemployee,basicinfo,latestdesc,latestservice,latestimpact,latesturgency):
conn = http.client.HTTPSConnection("mail.us-east-1.aws.cloud.xxx")
payload = {
"from":"xxx@yyy.com",
"to": "xxx@yyy.com",
"subject": "Incident","textbody": "body",
"htmlbody": "empidemployee,latestimpact,latestservice,latesturgency,latestdesc,basicinfo"
}
print(payload)
headers = {
'Content-Type': 'application/json'
}
data=json.dumps(payload)
print(data)
conn.request("POST", "", data, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
print("done")
def close():
val= {
"dialogAction":
{
"fulfillmentState":"Fulfilled",
"type":"Close",
"message":
{
"contentType":"PlainText",
"content":"Hey your ticket has been raiised"
},
}
}
print(val)
return val
def lambda_handler(event, context):
slots = event['currentIntent']['slots']
empidemployee= event['currentIntent']["slots"]["empidemployee"]
latestdesc= event['currentIntent']["slots"]["latestdesc"]
latestservice= event['currentIntent']["slots"]["latestservice"]
latestimpactvalue= event['currentIntent']["slots"]["latestimpactvalue"]
latesturgency= event['currentIntent']["slots"]["latesturgency"]
basicinfo=event['currentIntent']["slots"]["basicinfo"]
val=close()
return val