ebchat_core 1.1.1 copy "ebchat_core: ^1.1.1" to clipboard
ebchat_core: ^1.1.1 copied to clipboard

Pure-Dart client for the ebchat first-party livechat protocol: REST client, conversation controller and Pusher/Soketi realtime transport. No Flutter dependency. Most apps want the ebchat package, whic [...]

ebchat_core #

Pure-Dart client for the ebchat first-party livechat protocol (/livechat/v1) — REST calls, protocol models, and a conversation controller. No Flutter dependency.

Most apps should depend on ebchat (the drop-in Flutter SDK) rather than this package directly — it re-exports everything here. Reach for ebchat_core when you are building your own UI, or driving a conversation from a non-Flutter Dart process.

Usage #

final api = LivechatApiClient(baseUrl: Uri.parse('https://ebchat-backend.e-butler.com'));

// `apiKey` is an eb_… token from your ebchat dashboard, scoped to the LIVECHAT
// permission; `partnerId` is the id it was issued under.
final session = await api.createSession(apiKey, partnerId, appSource: 'my_app');
final convo = await api.createOrGetConversation(session.token);

await api.sendMessage(
  session.token,
  convo.conversation.id,
  SendMessageRequest.text('Hello!', clientId: 'tmp-1'),
);

EbchatConversationController wraps that into a live message stream, optimistic echoes, pagination, typing and read receipts. It polls by default; pass a PusherLivechatRealtime (built from the gateway's bootstrap realtime block) to receive messages over a WebSocket instead.

final controller = EbchatConversationController(
  api: api,
  token: session.token,
  conversationId: convo.conversation.id,
  guestId: session.guest.id,
);
await controller.start(seed: convo.messages);
controller.messages.listen(render);
Package Role
ebchat Flutter widgets + the drop-in chat screen

License #

MIT — see LICENSE.

0
likes
140
points
173
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Pure-Dart client for the ebchat first-party livechat protocol: REST client, conversation controller and Pusher/Soketi realtime transport. No Flutter dependency. Most apps want the ebchat package, which adds the UI.

Homepage
Repository (GitHub)
View/report issues

Topics

#chat #messaging #support #livechat

License

MIT (license)

Dependencies

http, http_parser, meta, web_socket_channel

More

Packages that depend on ebchat_core