zendesk2 2.0.0+1 copy "zendesk2: ^2.0.0+1" to clipboard
zendesk2: ^2.0.0+1 copied to clipboard

discontinued
PlatformAndroidiOS

Zendesk Android and iOS SDK port for Flutter, easily open native chat or manipulate providers for custom UI

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:zendesk2/zendesk2.dart';
import 'package:zendesk2_example/zendesk_answer.dart';
import 'package:zendesk2_example/zendesk_chat.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      theme: ThemeData(accentColor: Colors.amber),
      home: Home(),
    );
  }
}

class Home extends StatefulWidget {
  _Home createState() => _Home();
}

class _Home extends State<Home> {
  final z = Zendesk.instance;

  String accountKey = '';
  String appId = '';
  String clientId = '';
  String zendeskUrl = '';

  void answer() async {
    z.initAnswerSDK(appId, clientId, zendeskUrl);
    Navigator.of(context)
        .push(MaterialPageRoute(builder: (context) => ZendeskAnswerUI()));
  }

  void chat() async {
    String name = '';
    String email = '';
    String phoneNumber = '';

    await z.initChatSDK(accountKey, appId);

    Zendesk2Chat zChat = Zendesk2Chat.instance;

    await zChat.setVisitorInfo(
      name: name,
      email: email,
      phoneNumber: phoneNumber,
      tags: ['app', 'zendesk2_plugin'],
    );

    await Zendesk2Chat.instance.startChatProviders(autoConnect: false);

    Navigator.of(context)
        .push(MaterialPageRoute(builder: (context) => ZendeskChat()));
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Plugin example app'),
      ),
      body: Center(
        child: Text('Press on FAB to start chat'),
      ),
      floatingActionButton: Row(
        mainAxisAlignment: MainAxisAlignment.spaceEvenly,
        children: [
          FloatingActionButton.extended(
            heroTag: 'answer',
            icon: Icon(FontAwesomeIcons.comments),
            label: Text('Answer BOT'),
            onPressed: answer,
          ),
          FloatingActionButton.extended(
            heroTag: 'chat',
            icon: Icon(FontAwesomeIcons.comments),
            label: Text('Chat SDK V2'),
            onPressed: chat,
          ),
        ],
      ),
    );
  }
}
15
likes
120
pub points
68%
popularity

Publisher

verified publisheradriankohls.app

Zendesk Android and iOS SDK port for Flutter, easily open native chat or manipulate providers for custom UI

Repository (GitHub)
View/report issues

Documentation

API reference

License

Apache-2.0 (LICENSE)

Dependencies

flutter

More

Packages that depend on zendesk2