Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add basic instructions to spam-status special scenario. #59

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
17 changes: 16 additions & 1 deletion manual/customize/basics-scenarios.md
Original file line number Diff line number Diff line change
Expand Up @@ -418,7 +418,22 @@ The goal is to block messages or other service requests from unwanted users. The
`spam-status` special scenario
------------------------------

(Work in progress)
The scenario `spam_status.x-spam-status` determines whether an incoming
message is tagged as SPAM.
Comment on lines +421 to +422

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some more explanations about how is triggered the scenario spam_status.x-spam-status could be welcomed ;-)
(I guess that setting in global or robot configuration a line spam_status foo implies sympa to search for a spam_status.foo scenario)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, it works like any other scenario: the name of the scenario file is composed of the name of the parameter and its value inf the configuration:

parameter.value

I can add it as a remark as the scenario is disconcerting. At least to specify that this parameter can be set in sympa.conf and robot.conf only.
However, we must add that this evaluation always_ takes place for any incoming message.
The only way to skip it is to make a voluntary error in the config file, I guess: pointing a scenario that does not exist. But then you will fill your logs with missing scenario errors.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I updated my PR on the PR with your remarks.
Note that the lnk to the spam_status parameter won't work in the markdown file, as the parameter definition URL is completely computed from the parameter definition in the Sympa code. Consequently, it is not present in the documentation sources.
You can read it here: https://sympa-community.github.io/gpldoc/man/sympa_config.5.html#spam_status
Thanks @dcaillibaud!


You can use the result in your *send* scenarios, common use cases are below.

Reject the message:

``` code
equal([msg->spam_status],'spam') smtp,md5,dkim,smime -> reject,quiet
```

Force moderation:

``` code
equal([msg->spam_status],'spam') smtp,md5,dkim,smime -> editorkey,quiet
```

Hiding scenario files
---------------------
Expand Down