Mibew Messenger - open-source live support application written in PHP and MySQL

Overview

Mibew Messenger

Mibew Messenger is an open-source live support application written in PHP and MySQL. It enables one-on-one chat assistance in real-time directly from your website.

About this repository

This repository contains the core of Mibew Messenger application.

Server requirements

  1. A webserver or web hosting account running on any major Operating System
  2. PHP (7.2.5 and above) with PDO, pdo_mysql, cURL, mbstring and gd extensions
  3. MySQL 5.0 and above

Build from sources

There are several actions one should do before use the latest version of Mibew from the repository:

  1. Obtain a copy of the repository using git clone, download button, or another way.
  2. Install node.js and npm.
  3. Install Gulp.
  4. Navigate to src/ directory of the local copy of the repository.
  5. Install npm dependencies using npm install.
  6. Run Gulp to build Mibew using gulp default.

Finally .tar.gz and .zip archives of the ready-to-use Mibew will be available in src/release directory.

Terms of Use

Mibew Messenger is licensed under the terms of Apache License, Version 2.0.

Other repositories of the Mibew project

Actual

  1. Mibew Messenger i18n repository
  2. Mibew Messenger design repository
  3. Mibew documentation repository

Obsolete

  1. Mibew Java applications repository
  2. Mibew Tray repository

Plugins

  1. Mibew Boilerplate plugin - a template for a real plugin

Ready for production use

  1. Mibew Advanced Button plugin
  2. Mibew Auto Invite plugin
  3. Mibew Auto Reply plugin
  4. Mibew Broadcast plugin
  5. Mibew Bulk Logs Operations plugin
  6. Mibew Button Refresh plugin
  7. Mibew Emoji plugin
  8. Mibew Filter Visitors By Operator Code plugin
  9. Mibew First Message plugin
  10. Mibew Geo IP plugin
  11. Mibew Google Maps plugin
  12. Mibew Open Street Map plugin
  13. Mibew Operator Status plugin
  14. Mibew Purge History plugin
  15. Mibew Real Ban plugin
  16. Mibew Slack plugin
  17. Mibew Title Notification plugin

Not ready for production use (not stable, broken, obsolete, etc.)

  1. Mibew External API plugin
