The local chat suite is a very simple 'irc-ish' chat system over a unix socket for a single computer/server. https://www.digitalcombine.ca/projects/local-chat/
  • C++ 80.6%
  • M4 18.1%
  • Makefile 0.8%
  • Shell 0.5%
Find a file
2023-07-10 19:23:36 -06:00
.github/workflows Create codeql-analysis.yml 2021-08-28 08:36:15 -06:00
extra Fixed daemon spelling mistake 2023-07-02 08:38:38 -06:00
include Improve much of the c++ coding standards 2023-07-01 14:25:40 -06:00
m4 Added posix thread library detection to automake build 2021-08-27 14:36:28 -06:00
man Fixed daemon spelling mistake 2023-07-02 08:38:38 -06:00
src Some ui tlc and code clean up 2023-07-03 16:07:19 -06:00
.gitignore Longopts added to programs 2023-07-01 12:28:51 -06:00
AUTHORS Version bump 2020-08-13 06:50:17 -06:00
autocomplete.log Auto complete implemenation 2021-08-29 12:11:57 -06:00
autogen.sh Initial import 2018-02-16 06:51:47 -06:00
ChangeLog Update changelog 2023-07-10 19:00:54 -06:00
configure.ac Update version 2023-07-10 19:05:15 -06:00
LICENSE License change to 3-clause BSD license 2021-05-25 20:43:02 -06:00
Makefile.am Automake build clean up to pass distcheck 2020-08-13 16:46:11 -06:00
NEWS Release information updated 2023-07-01 15:19:06 -06:00
README.md Fixed license 2021-08-28 08:39:55 -06:00
TODO Added more things todo. 2020-04-17 14:06:29 -06:00

Local Chat Suite

The local chat suite is a very simple 'irc-ish' chat system over a unix socket for a single computer/server. The target for this software is for headless servers allowing admins or other users to easily communicate on the console.

Requirements

  • GNU Automake & Autoconf tools
  • GNU C++ Compiler Suite
  • Curses Library

Install

Building and installing uses the standard GNU automake/autoconf tools. So the following configure/make will work.

./configure
make
make check
make install

The above will work, but ideally the following compiling flags shown be set during the configure stage.

CXXCFLAGS="-Wall -pedantic -O2" ./configure

Usage

First the chat daemon need to be started. Ideally it should be started with it's own system user and all the users that will be using the chat system should have a common group.

To start the server as a daemon with a unix socket at /var/lib/lchat/sock for the group 'users'.

lchatd -d -g users
lchatd -d -s /var/lib/lchat/sock -g users

To use that chat system any user in the 'users' group can now simply use the lchat program.

lchat
lchat -s /var/lib/lchat/sock

License

Copyright (c) 2018-2020 Ron R Wills ron@digitalcombine.ca

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

  3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.