https://github.com/homeworkprod/chatrelater
  
  
    Chat Relater analyzes chat (IRC, Jabber/XMPP, whatever) logs and generates GraphViz files to visualize the relations between the participants. 
    https://github.com/homeworkprod/chatrelater
  
analysis chat data-visualization graphviz irc python
        Last synced: 10 days ago 
        JSON representation
    
Chat Relater analyzes chat (IRC, Jabber/XMPP, whatever) logs and generates GraphViz files to visualize the relations between the participants.
- Host: GitHub
- URL: https://github.com/homeworkprod/chatrelater
- Owner: homeworkprod
- License: other
- Created: 2015-05-27T23:53:02.000Z (over 10 years ago)
- Default Branch: main
- Last Pushed: 2021-02-28T04:32:32.000Z (over 4 years ago)
- Last Synced: 2025-03-26T16:21:31.293Z (7 months ago)
- Topics: analysis, chat, data-visualization, graphviz, irc, python
- Language: Python
- Homepage: https://homework.nwsnet.de/releases/1856/#chat-relater
- Size: 80.1 KB
- Stars: 8
- Watchers: 2
- Forks: 2
- Open Issues: 0
- 
            Metadata Files:
            - Readme: README.rst
- Changelog: CHANGES.rst
- License: LICENSE
 
Awesome Lists containing this project
README
          Chat Relater
============
**Chat Relater** is a tool consisting of two command-line scripts:
* The analyzer extracts user relations from chat logs. The gained data
  is serialized as JSON.
* The visualizer takes that data, generates a DOT_ file, and calls the
  GraphViz_ application to render the graph in the requested output
  format (e. g. PDF, PNG, SVG).
It is actually a conceptual clone of the PieSpy_ Social Network Bot.
However, Chat Relater does not act as an IRC bot (although this could be
easily accomplished by making use of the irc_ package), but therefore
allows to be run on any logfiles that produce similar output to those
created by XChat_. Of course, this includes logs from Jabber, SILC or
any other communication (but it might require some minor changes to the
log reader).
The GraphViz_ usage is pretty basic and output may be improved somehow,
but so far, the graphs created by PieSpy_ look **much** nicer.
Requirements
------------
Python_ 3.7 or later is required.
Chat Relater can be installed via pip:
.. code:: sh
    $ pip install ChatRelater
Tests
-----
Install the test dependencies:
.. code:: sh
    $ pip install -r requirements-test.txt
Install the local source files as package in development mode:
.. code:: sh
    $ pip install -e .
Run the tests:
.. code:: sh
    $ pytest
Usage
-----
Run the analyzer on one or more log files, saving the intermediate
results to another file (``chat.json``):
.. code:: sh
    $ chatrelater-analyze -o chat.json chat_today.log chat_yesterday.log
Create a nice graph (using the 'twopi' program) from the results
(``chat.json``) and save it to a PNG image (``graph.png``):
.. code:: sh
    $ chatrelater-visualize -f png -p neato chat.json chat
And intermediate file containing the 'dot' description (``graph``) will
be created in the process.
.. _DOT:        https://www.graphviz.org/doc/info/lang.html
.. _GraphViz:   https://www.graphviz.org/
.. _PieSpy:     http://www.jibble.org/piespy/
.. _irc:        https://github.com/jaraco/irc
.. _XChat:      http://www.xchat.org/
.. _Python:     https://www.python.org/
:Copyright: 2007-2021 `Jochen Kupperschmidt `_
:License: MIT, see LICENSE for details.