lokesh341 commited on
Commit
1aa8118
·
verified ·
1 Parent(s): 5a12a62

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +71 -97
app.py CHANGED
@@ -1,6 +1,6 @@
1
 
2
  import torch
3
- from flask import Flask, render_template, request, jsonify
4
  import json
5
  import os
6
  from transformers import pipeline
@@ -13,115 +13,89 @@ from waitress import serve
13
  from simple_salesforce import Salesforce
14
  import requests
15
 
 
16
  app = Flask(__name__)
 
17
 
18
- device = "cuda" if torch.cuda.is_available() else "cpu"
19
- config = AutoConfig.from_pretrained("openai/whisper-small")
20
- config.update({"timeout": 60})
21
-
22
- def generate_audio_prompt(text, filename):
23
- try:
24
- tts = gTTS(text)
25
- tts.save(os.path.join("static", filename))
26
- except gtts.tts.gTTSError as e:
27
- print(f"Error: {e}")
28
- time.sleep(5)
29
- generate_audio_prompt(text, filename)
30
-
31
- prompts = {
32
- "welcome": "Welcome to Biryani Hub.",
33
- "ask_name": "Tell me your name.",
34
- "ask_email": "Please provide your email address.",
35
- "thank_you": "Thank you for registration."
36
- }
37
-
38
- for key, text in prompts.items():
39
- generate_audio_prompt(text, f"{key}.mp3")
40
-
41
  try:
42
  print("Attempting to connect to Salesforce...")
43
- sf = Salesforce(username='diggavalli98@gmail.com', password='Sati@1020', security_token='sSSjyhInIsUohKpG8sHzty2q')
44
- print("Connected to Salesforce successfully!")
 
 
45
  except Exception as e:
46
- print(f"Failed to connect to Salesforce: {str(e)}")
47
-
48
- @app.route("/")
49
- def index():
50
- return render_template("index.html")
51
-
52
- @app.route("/dashboard")
53
- def dashboard():
54
- return render_template("dashboard.html")
55
-
56
- @app.route("/menu")
57
- def menu():
58
- menu_items = [
59
- {"id": 1, "name": "Chicken Biryani", "price": 250},
60
- {"id": 2, "name": "Mutton Biryani", "price": 350},
61
- {"id": 3, "name": "Veg Biryani", "price": 200},
62
- {"id": 4, "name": "Paneer Butter Masala", "price": 180},
63
- {"id": 5, "name": "Butter Naan", "price": 50}
64
- ]
65
- return render_template("menu_page.html", menu_items=menu_items)
66
-
67
- @app.route("/cart")
68
- def cart():
69
- return render_template("cart.html")
70
 
71
- @app.route("/order")
72
- def order():
73
- return render_template("order.html")
 
 
 
 
74
 
75
- @app.route("/final")
76
- def final():
77
- return render_template("final.html")
78
 
79
- @app.route("/register", methods=["GET", "POST"])
80
- def register():
81
- if request.method == "POST":
82
- data = request.form
83
- name = data.get('name')
84
- email = data.get('email')
85
- phone = data.get('phone')
86
- password = data.get('password')
 
 
 
 
 
 
 
 
87
 
88
- if not name or not email or not phone or not password:
89
- return jsonify({'error': 'Missing required fields'}), 400
90
 
91
- try:
92
- customer_register = sf.Customer_Login__c.create({
93
- 'Name': name,
94
- 'Email__c': email,
95
- 'Phone_Number__c': phone,
96
- 'Password__c': password
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
97
  })
98
- return render_template("register_success.html", success=True)
99
- except Exception as e:
100
- return render_template("register.html", error=str(e))
101
-
102
- return render_template("register.html")
103
-
104
- @app.route("/login", methods=["GET", "POST"])
105
- def login():
106
- if request.method == "POST":
107
- data = request.form
108
- email = data.get('email')
109
- password = data.get('password')
110
 
111
- if not email or not password:
112
- return render_template("login.html", error="Missing email or password")
 
113
 
114
- try:
115
- query = f"SELECT Id FROM Customer_Login__c WHERE Email__c = '{email}' AND Password__c = '{password}'"
116
- result = sf.query(query)
117
- if result['totalSize'] > 0:
118
- return render_template("dashboard.html", success=True)
119
- else:
120
- return render_template("login.html", error="Invalid credentials")
121
- except Exception as e:
122
- return render_template("login.html", error=str(e))
123
-
124
- return render_template("login.html")
125
 
 
126
  if __name__ == "__main__":
