Skip to content

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

Notifications You must be signed in to change notification settings

dungpxhtp/messenger-demo

This branch is 16 commits behind RTippin/messenger-demo:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 Cannot retrieve latest commit at this time.
Feb 23, 2022
Feb 23, 2022
Jan 1, 2020
Feb 23, 2022
Feb 6, 2022
Feb 23, 2022
Feb 6, 2022
Feb 23, 2022
Aug 26, 2021
Aug 17, 2021
Dec 9, 2020
Oct 22, 2021
Jan 1, 2020
Jul 14, 2021
Aug 19, 2021
Feb 23, 2022
Jan 1, 2020
Feb 23, 2022
Feb 23, 2022
Dec 9, 2020
Aug 19, 2021

Repository files navigation

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:

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

About

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

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 74.8%
  • Blade 23.8%
  • Shell 1.4%