zenjoul80 commited on
Commit
b3ae416
·
verified ·
1 Parent(s): 58a3e75

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -12
app.py CHANGED
@@ -1,5 +1,5 @@
1
- from gevent import monkey
2
- monkey.patch_all()
3
 
4
  import os
5
  import requests
@@ -7,10 +7,10 @@ from flask import Flask, render_template, request, session, send_from_directory,
7
  from flask_socketio import SocketIO, emit
8
 
9
  app = Flask(__name__)
10
- app.config['SECRET_KEY'] = 'docker_suno_2026'
11
- socketio = SocketIO(app, cors_allowed_origins="*", async_mode='gevent')
 
12
 
13
- # Use an absolute path for Docker reliability
14
  MUSIC_FOLDER = os.path.join(os.getcwd(), 'saved_music')
15
  if not os.path.exists(MUSIC_FOLDER):
16
  os.makedirs(MUSIC_FOLDER, exist_ok=True)
@@ -24,14 +24,13 @@ def index():
24
  @app.route('/callback', methods=['POST'])
25
  def callback():
26
  data = request.json
27
- if not data: return jsonify({"status": "error"}), 400
28
 
29
  task_id = data.get('taskId') or data.get('task_id')
30
  audio_url = data.get('audio_url')
31
 
32
  if audio_url and task_id:
33
- filename = f"{task_id}.mp3"
34
- filepath = os.path.join(MUSIC_FOLDER, filename)
35
  try:
36
  r = requests.get(audio_url, timeout=30)
37
  with open(filepath, 'wb') as f:
@@ -39,8 +38,8 @@ def callback():
39
 
40
  if task_id in task_to_sid:
41
  socketio.emit('status', {
42
- 'msg': ' Success! Saved to Docker storage.',
43
- 'file_name': filename,
44
  'done': True
45
  }, room=task_to_sid[task_id])
46
  except Exception as e:
@@ -82,5 +81,4 @@ def handle_gen(payload):
82
  emit('status', {'msg': f'❌ Connection Error: {str(e)}'})
83
 
84
  if __name__ == '__main__':
85
- socketio.run(app, host="0.0.0.0", port=7860)
86
-
 
1
+ import eventlet
2
+ eventlet.monkey_patch()
3
 
4
  import os
5
  import requests
 
7
  from flask_socketio import SocketIO, emit
8
 
9
  app = Flask(__name__)
10
+ app.config['SECRET_KEY'] = 'suno_docker_final'
11
+ # async_mode='eventlet' is critical here
12
+ socketio = SocketIO(app, cors_allowed_origins="*", async_mode='eventlet')
13
 
 
14
  MUSIC_FOLDER = os.path.join(os.getcwd(), 'saved_music')
15
  if not os.path.exists(MUSIC_FOLDER):
16
  os.makedirs(MUSIC_FOLDER, exist_ok=True)
 
24
  @app.route('/callback', methods=['POST'])
25
  def callback():
26
  data = request.json
27
+ if not data: return jsonify({"status": "no_data"}), 400
28
 
29
  task_id = data.get('taskId') or data.get('task_id')
30
  audio_url = data.get('audio_url')
31
 
32
  if audio_url and task_id:
33
+ filepath = os.path.join(MUSIC_FOLDER, f"{task_id}.mp3")
 
34
  try:
35
  r = requests.get(audio_url, timeout=30)
36
  with open(filepath, 'wb') as f:
 
38
 
39
  if task_id in task_to_sid:
40
  socketio.emit('status', {
41
+ 'msg': ' Saved to Docker storage!',
42
+ 'file_name': f"{task_id}.mp3",
43
  'done': True
44
  }, room=task_to_sid[task_id])
45
  except Exception as e:
 
81
  emit('status', {'msg': f'❌ Connection Error: {str(e)}'})
82
 
83
  if __name__ == '__main__':
84
+ socketio.run(app, host="0.0.0.0", port=7860)