from django.http import JsonResponse from django.template import loader import json from prodae import knn_ae as knn_ae from time import gmtime, strftime from chatbot.models import Question, Responce, Question_Responce from importlib import import_module from django.conf import settings SessionStore = import_module(settings.SESSION_ENGINE).SessionStore def ae(request): if request.method == 'POST': jsonData = json.loads(request.body.decode('utf-8')) msg = jsonData["msg"] userId = jsonData["userId"] klass1 = knn_ae.klassifizieren(msg) klass = klass1[0:2] intent1 = klass1[0][0] accurancy1 = klass1[0][1] if len(klass1)>1: intent2 = klass1[1][0] accurancy2 = klass1[1][1] else: intent2 = 'Null' accurancy2 = 'Null' klass = str(klass) intent1 = str(intent1) accurancy1 = str(accurancy1) intent2 = str(intent2) accurancy2 = str(accurancy2) res = knn_ae.antwort(msg, jsonData["userId"]) time = strftime("%Y-%m-%d %H:%M:%S", gmtime()) #s = request.session s = SessionStore() s.save() sess_id = s.session_key print(request.session.session_key) quest = Question(session_id=userId, question_text=msg, publi_date=time) quest.save() resp = Responce(session_id=userId, responce_text=res, publi_date=time) resp.save() qr = Question_Responce(session_id=userId, question_text=msg, intent1=intent1, accurancy1=accurancy1, intent2=intent2, accurancy2=accurancy2, responce_text=res, publi_date=time) qr.save() return JsonResponse({ "desc": "Success", "klass": klass, "intent1": intent1, "accurancy1": accurancy1, "intent2": intent2, "accurancy2": accurancy2, "ques": msg, "res": res, "user": userId, "time": time }) else: return JsonResponse({"desc": "Bad request"}, status=400)