127
  serve(app, host="0.0.0.0", port=7860)
 
1
 
2
  import torch
3
+ from flask import Flask, render_template, request, jsonify, redirect, session
4
  import json
5
  import os
6
  from transformers import pipeline
 
13
  from simple_salesforce import Salesforce
14
  import requests
15
 
16
+ # Initialize Flask app
17
  app = Flask(__name__)
18
+ app.secret_key = os.urandom(24) # For session handling
19
 
20
+ # Salesforce Connection Setup
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  try:
22
  print("Attempting to connect to Salesforce...")
23
+ sf = Salesforce(username='diggavalli98@gmail.com',
24
+ password='Sati@1020',
25
+ security_token='sSSjyhInIsUohKpG8sHzty2q')
26
+ print("✅ Connected to Salesforce successfully!")
27
  except Exception as e:
28
+ print(f"Failed to connect to Salesforce: {str(e)}")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
 
30
+ # ✅ REGISTER API: Create a new Customer in Salesforce
31
+ @app.route("/register", methods=["POST"])
32
+ def register():
33
+ data = request.json
34
+ name = data.get("name")
35
+ email = data.get("email")
36
+ phone_number = data.get("phone")
37
 
38
+ if not name or not email or not phone_number:
39
+ return jsonify({"error": "Missing required fields"}), 400
 
40
 
41
+ try:
42
+ new_customer = sf.Customer_Login__c.create({
43
+ 'Name': name,
44
+ 'Email__c': email,
45
+ 'Phone_Number__c': phone_number
46
+ })
47
+ return jsonify({"success": True, "message": "Registration successful", "customer_id": new_customer["id"]})
48
+ except Exception as e:
49
+ return jsonify({"error": f"Failed to register: {str(e)}"}), 500
50
+
51
+ # ✅ LOGIN API: Validate user credentials
52
+ @app.route("/login", methods=["POST"])
53
+ def login():
54
+ data = request.json
55
+ email = data.get("email")
56
+ phone_number = data.get("phone")
57
 
58
+ if not email or not phone_number:
59
+ return jsonify({"error": "Missing email or phone"}), 400
60
 
61
+ try:
62
+ query = f"SELECT Id, Name FROM Customer_Login__c WHERE Email__c = '{email}' AND Phone_Number__c = '{phone_number}'"
63
+ result = sf.query(query)
64
+
65
+ if result["totalSize"] > 0:
66
+ user = result["records"][0]
67
+ session["customer_id"] = user["Id"] # Store in session
68
+ return jsonify({"success": True, "message": "Login successful", "customer_id": user["Id"], "name": user["Name"]})
69
+ else:
70
+ return jsonify({"error": "Invalid login credentials"}), 401
71
+ except Exception as e:
72
+ return jsonify({"error": f"Login failed: {str(e)}"}), 500
73
+
74
+ # ✅ MENU API: Fetch menu items from Salesforce
75
+ @app.route("/menu", methods=["GET"])
76
+ def get_menu():
77
+ try:
78
+ query = "SELECT Name, Price__c, Ingredients__c, Category__c FROM Menu_Item__c"
79
+ result = sf.query(query)
80
+
81
+ menu_items = []
82
+ for item in result["records"]:
83
+ menu_items.append({
84
+ "name": item["Name"],
85
+ "price": item["Price__c"],
86
+ "ingredients": item["Ingredients__c"],
87
+ "category": item["Category__c"]
88
  })
 
 
 
 
 
 
 
 
 
 
 
 
89
 
90
+ return jsonify({"success": True, "menu": menu_items})
91
+ except Exception as e:
92
+ return jsonify({"error": f"Failed to fetch menu: {str(e)}"}), 500
93
 
94
+ # ✅ DASHBOARD ROUTE
95
+ @app.route("/dashboard", methods=["GET"])
96
+ def dashboard():
97
+ return render_template("dashboard.html")
 
 
 
 
 
 
 
98
 
99
+ # ✅ START PRODUCTION SERVER
100
  if __name__ == "__main__":
101
  serve(app, host="0.0.0.0", port=7860)