flutter_chat_io 2.2.0 copy "flutter_chat_io: ^2.2.0" to clipboard
flutter_chat_io: ^2.2.0 copied to clipboard

Live customer support for Flutter apps with Slack integration. Users chat in-app, your team responds in Slack.

Changelog #

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

2.2.0 - 2024-12-06 #

Added #

  • Web platform support - Package now fully supports Flutter Web
    • WebSocket connections work across all platforms
    • Image upload works on web using cross-platform file handling
    • Device/browser info detection for web browsers

Changed #

  • Replaced IOWebSocketChannel with platform-agnostic WebSocketChannel.connect()
  • Replaced dart:io File with XFile from image_picker for cross-platform compatibility
  • File uploads now use readAsBytes() instead of file paths (works on web)
  • Device info detection now supports web browsers via device_info_plus

Dependencies #

  • Added http_parser: ^4.0.0 for multipart upload content type handling

Platforms #

  • iOS
  • Android
  • Web (new)

2.1.0 - 2024-12-04 #

Added #

  • clientId parameter in FlutterChatIO.initialize() method
    • Both clientId and clientToken are now required for initialization
    • Get both credentials from the FlutterChatIO dashboard
  • clientId getter to access the configured client ID
  • Russian (ru) localization support

Changed #

  • isInitialized now checks for both clientId and clientToken
  • Converted FlutterChatIOLocalizations from class to enhanced enum for better code quality
  • Updated README documentation with correct version references
  • Improved CHANGELOG with accurate API documentation

2.0.0 - 2024-12-04 #

Breaking Changes #

  • Removed location and deviceInfo parameters from setUserInfo() method
    • Device information is now automatically detected by the SDK
    • Use customData parameter instead for any custom metadata

Added #

  • Custom user data support via customData parameter in FlutterChatIO.setUserInfo()
    • Attach any key-value metadata to users (subscription tier, account type, etc.)
    • Data is sent with each message and displayed in Slack user info card
    • Accessible via FlutterChatIO.userData getter
    • Cleared automatically when calling FlutterChatIO.reset()
  • Automatic device information detection - SDK now auto-detects device details (iOS/Android)
  • Auto-localization support for 5 languages: English, Chinese, Spanish, Arabic, and Hindi
  • FlutterChatIOTheme.localized() factory constructor for automatic text translation based on locale
  • FlutterChatIOLocalizations class with pre-defined translations for all supported languages
  • RTL (Right-to-Left) support for Arabic language
  • New localizable theme properties:
    • statusOnline - Status message when chat is online
    • statusOffline - Status message when chat is offline
    • statusConnecting - Status message when connecting
    • currentUserName - Display name for current user (default: "You")
    • systemUserName - Display name for system messages (default: "System")
    • errorNotConnected - Error message when not connected
    • errorUploadFailed - Error message when upload fails
    • errorLoadingHistory - Error message when loading history fails

Changed #

  • App bar now always shows status subtitle (Online/Offline/Connecting) with localized text
  • Error messages now use localizable theme properties instead of hardcoded strings

Removed #

  • offlineFormBlockedMessage property (input field is now hidden instead of showing a message)

1.1.0 - 2024-12-01 #

Fixed #

  • Anonymous user ID now persists for the app session instead of regenerating on every access
  • Message IDs now use UUID instead of predictable random integers
  • Email validation now properly validates format (was accepting invalid emails like @.)
  • Timestamp parsing for WebSocket messages now correctly uses milliseconds

Improved #

  • Reconnection now uses exponential backoff (2s → 4s → 8s → 16s → 30s max) instead of fixed 2s delay
  • WebSocket connection now includes 30-second ping interval for detecting stale connections
  • HTTP history loading now uses http package consistently (fixes potential resource leak)
  • Extracted content-type detection to reusable helper method

1.0.0 - 2024-11-28 #

Added #

  • Initial release of FlutterChatIO SDK
  • FlutterChatIOChat widget for displaying the chat interface
  • FlutterChatIO class for SDK initialization and configuration
  • FlutterChatIOTheme class for comprehensive theming
  • Real-time messaging via WebSocket
  • Automatic reconnection on connection loss
  • Message history loading from HTTP API
  • Image attachment support with S3 upload
  • Offline contact form for lead capture
  • Connection status indicators (online, offline, connecting)
  • Full documentation and dartdoc comments
  • Example application

Features #

  • Customizable app bar (color, title, subtitle)
  • Customizable message bubbles (colors, text styles)
  • Customizable status indicators (online, offline, connecting colors)
  • Customizable input field (colors, keyboard appearance)
  • Customizable empty state (title, subtitle, icon)
  • Customizable offline form (all text content)
  • Support for dark and light themes
  • Localization support through text customization
  • Self-hosted deployment support with custom endpoints
  • User identification and session management
  • Device info integration support

Platforms #

  • iOS
  • Android
8
likes
140
points
419
downloads

Publisher

unverified uploader

Weekly Downloads

Live customer support for Flutter apps with Slack integration. Users chat in-app, your team responds in Slack.

Homepage

Topics

#chat #customer-support #slack #live-chat #helpdesk

Documentation

Documentation
API reference

License

BSD-3-Clause (license)

Dependencies

device_info_plus, flutter, flutter_chat_core, flutter_chat_ui, http, http_parser, image_picker, uuid, web_socket_channel

More

Packages that depend on flutter_chat_io