TTs whisper
This commit is contained in:
53
backend/src/controllers/motor.controller.ts
Normal file
53
backend/src/controllers/motor.controller.ts
Normal file
@@ -0,0 +1,53 @@
|
||||
import { Router } from 'express';
|
||||
import multer from 'multer';
|
||||
import { raspiService } from '../services/raspi.service.js';
|
||||
|
||||
const router = Router();
|
||||
|
||||
// Multer config - store in memory for proxying to RasPi
|
||||
const upload = multer({ storage: multer.memoryStorage() });
|
||||
|
||||
router.post('/step/forward', async (_req, res) => {
|
||||
try {
|
||||
const result = await raspiService.motorStepForward();
|
||||
res.json(result);
|
||||
} catch (err: unknown) {
|
||||
const message = err instanceof Error ? err.message : 'Unknown error';
|
||||
res.status(500).json({ error: `Motor step forward failed: ${message}` });
|
||||
}
|
||||
});
|
||||
|
||||
router.post('/step/backward', async (_req, res) => {
|
||||
try {
|
||||
const result = await raspiService.motorStepBackward();
|
||||
res.json(result);
|
||||
} catch (err: unknown) {
|
||||
const message = err instanceof Error ? err.message : 'Unknown error';
|
||||
res.status(500).json({ error: `Motor step backward failed: ${message}` });
|
||||
}
|
||||
});
|
||||
|
||||
router.post('/stop', async (_req, res) => {
|
||||
try {
|
||||
const result = await raspiService.motorStop();
|
||||
res.json(result);
|
||||
} catch (err: unknown) {
|
||||
const message = err instanceof Error ? err.message : 'Unknown error';
|
||||
res.status(500).json({ error: `Motor stop failed: ${message}` });
|
||||
}
|
||||
});
|
||||
|
||||
router.post('/upload', upload.single('file'), async (req, res) => {
|
||||
try {
|
||||
if (!req.file) {
|
||||
return res.status(400).json({ error: 'No audio file provided' });
|
||||
}
|
||||
const result = await raspiService.uploadAudio(req.file.buffer, req.file.originalname);
|
||||
res.json(result);
|
||||
} catch (err: unknown) {
|
||||
const message = err instanceof Error ? err.message : 'Unknown error';
|
||||
res.status(500).json({ error: `Audio upload failed: ${message}` });
|
||||
}
|
||||
});
|
||||
|
||||
export default router;
|
||||
Reference in New Issue
Block a user