addFeedback method
Add user feedback with rating and message
rating - User rating (e.g., "1-5", "good", "bad")
message - Feedback message from user
image - Optional image attachment
date - Optional timestamp (defaults to current time)
Implementation
Future<void> addFeedback(String rating, String message,
[String? image, int? date]) async {
final hub = _hub;
if (!_isInitialized || hub == null) {
ObslyLogger.warn('FeedbackController not initialized');
return;
}
try {
final timestamp = date != null
? DateTime.fromMillisecondsSinceEpoch(date, isUtc: true)
: DateTime.now().toUtc();
final feedbackEvent = FeedbackEventBase(
rating: rating,
message: message,
image: image,
timestamp: timestamp,
);
final reservation = hub.reserveEventMetadata();
hub.captureEvent(feedbackEvent, reservation);
ObslyLogger.debug(
'Feedback added: rating=$rating, message length=${message.length}');
} catch (e, stackTrace) {
ObslyLogger.error('Error adding feedback: $e', e, stackTrace);
}
}