FrRedmineReceivingEmails » History » Version 3
yannick quenec'hdu, 2010-06-23 02:55
En cours de rédaction
1 | 1 | yannick quenec'hdu | [[FrGuide]] |
---|---|---|---|
2 | |||
3 | h1. Recevoir des courriels |
||
4 | |||
5 | {{>toc}} |
||
6 | 2 | yannick quenec'hdu | |
7 | 1 | yannick quenec'hdu | Depuis la version 0.8, Redmine peut être configuré pour créer des demandes ou des commentaires directement par courriels. |
8 | |||
9 | h2. Mise en oeuvre |
||
10 | |||
11 | Vous pouvez configurer Redmine pour recevoir des courriels avec une des méthodes suivantes : |
||
12 | |||
13 | * Adresser des messages à partir de votre serveur de messagerie |
||
14 | ** Distant: Fonctionne avec un serveur de messagerie distant, les courriels sont traitées immédiatement, rapide (pas d'environnement à redémarrer) |
||
15 | ** Local: Nécessite quelques configuration sur votre serveur de messagerie local (ex. Postfix sendmail, etc.) |
||
16 | |||
17 | * Récupérer les courriels depuis un serveur IMAP ou POP3 : |
||
18 | ** Distant: Facile à mettre en oeuvre, ne nécessite pas de configurer le MTA, fonctionne avec un serveur de messagerie distant |
||
19 | ** Local: Le traitement n'est pas réalisé instantanément (un cron doit être ajouter pour lire périodiquement les courriels) |
||
20 | |||
21 | h3. Adresser des courriels à partir de votre serveur de messagerie |
||
22 | |||
23 | Un script autonome peut être utilisé pour transmettre des courriels entrants à partir de votre serveur de messagerie. |
||
24 | Ce script lit un flux de courriel depuis l'entrée standard et le transmet à Redmine via une requête HTTP. |
||
25 | Le fichier est accessible depuis le répertoire de redmine: @extra/mail_handler/rdm-mailhandler.rb@. |
||
26 | |||
27 | Pour pouvoir l'utiliser, vous devez activer l'API qui reçoit les courriels: |
||
28 | Aller dans > Administration > Configuration > Emails entrants, vérifier que la fonction *Activer le WS pour la réception d'emails* est bien cocher et saisir ou générer une clé secrète |
||
29 | |||
30 | copier le fichier @rdm-mailhandler.rb@ sur votre serveur de messagerie, vérifier qu'il possède les permissions pour s'exécuter et configurer le serveur de messagerie |
||
31 | |||
32 | Usage: |
||
33 | |||
34 | |||
35 | <pre> |
||
36 | rdm-mailhandler [options] --url=<Redmine URL> --key=<API key> |
||
37 | |||
38 | Required: |
||
39 | -u, --url URL of the Redmine server |
||
40 | -k, --key Redmine API key |
||
41 | |||
42 | General options: |
||
43 | -h, --help show this help |
||
44 | -v, --verbose show extra information |
||
45 | -V, --version show version information and exit |
||
46 | |||
47 | Issue attributes control options: |
||
48 | -p, --project=PROJECT identifier of the target project |
||
49 | -t, --tracker=TRACKER name of the target tracker |
||
50 | --category=CATEGORY name of the target category |
||
51 | --priority=PRIORITY name of the target priority |
||
52 | -o, --allow-override=ATTRS allow email content to override attributes |
||
53 | specified by previous options |
||
54 | ATTRS is a comma separated list of attributes |
||
55 | </pre> |
||
56 | |||
57 | Exemples: |
||
58 | |||
59 | <pre> |
||
60 | # No project specified. Emails MUST contain the 'Project' keyword: |
||
61 | rdm-mailhandler --url http://redmine.domain.foo --key secret |
||
62 | |||
63 | # Fixed project and default tracker specified, but emails can override |
||
64 | # both tracker and priority attributes: |
||
65 | rdm-mailhandler --url https://domain.foo/redmine --key secret \\ |
||
66 | --project foo \\ |
||
67 | --tracker bug \\ |
||
68 | --allow-override tracker,priority |
||
69 | </pre> |
||
70 | |||
71 | Ici un exemple pour les aliais Postfix: |
||
72 | |||
73 | <pre> |
||
74 | foo: "|/path/to/rdm-mailhandler.rb --url http://redmine.domain --key secret --project foo" |
||
75 | </pre> |
||
76 | |||
77 | h3. Récupérer les courriels depuis un serveur IMAP |
||
78 | 3 | yannick quenec'hdu | |
79 | Une tâche rake (@redmine:email:receive_imap@) peut être utilisée pour récupérer les courriels depuis un serveur IMAP. Quand vous exécutez la commande rake depuis un cron vous pouvez ajouter l'option @-f /path/to/redmine/appdir/Rakefile@ dans la commande, faute de quoi le fichier rake n'est pas trouvé. Voici un exemple de ligne pour un fichier cron qui récupère les courriels toutes les 30mn. |
||
80 | |||
81 | <code> |
||
82 | */30 * * * * redmineuser rake -f /path/to/redmine/appdir/Rakefile redmine:email:receive_imap RAILS_ENV="production" host=imap.foo.bar username=redmine@somenet.foo password=xxx |
||
83 | </code> |
||
84 | |||
85 | Cette ligne peut être ajouté sur une seule dans votre fichier cron. Vous pouvez aussi consulter d'autres exemple à la suite, qui montre les commandes rake sans l'option @-f@ et sans la partie cron |
||
86 | |||
87 | Il est nécessaire d'avoir configurer le firewall pour laisser sortir les connexion TCP pour le port IMAP 143. |
||
88 | |||
89 | Options IMAP disponibles: |
||
90 | <pre> |
||
91 | host=HOST IMAP server host (default: 127.0.0.1) |
||
92 | port=PORT IMAP server port (default: 143) |
||
93 | ssl=SSL Use SSL? (default: false) |
||
94 | username=USERNAME IMAP account |
||
95 | password=PASSWORD IMAP password |
||
96 | folder=FOLDER IMAP folder to read (default: INBOX) |
||
97 | move_on_success=MAILBOX move emails that were successfully received |
||
98 | to MAILBOX instead of deleting them |
||
99 | move_on_failure=MAILBOX move emails that were ignored to MAILBOX |
||
100 | </pre> |
||
101 | |||
102 | Options de contrôles des attributs des demandes: |
||
103 | <pre> |
||
104 | project=PROJECT identifier of the target project |
||
105 | tracker=TRACKER name of the target tracker |
||
106 | category=CATEGORY name of the target category |
||
107 | priority=PRIORITY name of the target priority |
||
108 | allow_override=ATTRS allow email content to override attributes |
||
109 | specified by previous options |
||
110 | ATTRS is a comma separated list of attributes |
||
111 | </pre> |
||
112 | |||
113 | |||
114 | Exemples de commandes rake: |
||
115 | |||
116 | <pre> |
||
117 | # No project specified. Emails MUST contain the 'Project' keyword: |
||
118 | |||
119 | rake redmine:email:receive_imap RAILS_ENV="production" \\ |
||
120 | host=imap.foo.bar username=redmine@somenet.foo password=xxx |
||
121 | |||
122 | |||
123 | # Fixed project and default tracker specified, but emails can override |
||
124 | # both tracker and priority attributes: |
||
125 | |||
126 | rake redmine:email:receive_imap RAILS_ENV="production" \\ |
||
127 | host=imap.foo.bar username=redmine@somenet.foo password=xxx ssl=1 \\ |
||
128 | project=foo \\ |
||
129 | tracker=bug \\ |
||
130 | allow_override=tracker,priority |
||
131 | |||
132 | # Move successful emails to the 'read' mailbox and failed emails to |
||
133 | # the 'failed' mailbox |
||
134 | |||
135 | rake redmine:email:receive_imap RAILS_ENV="production" \\ |
||
136 | host=imap.foo.bar username=redmine@somenet.foo password=xxx \\ |
||
137 | move_on_success=read move_on_failure=failed |
||
138 | |||
139 | </pre> |