# sopel-chanlogs
A channel logging plugin for Sopel IRC bots
## Installing
Releases are hosted on PyPI, so after installing Sopel, all you need is `pip`:
```shell
$ pip install sopel-chanlogs
```
Enable the plugin with `sopel-plugins enable chanlogs`, if your bot
configuration requires it.
### Requirements
`sopel-chanlogs` requires only Sopel itself, version 8.0 or higher.
## Usage
### Configuration
The easiest way to configure `sopel-chanlogs` is via Sopel's configuration
wizard—simply run `sopel-plugins configure chanlogs` and complete the prompts.
All settings are optional, falling back on sensible defaults.
<dl>
<dt>
<tt>dir</tt>
</dt>
<dd>
Path to channel log storage directory. Default: <tt>~/chanlogs</tt>
</dd>
<dt>
<tt>by_day</tt>
</dt>
<dd>
Split log files by day. Default: <tt>True</tt>
</dd>
<dt>
<tt>privmsg</tt>
</dt>
<dd>
Record private messages. Default: <tt>False</tt>
</dd>
<dt>
<tt>microseconds</tt>
</dt>
<dd>
Include microseconds in log timestamps. Default: <tt>False</tt>
</dd>
<dt>
<tt>localtime</tt>
</dt>
<dd>
<p>
Attempt to use preferred timezone (the bot's
<tt>core.default_timezone</tt>) instead of UTC. Default: <tt>False</tt>
</p>
<p>
<em>
<strong>Please note</strong> that Sopel's default
<tt>default_timezone</tt> is UTC.
</em>
</p>
</dd>
</dl>
#### Advanced configuration
Log line templates can be overridden using the relevant setting from this list:
- `message_template`
- `action_template`
- `join_template`
- `part_template`
- `quit_template`
- `nick_template`
- `topic_template`
Each template is formatted using the following `{placeholder}` values:
- the `trigger`, with all of its attributes (see [Sopel's
documentation](https://sopel.chat/docs/trigger.html))
- the `date` in ISO format
- the `time` in ISO format
- the full `datetime` in ISO format
For convenience, the `message_template` also receives a `message` placeholder.
Please consult the plugin's code for current default templates.
## Changelog
### 0.3.0
First release as `sopel-chanlogs`, replacing `sopel_modules.chanlogs`.
Changed:
* Modernize packaging, target Sopel 8.0+, take advantage of new Sopel API
features, and support only Python 3.8+
Meta:
* Fixed package metadata to credit the original author(s) and current
maintainer(s) correctly
### 0.2.3
Fixed:
* Switch from obsolete `clock.tz` setting to `core.default_timezone` (#11)
Meta:
* Greatly improved documentation of settings (#12)
### 0.2.2
Changed:
* Replaced deprecated call to `SopelMemory.contains()` (#8)
### 0.2.1
Meta:
* Added project README file
* Use README as project's PyPI description
### 0.2.0
Changed:
* Target Sopel 7.x (#5)
Added:
* Support for logging topic changes (#3)
* Support for echo-message (#4)
Fixed:
* Install errors (#1)
* Startup/config glitches (#2)
### 0.1.0
First release of `sopel_modules.chanlogs`.
Raw data
{
"_id": null,
"home_page": null,
"name": "sopel-chanlogs",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.8",
"maintainer_email": "dgw <dgw@technobabbl.es>",
"keywords": "sopel, plugin, bot, irc",
"author": "David Baumgold, Elsie Powell",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/ac/b8/1086e74f4ecbf0491721ff978160d4494399b5b1a79487a97649a630cb21/sopel_chanlogs-0.3.0.tar.gz",
"platform": "Linux x86, x86-64",
"description": "# sopel-chanlogs\n\nA channel logging plugin for Sopel IRC bots\n\n## Installing\n\nReleases are hosted on PyPI, so after installing Sopel, all you need is `pip`:\n\n```shell\n$ pip install sopel-chanlogs\n```\n\nEnable the plugin with `sopel-plugins enable chanlogs`, if your bot\nconfiguration requires it.\n\n### Requirements\n\n`sopel-chanlogs` requires only Sopel itself, version 8.0 or higher.\n\n## Usage\n\n### Configuration\n\nThe easiest way to configure `sopel-chanlogs` is via Sopel's configuration\nwizard\u2014simply run `sopel-plugins configure chanlogs` and complete the prompts.\nAll settings are optional, falling back on sensible defaults.\n\n<dl>\n <dt>\n <tt>dir</tt>\n </dt>\n <dd>\n Path to channel log storage directory. Default: <tt>~/chanlogs</tt>\n </dd>\n <dt>\n <tt>by_day</tt>\n </dt>\n <dd>\n Split log files by day. Default: <tt>True</tt>\n </dd>\n <dt>\n <tt>privmsg</tt>\n </dt>\n <dd>\n Record private messages. Default: <tt>False</tt>\n </dd>\n <dt>\n <tt>microseconds</tt>\n </dt>\n <dd>\n Include microseconds in log timestamps. Default: <tt>False</tt>\n </dd>\n <dt>\n <tt>localtime</tt>\n </dt>\n <dd>\n <p>\n Attempt to use preferred timezone (the bot's\n <tt>core.default_timezone</tt>) instead of UTC. Default: <tt>False</tt>\n </p>\n <p>\n <em>\n <strong>Please note</strong> that Sopel's default\n <tt>default_timezone</tt> is UTC.\n </em>\n </p>\n </dd>\n</dl>\n\n#### Advanced configuration\n\nLog line templates can be overridden using the relevant setting from this list:\n\n- `message_template`\n- `action_template`\n- `join_template`\n- `part_template`\n- `quit_template`\n- `nick_template`\n- `topic_template`\n\nEach template is formatted using the following `{placeholder}` values:\n\n- the `trigger`, with all of its attributes (see [Sopel's\n documentation](https://sopel.chat/docs/trigger.html))\n- the `date` in ISO format\n- the `time` in ISO format\n- the full `datetime` in ISO format\n\nFor convenience, the `message_template` also receives a `message` placeholder.\n\nPlease consult the plugin's code for current default templates.\n\n## Changelog\n\n### 0.3.0\n\nFirst release as `sopel-chanlogs`, replacing `sopel_modules.chanlogs`.\n\nChanged:\n* Modernize packaging, target Sopel 8.0+, take advantage of new Sopel API\n features, and support only Python 3.8+\n\nMeta:\n* Fixed package metadata to credit the original author(s) and current\n maintainer(s) correctly\n\n\n### 0.2.3\n\nFixed:\n* Switch from obsolete `clock.tz` setting to `core.default_timezone` (#11)\n\nMeta:\n* Greatly improved documentation of settings (#12)\n\n\n### 0.2.2\n\nChanged:\n* Replaced deprecated call to `SopelMemory.contains()` (#8)\n\n\n### 0.2.1\n\nMeta:\n* Added project README file\n* Use README as project's PyPI description\n\n\n### 0.2.0\n\nChanged:\n* Target Sopel 7.x (#5)\n\nAdded:\n* Support for logging topic changes (#3)\n* Support for echo-message (#4)\n\nFixed:\n* Install errors (#1)\n* Startup/config glitches (#2)\n\n\n### 0.1.0\n\nFirst release of `sopel_modules.chanlogs`.\n",
"bugtrack_url": null,
"license": "EFL-2.0",
"summary": "A channel logging plugin for Sopel IRC bots",
"version": "0.3.0",
"project_urls": {
"Bug Tracker": "https://github.com/sopel-irc/sopel-chanlogs/issues",
"Homepage": "https://github.com/sopel-irc/sopel-chanlogs"
},
"split_keywords": [
"sopel",
" plugin",
" bot",
" irc"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "11ead5bb43c203bd3bfae90f8fc9a83257f2654449d21d3ffbf67ea867fa3d76",
"md5": "8e679567c6f884c6d8f51fbf1f9d3aaa",
"sha256": "e5d2c19481c213b38c434f3f238cc280e72e0c88691abe8cadd97b9c888af3f9"
},
"downloads": -1,
"filename": "sopel_chanlogs-0.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8e679567c6f884c6d8f51fbf1f9d3aaa",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.8",
"size": 6220,
"upload_time": "2024-06-21T22:03:55",
"upload_time_iso_8601": "2024-06-21T22:03:55.370703Z",
"url": "https://files.pythonhosted.org/packages/11/ea/d5bb43c203bd3bfae90f8fc9a83257f2654449d21d3ffbf67ea867fa3d76/sopel_chanlogs-0.3.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "acb81086e74f4ecbf0491721ff978160d4494399b5b1a79487a97649a630cb21",
"md5": "fede1565fdc513242b4d7075e2b3b5c6",
"sha256": "a0c4a8da051c5c35ab0791a0de4de4d08fbe6a3e9cdbc40cc4dda19b477605af"
},
"downloads": -1,
"filename": "sopel_chanlogs-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "fede1565fdc513242b4d7075e2b3b5c6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.8",
"size": 5863,
"upload_time": "2024-06-21T22:03:56",
"upload_time_iso_8601": "2024-06-21T22:03:56.434936Z",
"url": "https://files.pythonhosted.org/packages/ac/b8/1086e74f4ecbf0491721ff978160d4494399b5b1a79487a97649a630cb21/sopel_chanlogs-0.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-06-21 22:03:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "sopel-irc",
"github_project": "sopel-chanlogs",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "sopel-chanlogs"
}