cabal-client -это новый тип клиентской библиотеки для клиентов Cabal Chat.
Новые клиенты в чате могут быть реализованы только с использованием этой библиотеки, не прижимаясь к cabal-core .
Некоторые из его функций:
!status Для нескольких кратких примеров см. examples/ каталог.
См. cabal-cli для примера реализации клиента.
Прочитайте документацию API
var Client = require ( 'cabal-client' )
const client = new Client ( {
config : {
dbdir : '/tmp/cabals'
}
} )
client . createCabal ( )
. then ( ( cabal ) => {
// resolves when the cabal is ready, returns a CabalDetails instance
} ) cabal-client имеет три основные абстракции : Client , CabalDetails и ChannelDetails .
Client - это точка входа. У него есть список CabalDetails (по одной details для каждой соединенной кабины), а также API для взаимодействия с кабинкой (получение подсчета новых сообщений для канала, соединенных каналов для текущего сверстника и т. Д.).
CabalDetails - это случай, на котором клиенты в основном работают, поскольку он инкапсулирует всю информацию для определенной кабины. (Присоединились к каналам, пользователи в этом канале, тема). Это также излучает события.
Когда произошло изменение, экземпляр CabalDetails будет назвать this._emitUpdate() . Когда клиент получает это событие, он должен обновить свое состояние и rerender. (Посмотрите, как это делает CLI.)
ChannelDetails инкапсулирует все каналы (упоминает в этом канале, сообщения о состоянии для канала (например, назвав команду, например /names , когда он был в последний раз читал, если он в настоящее время просмотрена, если он присоединяется и так далее). Он также имеет реализацию Barebones для виртуальных каналов, который в настоящее время является только каналом !status
С установленным NPM запустите
$ npm install cabal-client
Смотрите инструкции по созданию изменчивости в Cabal-Core Readme.
AGPL-3,0-OR-Later