Client Benno

Client Benno

Benno-client ist ein Kommandozeilen-Client für das REST API von Benno MailArchiv. Dieses Perl-Script kann als Basis für eigene Implementierungen genutzt werden.

De plus, il offre également la possibilité d'identifier de plus grandes quantités d'emails en fonction de critères de recherche et de les exporter du système, par exemple.

Requêtes de recherche

Benno Client ruft stellt Suchanfragen per REST-API an Benno MailArchiv. Die Anfragen können mit Hilfe der Lucene Query-Syntax formuliert werden.

Eine Suche gibt die Anzahl der gefundenen E-Mails anhand der Benno E-Mail Ids zurück. Die Anzahl der Rückgabewerte wird durch den Parameter --limit 20 festgelegt. Falls er nicht angegeben wird, ist die Voreinstellung 20.

# benno-client -q 'From:m.hendriks@hansen-und-meyer.de' 2016:446E2DD35A73880A569992D2CAC77EE78ACDA94383EA42247869D81CA5AD850800 2016:3B582513165E3BCEEF113F44F200FA9A4534EB3BFAE37264867745CE4EB4424500 2016:3B582513165E3BCEEF113F44F200FA9A4534EB3BFAE37264867745CE4EB4424500 3 emails trouvés (premier : 1, dernier : 20, limite : 20)

Die letzte (Status-)Zeile wird auf STDERR ausgegeben und kann mit 2>/dev/null entfernt werden. Damit kann die Liste als Eingabe zum Herunterladen der E-Mails dienen.

Exporter via ID

# benno-client -i 2012 : E51F8A601C08E09004C02833347EFC2D7AD92E757FE4CEC5B10AD869E0D5BB2800

Script d'exportation

Dans l'exemple ci-dessous, tous les courriels de l'utilisateur « m.hendriks@hansen-und-meyer.de » datant de 2017 doivent être exportés. Si plus de 10 000 courriels ont été archivés pour cet utilisateur, la limite doit être augmentée en conséquence.

#!/bin/bash
#
#
EXPORTDIR=/tmp/export
 
mkdir $EXPORTDIR
benno-client --limit 10000 -q '(Sender:m.hendriks@hansen-und-meyer.de OR Recipient:m.hendriks@hansen-und-meyer.de) AND Date:[201701010000 TO 201808271605]' 2>/dev/null | \
while read bennoId; do
  [ "$bennoId" = "No results found." ] && exit
  benno-client --export $EXPORTDIR --id $bennoId 
done

Paramètres d'appel

Usage: /usr/sbin/benno-client [-h] [-s <secret>] [-r <rest host>] [-c <container>]
  [-p <port>] <-q <query>|-i <mailid>>
 
    -c '    archive container
    -u|--scid <scid>' subcontainer id (if configured) --filter '<filter>' lucene filter string or file with filter --first '<num>' first email in response list -l|--limit '<num>' limit response list to <id>' fetch mail with id -j dump raw JSON response -p <query>' lucene query string or file with filter (search header as "HEADER-
benno-client.txt Dernière modification : 26/03/2025 à 14h34 par lwsystems