FAQs
Sogo App
Complete FAQ & How-To Guide
๐
Getting Started
Follow these steps to create your Sogo account:
- Open the app and tap "Agree and Continue"
- Select your country from the dropdown (auto-detected by IP)
- Enter your phone number with country code
- Check the box to agree to Terms & Conditions
- Tap Continue to receive your OTP
๐ก Tip: The app defaults to Nigeria (+234) if automatic detection fails. You can manually select your country by tapping the flag dropdown.
| Platform | Requirement |
|---|---|
| Android | SDK 24+ (Android 7.0+) |
| iOS | iOS 12+ |
| Permissions | Camera, Microphone, Storage, Notifications |
Authentication & OTP
- Enter the 6-digit OTP sent to your phone
- For testing purposes, you can use code:
123456 - Tap Continue to proceed
| Scenario | Next Step |
|---|---|
| Existing User | Automatically logged in and taken to Home screen |
| New User | Taken to Sign Up screen to create profile |
Profile Setup
- Upload Photo (optional): Tap the camera icon on the avatar
- Select image from gallery
- Supported formats: Standard image formats
- Enter First Name (required)
- Enter Last Name (required)
- Enter Email (optional but recommended)
- Must be valid format:
name@domain.com
- Must be valid format:
- Tap Complete Signup
โ Note: The profile photo is optional. A default avatar will be shown if you skip this step.
- Go to Settings tab
- Tap your current profile picture
- Select "Change Photo"
- Choose from Gallery or Camera
- Crop and confirm
The photo will upload automatically with a progress indicator.
Chat & Messaging
- Go to Chats tab
- Tap the floating message button (bottom right)
- Select a contact from your list
| Feature | Description |
|---|---|
| Text Messages | Send instant text messages with typing indicators |
| Media Sharing | Images, Videos, Files, Voice Messages |
| Reactions | React with emojis (๐ โค๏ธ ๐ ๐ฅ ๐ข) |
| Reply | Reply to specific messages |
| Edit | Edit sent messages within 5 minutes |
| Delete | Delete messages for everyone |
| Read Receipts | See when messages are delivered and read |
Long-press any conversation to access:
- Delete Conversation - Remove entire chat history
- Clear Messages - Keep chat but remove all messages
- Search - Find specific messages
โ ๏ธ Warning: Deleting a conversation cannot be undone. All messages will be permanently removed.
Voice & Video Calls
The app supports 1-to-1 calls and group calls via:
- FCM Push Notifications - Background/terminated state
- Pusher - Real-time events when app is open
- CallKit - Native call UI integration
When you receive a call:
- Native call screen appears with caller name
- Accept: Routes to appropriate call screen
- Decline: Dismisses the call
- Timeout: Call automatically ends after 30 seconds
| Type | Description | Icon |
|---|---|---|
audio |
Voice-only call | ๐๏ธ |
video |
Video call with camera | ๐น |
group_call |
Multi-participant group call | ๐ฅ |
During a call, you can:
- Mute/Unmute - Toggle microphone
- Camera On/Off - Toggle video (video calls)
- Flip Camera - Switch front/rear camera
- Speaker - Toggle speakerphone
- Screenshot - Capture call moment (if enabled)
- Screen Protection - Block/allow screen capture
- Grid View - Toggle between speaker and grid layout
- Participants - View all call participants
๐ก Tip: Tap the video area to show/hide controls. Controls auto-hide after 4 seconds of inactivity.
Groups
- Go to Chats or Groups tab
- Tap the โฎ menu (three dots)
- Select "New Group" or "Create New Group"
- Enter group name and description
- Set privacy (Public/Private)
- Add members from your contacts
As an Admin, you can:
- Add Members - Tap "Add" button in group settings
- Remove Members - Tap member โ Remove
- Make Admin - Promote members to admin role
- Remove Admin - Demote admins to regular members
Member Roles:
| Role | Permissions |
|---|---|
| Admin | Add/remove members, delete group, manage settings |
| Member | Send messages, view media, leave group |
- Open the group chat
- Tap the โฎ menu (three dots)
- Select "Group Voice Call" or "Group Video Call"
- Confirm to start the call
- All members will receive a CallKit notification
โ Note: Group calls use LiveKit for high-quality video/audio with up to 50+ participants.
- Open group chat
- Tap group name to open Group Settings
- Tap "Media" quick action button
- Browse through tabs: All, Photos, Videos, Files
Media is organized by type and includes sender information and timestamps.
Status Updates
The StatusUploader class handles status uploads with support for both images and videos:
- Tap "My Status" on the Status tab
- Select "Add Status"
- Choose media type:
- Image - Select from gallery or take photo
- Video - Select from gallery (opens trimmer)
- For videos, trim to desired length first
- Choose if status should be Promoted (highlighted in orange)
- Upload automatically begins
๐ก Technical Details:
// StatusUploader handles:
- Image Picker (gallery/camera)
- MIME type detection (image/video)
- Video trimming flow
- Multipart form-data upload
- Progress tracking
Supported Formats:
| Type | Formats | Max Duration |
|---|---|---|
| Image | JPEG, PNG, GIF, WebP | N/A |
| Video | MP4, MOV, MKV, WebM, AVI | 30 seconds |
- Go to Status tab
- Tap on any contact's status ring
- Statuses auto-advance every 5 seconds (images)
- Videos play full duration
- Tap left/right to navigate between statuses
- Long-press to pause
- Swipe up to see viewers (your own statuses)
- Swipe down to close
๐ก Color Coding:
- โ Green - New status
- โ Orange - Promoted status
- โ Grey - Already viewed
Tap "View My Status" to access your status management screen:
- View Count - See how many people viewed each status
- Delete Single - Long-press a status โ Delete
- Delete All - Long-press first status โ "Delete ALL"
- Select Multiple - Tap to select, then delete batch
Statuses automatically expire after 24 hours.
Settings & Privacy
- Go to Settings
- Tap "Chat Wallpaper"
- Select from available wallpapers:
- Solid Colors
- Gradients
- Patterns
- Custom Image
- Preview and confirm
Go to Settings โ Notifications to configure:
| Type | Options |
|---|---|
| Message Notifications | Sound, Vibration, Popup |
| Group Notifications | Separate settings for groups |
| Call Notifications | Ringtone, Vibration pattern |
| Status Updates | Toggle on/off |
To Logout:
- Go to Settings
- Tap "Logout" at bottom
- Confirm in dialog
- You'll return to Registration screen
Account Options:
- Change Number - Update phone number
- Delete Account - Permanently remove all data
- Privacy Settings - Control visibility
โ ๏ธ Warning: Deleting your account is permanent. All messages, groups, and media will be lost.
Technical Information
| Service | Purpose |
|---|---|
| Firebase Cloud Messaging (FCM) | Push notifications for calls/messages |
| Pusher Channels | Real-time call signaling |
| CallKit (iOS) / ConnectionService (Android) | Native call UI |
| LiveKit | Video/audio calling infrastructure |
| SharedPreferences | Local data storage |
- OTP-based verification - Phone number verification
- Token-based authentication - Secure API access
- FCM token registration - Secure push delivery
- Screen protection - Block screenshots in calls (optional)
- End-to-end encryption - For messages and calls
| Issue | Solution |
|---|---|
| "Please enter a valid code" | Ensure correct 6-digit OTP, check phone number |
| "Please agree to Terms" | Check the agreement checkbox before continuing |
| Call not connecting | Check internet, microphone/camera permissions, FCM token |
| App crashes on startup | Check Firebase initialization, permissions, device compatibility |
| Status upload fails | Check file size (max 50MB), format support, network connection |
| Video trimmer not working | Ensure video is under 30 seconds, supported format |
