Bot Policy

From Furnet Wiki
Jump to: navigation, search

Summary

Furnet's Bot Policy is designed in the interest of all our users' enjoyment of the network, and their privacy. We recently changed our bot policy on the network from requiring explicit registration, to being a set of guidelines that all bots on the network must follow. If your bot doesn't play by the bot policy, we may remove it from the network if there is an adverse effect on the network, or your fellow Furnet users.

Please feel free to explore and extend your channel, but act in the interests of your fellow users.

The Obvious Stuff

Please don't:

  • Use your bot to spam other channels.
  • Use your bot to advertise, whether by /msg, /notify, /invite, /part messages or any other means. Seriously. We've all had enough of spammers.
  • Log discussion on a channel without periodically notifying occupants of the channel, or without having a warning in the channel topic.

Please do:

  • Include contact information for the owner in your bot's /whois.
  • Respect channel owner and operators' wishes if they do not want your bot to be present.

Bot Requirements

All bots on Furnet must:

  • Do something cool.
  • Use a unique ident (also known as a username) on the host from which they connect.
  • Use a registered nickname.
  • Not bridge channels with others on Furnet or other IRC networks.
  • Respect /kick and /bans, and not re-join a channel after being kicked, unless explicitly requested by a human.

On connection to Furnet, your bot must:

  • Set the +B mode on itself, to show that it is a bot.
  • Identify to Nickserv with its registered nickname.
  • Include in the bot's /whois contact information about the owner of the bot.

Operators of bots on Furnet must:

  • Keep your operating systems and bots up-to-date with any security updates.
  • Remove your bots from channels where they are not welcome.

Best Practices

Your bot should, when possible:

  • Use network services such as Chanserv to manage channel ACLs, bans and kicks. Feel free to fall back to doing manual /ban and /kick from your bot if network services are unavailable.
  • Part otherwise unoccupied channels. Please consider only real users, not other bots, when determining whether a channel is occupied. The +B mode is a good guide as to whether the other users are real, or mechanical.
  • Rate-limit reconnection to the network.
  • Obey Asimov's 3 laws.
  • Implement a 'help' command that gives a brief description of the bot.

Also, for other users' privacy, please do not:

  • Make channel logs available on the internet at large. Statistics are fine, but please don't include quotes or logs without users' explicit consent.

Need help?

We can't provide software development support, but if you have any queries about operation of bots on Furnet, please come and have a chat in #furnet. We don't bite, honest.