https://github.com/mastersam07/livechat
A livechat plugin for embedding mobile chat window in your mobile application.
https://github.com/mastersam07/livechat
dart dartlng flutter flutter-plugin flutter-plugins package
Last synced: 6 months ago
JSON representation
A livechat plugin for embedding mobile chat window in your mobile application.
- Host: GitHub
- URL: https://github.com/mastersam07/livechat
- Owner: Mastersam07
- License: mit
- Created: 2020-08-26T13:16:40.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-10-05T10:58:59.000Z (9 months ago)
- Last Synced: 2025-01-01T23:46:38.348Z (6 months ago)
- Topics: dart, dartlng, flutter, flutter-plugin, flutter-plugins, package
- Language: Dart
- Homepage:
- Size: 378 KB
- Stars: 12
- Watchers: 5
- Forks: 17
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# 💬 livechat
[](https://codecov.io/gh/Mastersam07/livechat)

[](https://github.com/Mastersam07/livechat/blob/master/LICENSE)
[](https://pub.dartlang.org/packages/livechatt)
[](https://github.com/Mastersam07/livechat/pulls)

A livechat package for embedding mobile chat window in your mobile application.
## 🎖 Installing
```yaml
dependencies:
livechatt: ^1.5.1
```### ⚡️ Import
```dart
import 'package:livechatt/livechatt.dart';
```## 🎮 How To Use
> Get the [Crendentials](https://www.livechat.com) for your LiveChat
### Android
>- Edit AndroidManifest.xml as shown below#### Internet and Storage Access
```xml```
#### ChatWindow
```xml```
### iOS - Manifest
>- Set minimum deployment target of iOS to 11.0>- Edit info.plist as shown below
#### Sending Files From Device Library
```plist
NSPhotoLibraryUsageDescription
This app requires access to the photo library.
NSMicrophoneUsageDescription
This app require access to the microphone.
NSCameraUsageDescription
This app requires access to the camera.
```#### Having issues running on ios?
Add the below to your podfile```podfile
post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
target.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
end
end
end
```### Dart Usage
- Regular usage
```dart
onPressed: (){
Livechat.beginChat(LICENSE_NO);
},
```- Cases where there are custom parameters
```dart
var cmap = {
'org': 'organizationTextController.text',
'position': 'positionTextController.text'
};onPressed: (){
Livechat.beginChat(
LICENSE_NO,
groupId: GROUP_ID,
visitorName: VISITOR_NAME,
visitorEmail: VISITOR_EMAIL,
customParams: cmap,
);
},
```For more info, please, refer to the `main.dart` in the example.
### Embedded Chat Views
The package now supports embedded views for custom positioning within your app’s layout:
```dart
var cmap = {
'org': 'organizationTextController.text',
'position': 'positionTextController.text'
};Livechat.embeddedChat(
licenseNo: 'your_license',
groupId: 'group_id',
visitorEmail: 'visitor_email',
visitorName: 'visitor_name',
customParams: cmap,
)
```For more info, please refer to `EmbeddedChatWidget` in `main.dart` in the example.
### Events Streaming
> Android only
The plugin streams various events such as new messages, visibility changes, and errors from the chat window. You can listen to events like this:
```dart
Livechat.chatEvents.listen((event) {
print(event);
});
```For specific events, you can stream:
##### New Messages:
```dart
Livechat.newMessages.listen((message) {
print(message);
});
```##### Visibility Changes:
```dart
Livechat.visibilityChanges.listen((isVisible) {
print("Chat Window is visible: $isVisible");
});
```##### Errors:
```dart
Livechat.errors.listen((error) {
print("Error: ${error['errorDescription']}");
});
```##### Uri handling:
```dart
Livechat.uriHandlers.listen((message) {
print(message);
});
```##### File picker activity:
```dart
Livechat.filePickerActivity.listen((message) {
print(message);
});
```##### Window initialization:
```dart
Livechat.windowInitialized.listen((message) {
print(message);
});
```For more info, please refer to `EmbeddedChatWidget` in `main.dart` in the example.
### Views
## 🐛 Bugs/Requests
If you encounter any problems feel free to open an issue. If you feel the library is
missing a feature, please raise a ticket on Github and I'll look into it.
Pull request are also welcome.### ❗️ Note
This project is a starting point for a Flutter
[plug-in package](https://flutter.dev/developing-packages/),
a specialized package that includes platform-specific implementation code for
Android and/or iOS.For help getting started with Flutter, view our
[online documentation](https://flutter.dev/docs), which offers tutorials,
samples, guidance on mobile development, and a full API reference.## 🤓 Developer(s)
[
](https://mastersam.tech)
#### **Abada Samuel Oghenero**## ⭐️ License
#### MIT LICENSE