Web Console Chat

« tiếng Việt »

updated: 2023-04-24

Web Console Chat, short as WebCC is this installation guide and a collection of patches to make sure existing XMPP console applications are safe enough before serving them to the web with ttyd for your web-chat service.

The advantages of deploying WebCC are:

  1. Barebone stack with minimal dependencies.
  2. Same set of commands and features with XMPP console application.
  3. Run server-side - light load on browsers with fine grain control over your web chat services.
  4. Text-base - contents are relatively safer.

The disadvantages are:

  1. Text-base - no fancy graphics.
  2. Run server-side - cost of resources is also on server-side.
  3. Features depends on the console application.
  4. Doesn’t touch any of the popular web technology frameworks.

Everything below can be summarised in a single sentence: Create a UNIX system user to run ttyd with your patched console application behind a reverse proxy.

    
    +——————————————+———————————————————————————————————————————————————————————————————————————————+
    ┃              ┃                                                                               ┃ 
    ┃    CLIENT    ┃                        SERVER                                                 ┃
    ┃              ┃                                                                               ┃ 
    +——————————————+———————————————————————————————————————————————————————————————————————————————+
    ┃   Browser    ┃  Reverse Proxy  |   Web Console Chat   |   Init System   |  Operating System  ┃
    ┃--------------┃-----------------+----------------------+-----------------|--------------------┃
    ┃              ┃                 |                      |                 |                    ┃
    ┃   Chromium   ┃                 |                      |                 |                    ┃
    ┃   FireFox    ┃                 ··← Poezio    / TTYD →··                 |                    ┃
    ┃   TorBrowser ┃                 ·                      ·                 |                    ┃     ~*~
    ┃   Surf →·········← Apache →····+·← Profanity / TTYD →·+···← SystemD ←······→ GNU/Linux ←·······→ INTERNET     
    ┃   …          ┃     Nginx       ·                      ·     OpenRC      |    OpenBSD         ┃     ~*~
    ┃              ┃     Lighttpd    ··← Mcabber   / TTYD →··     Runit       |    Redox           ┃
    ┃              ┃     HAProxy     ·                      ·     …           |    …               ┃        
    ┃              ┃     Caddy       ··← lchat+sj  / TTYD →··                 |                    ┃
    ┃              ┃     …           |   …                  |                 |                    ┃
    ┃              ┃                 |                      |                 |                    ┃
    +——————————————+———————————————————————————————————————————————————————————————————————————————+
    

With endless possibilities of software and set-up, this guide can demonstrates only with a limited number. Please adapt and|or expand to suit your system.

  1. UNIX
  2. Console Clients
  3. TTYD
  4. Init System
  5. Reverse Proxy

All patches are in here.



Contact

Come hang out in MUC for this project: xmpp:webcc@hall.trung.fun?join

You can use WebCC to do that right here ↓

~*~