updates
This commit is contained in:
@@ -449,7 +449,7 @@ class MatrixMonitor:
|
||||
# Trigger wake if rate limit allows
|
||||
await self._maybe_trigger_wake()
|
||||
else:
|
||||
logger.warning(f"Failed to download/compress image: {event.body}")
|
||||
logger.warning(f"Image rejected (too large or download failed): {event.body}")
|
||||
|
||||
except Exception as e:
|
||||
logger.error(f"Error processing image: {e}")
|
||||
@@ -596,7 +596,19 @@ class MatrixMonitor:
|
||||
buffer = BytesIO()
|
||||
final_img = img.resize((800, 600), Image.Resampling.LANCZOS)
|
||||
final_img.save(buffer, format='JPEG', quality=50, optimize=True)
|
||||
return buffer.getvalue()
|
||||
final_data = buffer.getvalue()
|
||||
|
||||
# Final size validation - reject if still too large
|
||||
final_base64 = base64.b64encode(final_data)
|
||||
final_size_mb = len(final_base64) / (1024 * 1024)
|
||||
if final_size_mb > target_size_mb:
|
||||
logger.error(
|
||||
f"Image still too large after all compression attempts: "
|
||||
f"{final_size_mb:.2f}MB base64 (limit: {target_size_mb}MB)"
|
||||
)
|
||||
return None
|
||||
|
||||
return final_data
|
||||
|
||||
except Exception as e:
|
||||
logger.error(f"Compression failed: {e}")
|
||||
|
||||
Reference in New Issue
Block a user