To create new wiki account, please join us on #znc at freenode and ask admins to create a wiki account for you. You can say thanks to spambots for this inconvenience.

Difference between revisions of "Chanfilter"

From ZNC
Jump to: navigation, search
m (Category:External Modules)
(Restore Chanfilter from archive.org - 2016/11/07)
 
(4 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
<!--{{External Module}}-->
 
<!--{{External Module}}-->
{{ambox | type = delete | text = '''This external module is a work in progress.'''<br/><small>Please note that it requires the latest development version of ZNC.<br/>Contact the author if you have any questions, but feel free to ask on IRC, someone might able to help you there, too.</small>}}
+
{{External Module}}
  
The channel filter module maintains client specific channel lists for identified clients. A typical use case is to have a subset of channels visible for a mobile client.
+
The channel filter module maintains client specific channel lists for identified clients. A typical use case is to have a subset of channels visible to a mobile client.
  
The source code and more detailed documentation is available on [https://github.com/jpnurmi/znc-chanfilter GitHub]. See also instructions for [[compiling modules]].
+
The source code is available on [https://github.com/jpnurmi/znc-chanfilter GitHub]. See also instructions for [[compiling modules]].
  
== Overview ==
+
=== Usage ===
  
When an identified client connects ZNC first time, all channels are joined. The list of channels is automatically updated when the client joins and parts channels. Next time the identified client connects, it joins the channels it had visible from the last session.
+
When a client connects to ZNC for the first time, all channels are joined. The list of channels is automatically updated when the client joins and parts channels. Next time the identified client connects, it joins the channels it had visible from the last session.
  
== Usage ==
+
This only happens to clients that are identified and ''added'' (see below).
 +
 
 +
Note that because this module intercepts <code>/part</code>, joining a new channel and then parting it in an identified client will leave it attached in ZNC (and other clients). Typing <code>/part #channel</code> another time will pass the action through to ZNC and part the channel on the network.
  
 
{{Module arguments|no}}
 
{{Module arguments|no}}
  
== Identifiers ==
+
=== Identifiers ===
  
 
ZNC supports passing a client identifier in the password:
 
ZNC supports passing a client identifier in the password:

Latest revision as of 19:24, 2 April 2017

The channel filter module maintains client specific channel lists for identified clients. A typical use case is to have a subset of channels visible to a mobile client.

The source code is available on GitHub. See also instructions for compiling modules.

Usage[edit]

When a client connects to ZNC for the first time, all channels are joined. The list of channels is automatically updated when the client joins and parts channels. Next time the identified client connects, it joins the channels it had visible from the last session.

This only happens to clients that are identified and added (see below).

Note that because this module intercepts /part, joining a new channel and then parting it in an identified client will leave it attached in ZNC (and other clients). Typing /part #channel another time will pass the action through to ZNC and part the channel on the network.

Arguments

This user module takes no arguments.

Read loading modules to learn more about loading modules.

Identifiers[edit]

ZNC supports passing a client identifier in the password:

username@identifier/network:password

or in the username:

username@identifier/network

Commands[edit]

Add a client:

/msg *chanfilter AddClient <identifier>

Delete a client:

/msg *chanfilter DelClient <identifier>

List all channels of a client:

/msg *chanfilter ListChans [client]

List known clients and their hidden channels:

/msg *chanfilter ListClients

Restore the hidden channels of a client:

/msg *chanfilter RestoreChans [client]