Comments
  • Created an Operator Status Controller for External Integration

    Created an Operator Status Controller for External Integration

    I wanted to have more control for what is displayed based on whether an operator is available or not.

    I didn't want to use the default "Leave a Message" system but instead use my own contact form or perhaps something else. Unfortunately, Mibew doesn't offer any ability to do this at the moment. The only options are On/Off with Live Chat/Leave a Message.

    This controller creates a new external integration feature that outputs a true or false statement based on the availability of operators.

    By using http://example.com/mibew/opstatus you can include as a variable and take actions based on the status value. I think this increases a lot of possibilities for flexibility.


    I realize this could probably be a plugin instead of submitted as an edit to the core but I couldn't figure out how to create a plugin that modifies the routing.yml file.

    If you think this would be better as a plugin, please let me know how to do that and I will convert it to a plugin instead.


    Oh yea, this Operator Status controller also supports Group ids so the status can be acted upon per group.

    enhancement 
    opened by MichaelTunnell 27
  • How to use built-in update tool?

    How to use built-in update tool?

    I just follow this document in Mibew sIte: Installation and update, and when I backup, unzip new file then restore files and correct all rights, I visit http:///mibew/update/ and I got this error:

    Query failed: Unknown column 'initialized' in 'field list'

    and I found that:

    Mibew starting from 2.0.0-beta.1 version can be updated to later versions using built-in update tool.

    so how can I update 2.1.2 to ~~2.1.2~~2.2.0 using built-in update tool? I can't find the tool in the dashboard.

    enhancement 
    opened by everyx 17
  • Integrate Mibew in Slack

    Integrate Mibew in Slack

    I propose this feature because slack has a lot of user now and it can be really useful to be to notify in Slack when there is a new visitor.

    More generally you should be more open with other tools. Don't be like redmine...

    feature request 
    opened by axelparatre 15
  • version 2.0: Can't inherit abstract function Mibew\\Style\\StyleInterface::getFilesPath()

    version 2.0: Can't inherit abstract function Mibew\\Style\\StyleInterface::getFilesPath()

    Hello, Trying to upgrade 1.6.11 to 2.0 alpha1 by replacing the old 1.6.11 directory with 2.0 and leaving the database unaltered we get the following message in apache's error_log no matter where we go:

    [Thu Jul 31 10:53:57 2014] [error] [client 10.3.2.118] PHP Fatal error: Can't inherit abstract function Mibew\Style\StyleInterface::getFilesPath() (previously declared abstract in Mibew\Style\AbstractStyle) in /var/www/chat.ats.coop/mibew/libs/classes/Mibew/Style/PageStyle.php on line 28

    opened by tylergates-ats 13
  • locales issue

    locales issue

    In version 1.6.6 mibew only shows translations (de German) to (ä ö ü) character after it's all gone. In the operators backend. for example:

    menu.profile.content=Sie können ihre persönlichen Daten auf dieser Seite ändern.

    displays= Sie k

    version 1.6.5 Ok

    bug invalid 
    opened by kts-admin 13
  • Mixed Content with HTTPS Connection

    Mixed Content with HTTPS Connection

    When loading button code on a HTTPS site, chat_popup.js loads iframe.css via HTTP even though the connection his HTTPS.

    Therefore the browser blocks the content and mibew will not function properly on the site.

    Temporary workaround is to include the style manually in your site template

    https://YOUR MIBEW DOMAIN/styles/chats/YOUR STYLE/iframe.css

    bug 
    opened by gnomee2 10
  • Bug: Online/Offline Value in Admin is Inconsistent

    Bug: Online/Offline Value in Admin is Inconsistent

                            {{#if warnOffline}}
                                {{#unless isOnline}}
                                    echo offline
                                {{/unless}}
                            {{else}}
                                    echo online
                            {{/if}}
    

    The above code is used to indicate if an operator is logged in or not but the value it outputs is inconsistent depending on the page parsing it.

    On the dashboard:

    • If you are not online in the "console" then it displays the offline message.
    • If you are online then it will display nothing.

    In the console (visitors page):

    • If online, displays online properly.
    • if offline, well impossible really.

    On any other page:

    • If online, displays as online.
    • If offline, displays as online.

    This can be tested using my theme where I moved the indicator to the side menu.

    enhancement 
    opened by MichaelTunnell 10
  • Add connection timeout option

    Add connection timeout option

    At the moment connection timeout if hard codded and equals to 30 seconds. This value should be set from operators interface to provide better flexibility.

    enhancement 
    opened by JustBlackBird 10
  • Question: Differences between pre-built js files and custom built

    Question: Differences between pre-built js files and custom built

    Hi,

    Thanks for the great project.

    I'm having troubles when compiling js files, see below screenshots

    image

    Red lines are pre-built version while greens are those generated after running 'gulp js' locally, the differences apparently have led a problem:

    image

    Any clue to solve this problem? Thanks.

    question 
    opened by nakupanda 9
  • PHP7 compatability...

    PHP7 compatability...

    The dependencies for the justblackbird/handlebars.php-helpers package are now out of date and cause fatal error in php7. I have not tested updating the version # yet, but making this ready for php7 might be as easy as updating that and the packages xamin/handlebars.php to greater versions in the composer.json file.

    bug 
    opened by J-Fricke 9
  • Chat no longer works after input of some UTF-8 characters

    Chat no longer works after input of some UTF-8 characters

    We experienced a "crash" of our local chat system (1.6.4). It was caused by a client who entered some strange UTF-8 characters in her chat text. A short test with your demo shows the same effect: List of visitors no longer worked but continuously tried to reconnect (we got a Loading ... in our older version). So this problem still exists. A test with demo 2.0 was not successful.

    bug 
    opened by stweil 9
  • Can't install on PHP 8.1

    Can't install on PHP 8.1

    Environment

    • Mibew Messenger version:
    • OS: Debian 11 (bullseye)
    • Web server: Apache 2
    • PHP: 8.1.8
    • MySQL: MariaDB-1:10.3.31

    Expected behavior

    Can install and use.

    Actual behavior

    Deprecated: Return type of Symfony\Component\HttpFoundation\ParameterBag::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/ak/mibew/vendor/symfony/http-foundation/ParameterBag.php on line 220

    Deprecated: Return type of Symfony\Component\HttpFoundation\ParameterBag::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/ak/mibew/vendor/symfony/http-foundation/ParameterBag.php on line 230

    Deprecated: Return type of Symfony\Component\HttpFoundation\HeaderBag::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/ak/mibew/vendor/symfony/http-foundation/HeaderBag.php on line 288

    Deprecated: Return type of Symfony\Component\HttpFoundation\HeaderBag::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/ak/mibew/vendor/symfony/http-foundation/HeaderBag.php on line 298

    Deprecated: strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /var/www/html/ak/mibew/vendor/symfony/http-foundation/Request.php on line 316

    Warning: session_start(): Session cannot be started after headers have already been sent in /var/www/html/ak/mibew/libs/init.php on line 67

    Deprecated: strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /var/www/html/ak/mibew/vendor/symfony/http-foundation/Request.php on line 316

    Deprecated: Return type of Symfony\Component\Routing\RouteCollection::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/ak/mibew/vendor/symfony/routing/Symfony/Component/Routing/RouteCollection.php on line 56

    Deprecated: Return type of Symfony\Component\Routing\RouteCollection::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/html/ak/mibew/vendor/symfony/routing/Symfony/Component/Routing/RouteCollection.php on line 66

    Deprecated: Symfony\Component\Config\Resource\FileResource implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in /var/www/html/ak/mibew/vendor/symfony/config/Symfony/Component/Config/Resource/FileResource.php on line 21

    Deprecated: Symfony\Component\Routing\Route implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in /var/www/html/ak/mibew/vendor/symfony/routing/Symfony/Component/Routing/Route.php on line 22

    Deprecated: Symfony\Component\Routing\CompiledRoute implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in /var/www/html/ak/mibew/vendor/symfony/routing/Symfony/Component/Routing/CompiledRoute.php on line 19

    Fatal error: Database was not initialized correctly in /var/www/html/ak/mibew/libs/classes/Mibew/Database.php on line 120

    Steps to reproduce the behavior

    Go to http://127.0.0.1/ak/mibew/install.php in a clean build

    pending 
    opened by Akiracr 11
  • Composer requires php 8.1.0

    Composer requires php 8.1.0

    Environment

    • Mibew Messenger version: 3.5.6
    • OS: Ubuntu 18.04.6 LTS
    • Web server: Nginx
    • PHP: 7.4.30
    • PHP extensions:
    • MySQL:

    Expected behavior

    Run mibew update.

    Actual behavior

    Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 8.1.0".

    Steps to reproduce the behavior

    Delete currently installed mibew (after backing up plugins and any configs). Browse to https://url_to_mibew/update

    pending 
    opened by pribis 2
  • Question - How to contribuite

    Question - How to contribuite

    Hello,

    i have a 5 bases on Mibew messenger for 2 years. During time, i create a many improviments. New indexes for large bases (one base have average 2k calls per day), new layout improviments, reasons for contact, start chat with bot to direct for humans, pause reason, custom time, auto distribution, real time dashboard... I would like to contribuite with this project. How to do?

    Thanks for reply

    question 
    opened by OdairPianta 1
  • Integration within Saasform

    Integration within Saasform

    👋 I wanted to bring up integrating Mibew into saasform.

    We (saasform) have got a request to support Intercom chatbot, but we really like to turn this into an opportunity to promote open source alternatives. Integration should be really simple: https://github.com/saasform/saasform/commit/24856f9f03f7a6dde41b80dec3b91a273fbe0c1e

    I wanted to check in first, if anyone wants to contribute a PR, if it’s ok to mention+link Mibew, etc. Happy to take this to dm or email, if this isn’t the best place.

    question 
    opened by 0x0ece 1
  • Show #page views/current session in visitor list

    Show #page views/current session in visitor list

    it would be very helpful to see following data in the visitors list page:

    • number of page views in current session
    • number of visits in the last 7 and 30 days
    • currently viewed page
    help wanted need a plugin 
    opened by ludoja 1
Releases(v3.5.7)
Owner
Mibew Messenger
Mibew Messenger
Pico disk, Not need any database, support html5, support mp3, mp4, support streaming media, support AriaNg

Nano netdisk, Now changed to pico disk. Pico disk,does not need any database, support html5, support mp3, mp4, support streaming media, support AriaNg.

null 53 Dec 26, 2022
Open Source Voucher Management System is a web application for manage voucher. used PHP with Laravel Framework and use MySQL for Database.

Voucher Management System is a web application for manage voucher. You can create and manage your voucher. Voucher Management System is used PHP with Laravel Framework and use MySQL for Database.

Artha Nugraha Jonar 34 Sep 17, 2022
Open Source Point of Sale is a web based point of sale application written in PHP using CodeIgniter framework.

Open Source Point of Sale is a web based point of sale application written in PHP using CodeIgniter framework. It uses MySQL as the data back end and has a Bootstrap 3 based user interface.

opensourcepos 2.7k Jan 2, 2023
A live chat which utilises Socket.io and validates messages sent against a MySQL Table.

Socket.io Shoutbox with MySQL Validation The purpouse of this demonstration is to allow users to enter messages in either a public or private chat. Th

Jefff 9 Oct 14, 2022
A free and open-source accounting and production system for businesses and non-profits with support for multiple users and varied integrations

A free and open-source accounting and production system for businesses and non-profits with support for multiple users and varied integrations.

null 3 Sep 22, 2022
MyAAC is a free and open-source Automatic Account Creator (AAC) written in PHP

MyAAC is a free and open-source Automatic Account Creator (AAC) written in PHP. It supports only MySQL databases.

Lucas Giovanni 6 Aug 26, 2022
Open Source Social Network (OSSN) is a social networking software written in PHP.

Open Source Social Network (OSSN) is a social networking software written in PHP. It allows you to make a social networking website and helps your members build social relationships, with people who share similar professional or personal interests. It is available in 17 international languages.

Open Source Social Network 923 Jan 6, 2023
Bolt is a simple CMS written in PHP. It is based on Silex and Symfony components, uses Twig and either SQLite, MySQL or PostgreSQL.

⚠️ Note - Not the latest version This is the repository for Bolt 3. Please know that Bolt 5 has been released. If you are starting a new project, plea

Bolt 4.1k Dec 27, 2022
Emoncms is an open-source web application for processing, logging and visualising energy, temperature and other environmental data and is part of the OpenEnergyMonitor project.

Emoncms is an open-source web application for processing, logging and visualising energy, temperature and other environmental data and is part of the OpenEnergyMonitor project.

Emoncms 1.1k Dec 22, 2022
OpenEMR is a Free and Open Source electronic health records and medical practice management application

OpenEMR is a Free and Open Source electronic health records and medical practice management application. It features fully integrated electronic health records, practice management, scheduling, electronic billing, internationalization, free support, a vibrant community, and a whole lot more. It runs on Windows, Linux, Mac OS X, and many other platforms.

OpenEMR 2.1k Jan 9, 2023
PHP backend Scripts to add and Manage Live tv Streaming android app

PHP Backend to Manage Live TV Streaming Android app Follow Given Steps to Setup Local Environment to run this php Script Setting Up Local Environment

Bikash Thapa 11 May 10, 2022
🔐 Password Manager written in PHP with MySQL database.

Password Manager A very basic password manager. Tech stack: PHP MySQL Bootstrap Setup Download and install XAMPP. Clone this repository: git clone htt

Olivér 4 Jun 25, 2022
Damn Vulnerable Web Application (DVWA) is a PHP/MySQL web application that is damn vulnerable.

Damn Vulnerable Web Application (DVWA) is a PHP/MySQL web application that is damn vulnerable. Its main goal is to be an aid for security professionals to test their skills and tools in a legal environment, help web developers better understand the processes of securing web applications and to aid both students & teachers to learn about web application security in a controlled class room environment.

Robin Wood 7k Jan 5, 2023
Simple Laravel Invoice Generator Sling — open-source web application that helps you create invoices and track income.

Simple Laravel Invoice Generator Sling — open-source web application that helps you create invoices and track income. Table of Contents About

Ray Icemont 4 Nov 22, 2022
This app aims to benchmark several video/live streaming OTT platforms

video-platform-bench This app aims to benchmark several video/live streaming OTT platforms based on Encoding Time performance and provide also a "Time

api.video 9 Dec 17, 2021
Laravel live chat pusher js, bootstrap, javascript, jquery

Documentation First of all install a laravel project. Then install a authentication system like, auth, breze, Jetstream etc. Then you need a model, Ca

Ariful Sikder 13 Nov 22, 2022
EspoCRM open source CRM application

EspoCRM is an Open Source CRM (Customer Relationship Management) software that allows you to see, enter and evaluate all your company relationships regardless of the type. People, companies or opportunities - all in an easy and intuitive interface.

EspoCRM - Open Source CRM 1k Dec 29, 2022
OroCRM is an open source Client Relationship Management (CRM) application

OroCRM is an open source Client Relationship Management (CRM) application that allows to create a 360° view of your customers across multiple channels, organize the sales pipeline, manage account and contact information, communicate with customers, run marketing campaigns and track campaign performance.

Oro, Inc. 611 Jan 3, 2023
phpIPAM is an open-source web IP address management application.

phpIPAM is an open-source web IP address management application. Its goal is to provide light and simple IP address management application. It is ajax-based using jQuery libraries, it uses php scripts and javascript and some HTML5/CSS3 features, so some modern browser is preferred to be able to display javascript quickly and correctly.

Miha Petkovsek 1.8k Dec 31, 2022