Module:ClientBuffer

From BNC4FREE
Revision as of 11:00, 6 February 2021 by Russell (talk | contribs) (Add documentation for the clientbuffer module)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This module will enable client specific playback buffers allowing you to configure certain clients to play back lines from a specific time period.

Usage

In order to make it possible for the module to control client specific buffers, you must disable the AutoClearChanBuffer and AutoClearQueryBuffer config options that are enabled by default on your account. This can be done via the controlpanel module or via webadmin.


Arguments

This module takes 2 arguments

Argument Type Description
autoadd Optional If specified, causes any clients that haven't been previously registered to be automatically registered, thus making it unnecessary to use the addclient command.
timelimit Optional Does not playback any lines in the buffer older than the specified number of seconds.


Commands

The following command can be used to add a client to the client buffer module:

   /msg *clientbuffer addclient <name/identifier>

For example if you wanted to add a client named 'laptop', you would use the following:

   /msg *clientbuffer addclient laptop

To delete a client so it is no longer recognised by this module, use the following:

   /msg *clientbuffer delclient <name/identifier>

To change what is played back to a client use the following command:

   /msg *clientbuffer setclienttimelimit <name/identifier> <seconds>

To list which clients are recognised by the module, use the following command:

   /msg *clientbuffer listclients


Identifiers

Our bouncers support passing a client identifier in the password line you use to authenticate as follows:

   YourUsername@ChosenIdentifier/Network:Password


Example Use Case

In this setup, 2 clients are configured using this module. One will be used on a PC to playback the whole of the buffer everytime the client connects and the other is configured for a mobile client where playing back the entire buffer causes client issues and the client disconnects frequently so we will only play back an hours worth of playback to that client.

For the PC client, use the following command to add it to the module:

   /msg *clientbuffer addclient PC

For the mobile client, use the following commands to add it to the module:

   /msg *clientbuffer addclient Mobile
   /msg *clientbuffer setclienttimelimit Mobile 3600

What should happen now is when you connect to your PC client, the entire buffer will be played back and when you connect to the Mobile client, only an hours worth of buffer will be played back. To login to the PC client, you need to use the following password line:

   YourUsername@PC/Network:Password

To login to the Mobile client use the following line:

   YourUsername@Mobile/Network:Password	

Useful Timeframes

The following timeframes are most commonly used with the setclienttimelimit command:

Timeframe Seconds
10 Minutes 600
30 Minutes 1800
1 Hour 3600
2 Hours 7200
6 Hours 21600
12 Hours 43200
1 Day 86400