Flutter客服支持插件zendesk_flutter_support的使用
Flutter客服支持插件zendesk_flutter_support的使用
本项目是一个新的Flutter插件包,它包括了针对Android和/或iOS平台的特定实现代码。
获取开始
本项目是Flutter的一个起点项目。对于Flutter开发的帮助,可以查看在线文档,其中提供了教程、示例、移动开发指导和完整的API参考。
使用示例
以下是一个使用zendesk_flutter_support
插件的完整示例代码。该代码展示了如何初始化插件并打开聊天窗口。
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:flutter/services.dart';
import 'package:zendesk_flutter_support/zendesk_flutter_support.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({Key? key}) : super(key: key);
[@override](/user/override)
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
String _platformVersion = '未知';
final _zendeskPlugin = ZendeskFlutterSupport();
[@override](/user/override)
void initState() {
super.initState();
initPlatformState();
initZendesk();
}
// 平台消息是异步的,因此我们在异步方法中进行初始化。
Future<void> initPlatformState() async {
String platformVersion;
try {
platformVersion =
await _zendeskPlugin.getPlatformVersion() ?? '未知平台版本';
} on PlatformException {
platformVersion = '获取平台版本失败。';
}
if (!mounted) return;
setState(() {
_platformVersion = platformVersion;
});
}
Future<void> initZendesk() async {
if (!mounted) {
return;
}
// 初始化Zendesk插件,需要提供相应的密钥和URL。
await ZendeskFlutterSupport.initialize('账户密钥', '应用ID', '客户端ID', 'Zendesk URL');
// 设置访客信息,如姓名、电子邮件、电话号码和部门。
await ZendeskFlutterSupport.setVisitorInfo(
name: '文本客户',
email: 'testclient@example.com',
phoneNumber: '0000000000',
department: '支持');
}
[@override](/user/override)
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('插件示例应用'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Padding(
padding: const EdgeInsets.all(16),
child: Text(
'运行在: $_platformVersion\n在main.dart中用正确的密钥初始化示例',
textAlign: TextAlign.center,
),
),
MaterialButton(
onPressed: openChat,
color: Colors.blueGrey,
textColor: Colors.white,
child: const Text('打开聊天'),
)
],
),
),
),
);
}
Future<void> openChat() async {
try {
// 打开聊天窗口,设置各种选项。
await ZendeskFlutterSupport.startChat(
isAgentAvailabilityEnabled: true,
isChatTranscriptPromptEnabled: true,
isOfflineFormEnabled: true,
isPreChatFormEnabled: true);
} on dynamic catch (ex) {
print('发生错误 $ex');
}
}
}
更多关于Flutter客服支持插件zendesk_flutter_support的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
更多关于Flutter客服支持插件zendesk_flutter_support的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
zendesk_flutter_support
是一个用于在 Flutter 应用中集成 Zendesk 客服支持的插件。通过这个插件,你可以轻松地在应用中添加 Zendesk 的客服聊天、帮助中心、工单提交等功能。以下是如何使用 zendesk_flutter_support
插件的详细步骤:
1. 添加依赖
首先,你需要在 pubspec.yaml
文件中添加 zendesk_flutter_support
插件的依赖:
dependencies:
flutter:
sdk: flutter
zendesk_flutter_support: ^1.0.0 # 请使用最新版本
然后运行 flutter pub get
来获取依赖。
2. 配置 Zendesk
在使用插件之前,你需要在 Zendesk 后台获取一些必要的配置信息,包括:
- Zendesk Account Key: 你的 Zendesk 账户密钥。
- App ID: Zendesk 应用的 ID。
- Client ID: Zendesk 客户端 ID。
- Zendesk URL: 你的 Zendesk 实例的 URL。
3. 初始化插件
在你的 Flutter 应用启动时,需要初始化 zendesk_flutter_support
插件。通常可以在 main.dart
中的 main
函数中进行初始化:
import 'package:zendesk_flutter_support/zendesk_flutter_support.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await ZendeskFlutterSupport.initialize(
accountKey: 'YOUR_ZENDESK_ACCOUNT_KEY',
appId: 'YOUR_APP_ID',
clientId: 'YOUR_CLIENT_ID',
zendeskUrl: 'YOUR_ZENDESK_URL',
);
runApp(MyApp());
}
4. 使用 Zendesk 功能
初始化完成后,你可以在应用中使用 Zendesk 提供的各种功能。
4.1 打开帮助中心
你可以通过调用 ZendeskFlutterSupport.showHelpCenter()
来打开帮助中心:
ElevatedButton(
onPressed: () {
ZendeskFlutterSupport.showHelpCenter();
},
child: Text('Open Help Center'),
);
4.2 打开聊天
你可以通过调用 ZendeskFlutterSupport.startChat()
来打开聊天窗口:
ElevatedButton(
onPressed: () {
ZendeskFlutterSupport.startChat();
},
child: Text('Start Chat'),
);
4.3 提交工单
你可以通过调用 ZendeskFlutterSupport.submitTicket()
来提交工单:
ElevatedButton(
onPressed: () {
ZendeskFlutterSupport.submitTicket(
subject: 'Issue with the app',
description: 'I am facing an issue with the app...',
);
},
child: Text('Submit Ticket'),
);
5. 处理用户身份
你可以为当前用户设置身份信息,以便在 Zendesk 中识别用户:
ZendeskFlutterSupport.setUserIdentity(
name: 'John Doe',
email: 'john.doe@example.com',
);
6. 处理通知
如果你希望在用户收到新消息时显示通知,你可以配置通知处理程序:
ZendeskFlutterSupport.setNotificationHandler(
onNotificationReceived: (notification) {
// 处理通知
},
);
7. 处理错误
在使用插件时,你可能会遇到一些错误。你可以通过监听错误来处理这些问题:
ZendeskFlutterSupport.setErrorHandler(
onError: (error) {
// 处理错误
},
);