Download the PHP package tatter/chat without Composer
On this page you can find all versions of the php package tatter/chat. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package chat
Short Description Embedded chat widget for CodeIgniter 4
License MIT
Homepage https://github.com/tattersoftware/codeigniter4-chat
Informations about the package chat
Tatter\Chat
Embedded chat widget for CodeIgniter 4
Quick Start
- Install with Composer:
> composer require tatter/chat
- Update the database:
> php spark migrate --all
- Publish asset files:
> php spark publish
- Add Chat JS to your layout:
<script><?= view('Tatter\Chat\Views\javascript') ?></script>
- Add a chat to any view:
<?= chat('my-first-chat') ?>
Features
Chat allows developers to add a lightweight Bootstrap-style chat client to any page.
Installation
Install easily via Composer to take advantage of CodeIgniter 4's autoloading capabilities and always be up-to-date:
Or, install manually by downloading the source files and adding the directory to app/Config/Autoload.php.
Once the files are downloaded and included in the autoload, run any library migrations to ensure the database is setup correctly:
Assets
Chat has JavaScript code as well as asset dependencies that need to be included
with any view that has a conversation on it. Assets are managed by the
Tatter\Assets library; you can
publish all files with CodeIgniter's Publisher: spark publish
. Be sure to configure
the Assets filter and apply it to routes (see docs).
Authentication
Chat uses Tatter\Users
to determine participants username and display name. You must
be sure to include a package that provides codeigniter4/authentication-implementation
(like Shield) or make your own (see Authentication
for framework requirements).
Usage
The easiest way to start a chat is with the helper. Load the helper file (helper('chat')
)
and then use the chat($uid, $title)
command wherever you would use a partial view:
The parameters to chat()
are optional, and excluding them will load a one-time chat with
a random UID (e.g. for a one-time site visitor).
Extending
Conversations are stored and loaded from the database with the ConversationModel
, and
most of the logic is handled by the Entities. For example, a Conversation
entity can
$conversation->addUser($userId)
to join or refresh a user and get back a Participant
.
A Participant
can $participant->say('hello world')
to add a Message
.
All versions of chat with dependencies
codeigniter4/authentication-implementation Version 1.0
tatter/frontend Version ^1.0
tatter/users Version ^1.0