Home
Softono

Messenger Demo

Open source PHP
158
Stars
46
Forks
5
Issues
12
Watchers
1 year
Last Commit

 About Messenger Demo

Laravel messenger demo app using rtippin/messenger. Private and group threads with real-time messaging, reactions, attachments, calling, chat bots, and more!

Platforms

Web Self-hosted

Languages

PHP

Links

Need Help Installing Messenger Demo?

We provide expert installation service for this software. Our team will install, configure, and secure Messenger Demo on your server. plans start at just $30.

Messenger Demo

View on GitHub

Messenger Demo App

Preview


Included addon packages:

Checkout the LIVE DEMO

Prerequisites

  • PHP >= 8.0.2
  • Laravel >= 9.x
  • MySQL >= 8.x
  • PHPREDIS if using redis for drivers, which our default .env.example has set.

Notes

  • This demo is meant to be seeded before use. Registration also assumes a pre-seeded database, as we automatically create threads between the admin user and a newly registered user, as well as set friendships.
  • Calling will be disabled by default. Even though we have our janus-client installed, you are responsible for setting up your own Janus Server.
  • Please see Janus official docs for more information.
  • We use pusher.com by default for our websocket implementation, however you may choose to use the drop-in replacement laravel-websockets

Installation

Clone or download this repository

git clone [email protected]:RTippin/messenger-demo.git

Composer install

composer install

Rename the .env.example to .env and configure your environment, including your pusher keys if you use pusher.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=1234
DB_DATABASE=demo
DB_USERNAME=root
DB_PASSWORD=password
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=
MESSENGER_SOCKET_PUSHER=true
MESSENGER_SOCKET_KEY="${PUSHER_APP_KEY}"
MESSENGER_SOCKET_CLUSTER="${PUSHER_APP_CLUSTER}"
#etc

Run the Install Command

  • This command will generate your APP_KEY for you, as well as migrating fresh and downloading our documentation files.
    • This will WIPE any data in your database as it runs migrate:fresh under the hood.
php artisan demo:install

Running locally:

Run these commands in their own terminal inside your project folder

php artisan serve
php artisan queue:work --queue=messenger,messenger-bots

Default seeded admin account:

Email [email protected]

Password: messenger

All other seeded accounts use messenger password as well


UI configurations / Websockets


Pictures

Sending images, voice messages, replies, and reactions

Preview


Interacting with a chat-bot using triggers to invoke responses

Preview


Viewing a bots actions and triggers

Preview


Managing a groups participants

Preview


In a video call

Preview


Sending documents and images, hovering over options / reactions

Preview