Skip to main content

Overview

Viax uses notifications to keep you informed about trip requests, earnings, and important updates. Configure your notification preferences to ensure you never miss an opportunity while avoiding unnecessary interruptions.

Notification Types

Trip Requests

New trip requests from nearby passengers

Trip Updates

Status changes during active trips

Earnings

Payment confirmations and earnings updates

System Alerts

Account updates, document expiration, important messages

Push Notifications

Push notifications appear even when the app is in the background:

Trip Request Notifications

When a passenger requests a trip near you:
// Push notification payload
{
  "type": "new_trip_request",
  "trip_id": "12345",
  "pickup_address": "Calle 72 #10-34",
  "destination_address": "Carrera 15 #85-23",
  "distance_to_pickup": 1.2,
  "estimated_fare": 12500,
  "passenger_rating": 4.8,
  "expires_in": 30
}
Trip requests expire after 30 seconds. Enable sound and vibration to ensure you don’t miss requests.

Notification Actions

Trip request notifications include quick actions:
  • Accept: Accept the trip immediately
  • Decline: Reject this trip request
  • View: Open app to see full details

Sound Alerts

Viax includes audio notifications for critical events:
Custom notification sound for new tripsLocated in: assets/sounds/Features:
  • Distinctive alert tone
  • Repeats 3 times
  • Plays even in silent mode (if configured)
  • Volume adjustable in settings
The trip request sound is different from other notifications so you can instantly recognize new opportunities.

Configuring Sounds

1

Open settings

Go to Settings > Notifications > Sounds
2

Enable trip request sound

Toggle Trip Request Sound on/off
3

Adjust volume

Set notification volume (0-100%)
4

Test sound

Tap Test Sound to preview

Notification Settings

Trip Notifications

  • Push notification
  • Sound alert
  • Vibration
  • Lock screen notification
  • Heads-up notification (Android)
Cannot be disabled (required for driver operation)
  • Passenger confirmed pickup
  • Passenger cancelled
  • Navigation updates
  • Destination approaching
Recommended: Keep enabled
  • New message from passenger
  • Passenger called
  • Passenger shared additional info
Required for good service

Earnings Notifications

  • Trip payment received
  • Weekly payout processed
  • Bonus achieved
  • Referral bonus earned
Customizable: Enable/disable as preferred

System Notifications

  • Document expiring soon (30, 15, 7 days)
  • Document expired
  • Account status changed
  • Profile update required
Important: Keep enabled to stay compliant
  • App updates available
  • New features announced
  • Service area changes
  • Rate changes
Optional: Can be customized

Firebase Cloud Messaging

Viax uses Firebase for push notifications:
// Firebase messaging setup from source
import 'package:firebase_messaging/firebase_messaging.dart';

class NotificationService {
  final FirebaseMessaging _messaging = FirebaseMessaging.instance;
  
  Future<void> initialize() async {
    // Request permission
    await _messaging.requestPermission(
      alert: true,
      badge: true,
      sound: true,
    );
    
    // Get FCM token
    final token = await _messaging.getToken();
    
    // Send token to backend
    await registerDeviceToken(token);
    
    // Handle foreground messages
    FirebaseMessaging.onMessage.listen(_handleForegroundMessage);
    
    // Handle background messages
    FirebaseMessaging.onBackgroundMessage(_backgroundMessageHandler);
  }
}

Notification Permissions

Ensure notifications are enabled:
  1. Open Settings on your device
  2. Go to Apps > Viax
  3. Tap Notifications
  4. Enable All Viax notifications
  5. Allow Override Do Not Disturb for trip requests
Without proper notification permissions, you will not receive trip requests and cannot operate as a driver.

Do Not Disturb Mode

Configure DND to allow critical notifications:

Android

  • Go to Settings > Do Not Disturb
  • Add Viax to priority apps
  • Allow alarms and priority notifications

iOS

  • Go to Settings > Focus > Do Not Disturb
  • Add Viax to allowed apps
  • Enable Time Sensitive Notifications

Local Notifications

For scheduled reminders and offline alerts:
// Local notifications for offline scenarios
import 'package:flutter_local_notifications/flutter_local_notifications.dart';

class LocalNotificationService {
  final FlutterLocalNotificationsPlugin _plugin = 
      FlutterLocalNotificationsPlugin();
  
  Future<void> scheduleDocumentExpiry(
    DateTime expiryDate,
    String documentType,
  ) async {
    // Schedule 30 days before
    await _plugin.zonedSchedule(
      0,
      'Document Expiring Soon',
      'Your $documentType expires in 30 days',
      expiryDate.subtract(Duration(days: 30)),
      platformChannelSpecifics,
      uiLocalNotificationDateInterpretation:
          UILocalNotificationDateInterpretation.absoluteTime,
    );
  }
}

Notification Channels (Android)

Different notification types use different channels:
ChannelPrioritySoundVibrationImportance
Trip RequestsUrgentYesYesHigh
Trip UpdatesHighYesNoHigh
EarningsDefaultNoNoDefault
System AlertsHighYesNoHigh
MarketingLowNoNoLow

Troubleshooting

Check:
  1. Notification permissions enabled
  2. App not in battery saver mode
  3. Internet connection active
  4. You’re online and available
  5. Sound/vibration enabled
Fix:
  • Go to device Settings > Apps > Viax
  • Enable all notification permissions
  • Disable battery optimization for Viax
  • Restart the app
Check:
  1. Device not in silent mode
  2. Notification volume not muted
  3. Sound enabled in Viax settings
  4. Sound file not corrupted
Fix:
  • Increase device volume
  • Test sound in app settings
  • Reinstall app if sound missing
Causes:
  • Poor internet connection
  • Battery saver mode active
  • Background data restricted
  • FCM service issues
Solutions:
  • Check internet connection
  • Disable battery optimization
  • Allow background data
  • Update Google Play Services (Android)

Best Practices

Keep Volume Up

Ensure notification volume is at least 50% when driving

Enable Vibration

Use vibration as backup if sound fails

Test Regularly

Test notifications weekly to ensure they work

Update App

Keep app updated for latest notification features

Next Steps

Accepting Rides

Learn how to respond to trip requests

Availability Status

Manage your online/offline status

Build docs developers (and LLMs) love