import os import uuid from flask import Flask from flask import jsonify from flask import request from flask_cors import CORS, cross_origin from flask_httpauth import HTTPTokenAuth from src.workers.SpeechToText import SpeechToText app = Flask(__name__) cors = CORS(app) app.config['CORS_HEADERS'] = 'Content-Type' auth = HTTPTokenAuth(scheme='Bearer') secret_token = "97e36f7e-340e-4c02-b329-9415faee38c3" @auth.verify_token def verify_token(token): return token == secret_token @app.route('/send-email', methods=['POST']) @auth.login_required @cross_origin() def send_email(): data_in_json = request.get_json() print(data_in_json) return '', 204 @app.route('/', methods=['POST']) @auth.login_required @cross_origin() def post(): file_name = str(uuid.uuid4()) + ".wav" with open(file_name, "wb") as vid: vid.write(request.data) speech_to_text = SpeechToText() result = speech_to_text.to_text(file_name) app.logger.info(result) try: os.remove(file_name) except OSError: app.logger.info(OSError) return jsonify(result) if __name__ == '__main__': app.run(host='0.0.0.0', port=8000, debug=False)