From scm@users.chorem.org Sun May 25 14:11:08 2014
From: "chorem.org scm" <scm@users.chorem.org>
To: say-my-texts-commits@list.chorem.org
Subject: [Say-my-texts-commits] 09/10: add doc + remove widget code (it has
	been moved to a branch)
Date: Sun, 25 May 2014 14:11:14 +0200
Message-ID: <20140525121108.6C2811808A4@goh.codelutin.com>
In-Reply-To: <20140525121106.9567.56444@nuiton.codelutin.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============4570158544192166124=="

--===============4570158544192166124==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

This is an automated email from the git hooks/post-receive script.

New commit to branch devel in repository say-my-texts.

See http://git.chorem.org/say-my-texts.git

commit aed491816871f68621e51c73eb4e69a63f9d8467
Author: Kevin Morin <morin@codelutin.com>
Date:   Wed May 14 17:52:04 2014 +0000

    add doc + remove widget code (it has been moved to a branch)
---
 AndroidManifest.xml                                |   8 --
 res/drawable-hdpi-v14/appwidget_bg_pressed.9.png   | Bin 798 -> 0 bytes
 res/drawable-hdpi-v14/appwidget_dark_bg.9.png      | Bin 731 -> 0 bytes
 .../appwidget_dark_bg_focused.9.png                | Bin 856 -> 0 bytes
 res/drawable-hdpi/appwidget_bg_pressed.9.png       | Bin 3098 -> 0 bytes
 res/drawable-hdpi/appwidget_dark_bg.9.png          | Bin 2909 -> 0 bytes
 res/drawable-hdpi/appwidget_dark_bg_focused.9.png  | Bin 3273 -> 0 bytes
 res/drawable-mdpi-v14/appwidget_bg_pressed.9.png   | Bin 502 -> 0 bytes
 res/drawable-mdpi-v14/appwidget_dark_bg.9.png      | Bin 467 -> 0 bytes
 .../appwidget_dark_bg_focused.9.png                | Bin 523 -> 0 bytes
 res/drawable-mdpi/appwidget_bg_pressed.9.png       | Bin 1908 -> 0 bytes
 res/drawable-mdpi/appwidget_dark_bg.9.png          | Bin 1784 -> 0 bytes
 res/drawable-mdpi/appwidget_dark_bg_focused.9.png  | Bin 2040 -> 0 bytes
 res/drawable-xhdpi-v14/appwidget_bg_pressed.9.png  | Bin 1098 -> 0 bytes
 res/drawable-xhdpi-v14/appwidget_dark_bg.9.png     | Bin 1005 -> 0 bytes
 .../appwidget_dark_bg_focused.9.png                | Bin 1135 -> 0 bytes
 res/drawable/appwidget_dark_bg_clickable.xml       |  24 -----
 res/layout/say_my_texts_widget.xml                 |  22 ----
 res/values/strings.xml                             |   2 +-
 res/xml/say_my_texts_widget_info.xml               |   9 --
 .../saymytexts/SayMyTextsWidgetProvider.java       | 111 -------------------=
--
 src/site/fr/rst/dev.rst                            |   4 +-
 src/site/fr/rst/index.rst                          |   6 +-
 src/site/fr/rst/user.rst                           |  27 ++++-
 src/site/rst/dev.rst                               |   4 +-
 src/site/rst/index.rst                             |   6 +-
 src/site/rst/user.rst                              |  26 ++++-
 27 files changed, 58 insertions(+), 191 deletions(-)

diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index df9b9ab..36af8fc 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -57,13 +57,5 @@
               android:finishOnTaskLaunch=3D"true"
               android:configChanges=3D"orientation|screenSize|keyboardHidden=
"/>
=20
-    <receiver android:name=3D".SayMyTextsWidgetProvider" >
-      <intent-filter>
-        <action android:name=3D"android.appwidget.action.APPWIDGET_UPDATE" />
-      </intent-filter>
-      <meta-data android:name=3D"android.appwidget.provider"
-                 android:resource=3D"@xml/say_my_texts_widget_info" />
-    </receiver>
-
   </application>
 </manifest>
diff --git a/res/drawable-hdpi-v14/appwidget_bg_pressed.9.png b/res/drawable-=
hdpi-v14/appwidget_bg_pressed.9.png
deleted file mode 100644
index efacbcf..0000000
Binary files a/res/drawable-hdpi-v14/appwidget_bg_pressed.9.png and /dev/null=
 differ
diff --git a/res/drawable-hdpi-v14/appwidget_dark_bg.9.png b/res/drawable-hdp=
i-v14/appwidget_dark_bg.9.png
deleted file mode 100644
index 02ee440..0000000
Binary files a/res/drawable-hdpi-v14/appwidget_dark_bg.9.png and /dev/null di=
ffer
diff --git a/res/drawable-hdpi-v14/appwidget_dark_bg_focused.9.png b/res/draw=
able-hdpi-v14/appwidget_dark_bg_focused.9.png
deleted file mode 100644
index ccc0177..0000000
Binary files a/res/drawable-hdpi-v14/appwidget_dark_bg_focused.9.png and /dev=
/null differ
diff --git a/res/drawable-hdpi/appwidget_bg_pressed.9.png b/res/drawable-hdpi=
/appwidget_bg_pressed.9.png
deleted file mode 100644
index 03ca2a1..0000000
Binary files a/res/drawable-hdpi/appwidget_bg_pressed.9.png and /dev/null dif=
fer
diff --git a/res/drawable-hdpi/appwidget_dark_bg.9.png b/res/drawable-hdpi/ap=
pwidget_dark_bg.9.png
deleted file mode 100644
index 3b29eae..0000000
Binary files a/res/drawable-hdpi/appwidget_dark_bg.9.png and /dev/null differ
diff --git a/res/drawable-hdpi/appwidget_dark_bg_focused.9.png b/res/drawable=
-hdpi/appwidget_dark_bg_focused.9.png
deleted file mode 100644
index 9fae722..0000000
Binary files a/res/drawable-hdpi/appwidget_dark_bg_focused.9.png and /dev/nul=
l differ
diff --git a/res/drawable-mdpi-v14/appwidget_bg_pressed.9.png b/res/drawable-=
mdpi-v14/appwidget_bg_pressed.9.png
deleted file mode 100644
index 5c03b8a..0000000
Binary files a/res/drawable-mdpi-v14/appwidget_bg_pressed.9.png and /dev/null=
 differ
diff --git a/res/drawable-mdpi-v14/appwidget_dark_bg.9.png b/res/drawable-mdp=
i-v14/appwidget_dark_bg.9.png
deleted file mode 100644
index a245d91..0000000
Binary files a/res/drawable-mdpi-v14/appwidget_dark_bg.9.png and /dev/null di=
ffer
diff --git a/res/drawable-mdpi-v14/appwidget_dark_bg_focused.9.png b/res/draw=
able-mdpi-v14/appwidget_dark_bg_focused.9.png
deleted file mode 100644
index fa2d682..0000000
Binary files a/res/drawable-mdpi-v14/appwidget_dark_bg_focused.9.png and /dev=
/null differ
diff --git a/res/drawable-mdpi/appwidget_bg_pressed.9.png b/res/drawable-mdpi=
/appwidget_bg_pressed.9.png
deleted file mode 100644
index d060b77..0000000
Binary files a/res/drawable-mdpi/appwidget_bg_pressed.9.png and /dev/null dif=
fer
diff --git a/res/drawable-mdpi/appwidget_dark_bg.9.png b/res/drawable-mdpi/ap=
pwidget_dark_bg.9.png
deleted file mode 100644
index afe41b6..0000000
Binary files a/res/drawable-mdpi/appwidget_dark_bg.9.png and /dev/null differ
diff --git a/res/drawable-mdpi/appwidget_dark_bg_focused.9.png b/res/drawable=
-mdpi/appwidget_dark_bg_focused.9.png
deleted file mode 100644
index 8b4ce3f..0000000
Binary files a/res/drawable-mdpi/appwidget_dark_bg_focused.9.png and /dev/nul=
l differ
diff --git a/res/drawable-xhdpi-v14/appwidget_bg_pressed.9.png b/res/drawable=
-xhdpi-v14/appwidget_bg_pressed.9.png
deleted file mode 100644
index 97a3ba0..0000000
Binary files a/res/drawable-xhdpi-v14/appwidget_bg_pressed.9.png and /dev/nul=
l differ
diff --git a/res/drawable-xhdpi-v14/appwidget_dark_bg.9.png b/res/drawable-xh=
dpi-v14/appwidget_dark_bg.9.png
deleted file mode 100644
index 7ccb762..0000000
Binary files a/res/drawable-xhdpi-v14/appwidget_dark_bg.9.png and /dev/null d=
iffer
diff --git a/res/drawable-xhdpi-v14/appwidget_dark_bg_focused.9.png b/res/dra=
wable-xhdpi-v14/appwidget_dark_bg_focused.9.png
deleted file mode 100644
index da9289e..0000000
Binary files a/res/drawable-xhdpi-v14/appwidget_dark_bg_focused.9.png and /de=
v/null differ
diff --git a/res/drawable/appwidget_dark_bg_clickable.xml b/res/drawable/appw=
idget_dark_bg_clickable.xml
deleted file mode 100644
index 7cfc9d2..0000000
--- a/res/drawable/appwidget_dark_bg_clickable.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<!--
-  Copyright 2011 Google Inc.
-
-  Licensed under the Apache License, Version 2.0 (the "License");
-  you may not use this file except in compliance with the License.
-  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-  -->
-
-<selector xmlns:android=3D"http://schemas.android.com/apk/res/android">
-    <item android:drawable=3D"@drawable/appwidget_bg_pressed" android:state_=
pressed=3D"true" />
-    <item android:drawable=3D"@drawable/appwidget_dark_bg_focused"
-        android:state_focused=3D"true"
-        android:state_enabled=3D"true"
-        android:state_window_focused=3D"true" />
-    <item android:drawable=3D"@drawable/appwidget_dark_bg" />
-</selector>
diff --git a/res/layout/say_my_texts_widget.xml b/res/layout/say_my_texts_wid=
get.xml
deleted file mode 100644
index f4c634f..0000000
--- a/res/layout/say_my_texts_widget.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version=3D"1.0" encoding=3D"utf-8"?>
-
-<LinearLayout xmlns:android=3D"http://schemas.android.com/apk/res/android"
-             android:id=3D"@+id/say_my_texts_widget"
-             android:layout_width=3D"wrap_content"
-             android:layout_height=3D"wrap_content"
-             android:orientation=3D"vertical"
-             android:gravity=3D"center"
-             android:padding=3D"2dp"
-             android:background=3D"@drawable/appwidget_dark_bg_clickable">
-
-  <ImageView android:layout_width=3D"wrap_content"
-             android:layout_height=3D"wrap_content"
-             android:src=3D"@drawable/logo_small"/>
-
-  <ImageView android:id=3D"@+id/say_my_texts_widget_onoff_icon"
-             android:layout_width=3D"wrap_content"
-             android:layout_height=3D"wrap_content"
-             android:layout_marginTop=3D"2dp"
-             android:layout_marginBottom=3D"2dp"/>
-
-</LinearLayout>
\ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index f67cb39..ed08936 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -36,7 +36,7 @@
   <string name=3D"send_sms_confirmation">You dictated: %s. Would you like to=
 confirm, modify ou cancel?</string>
=20
   <string name=3D"call_action">call</string>
-  <string name=3D"answer_action">answer</string>
+  <string name=3D"answer_action">reply</string>
   <string name=3D"quit_action">nothing</string>
=20
   <string name=3D"confirm_action">confirm</string>
diff --git a/res/xml/say_my_texts_widget_info.xml b/res/xml/say_my_texts_widg=
et_info.xml
deleted file mode 100644
index c8bd497..0000000
--- a/res/xml/say_my_texts_widget_info.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version=3D"1.0" encoding=3D"utf-8"?>
-
-<appwidget-provider xmlns:android=3D"http://schemas.android.com/apk/res/andr=
oid"
-                    android:minWidth=3D"40dp"
-                    android:minHeight=3D"40dp"
-                    android:updatePeriodMillis=3D"0"
-                    android:initialLayout=3D"@layout/say_my_texts_widget"
-                    android:resizeMode=3D"none">
-</appwidget-provider>
\ No newline at end of file
diff --git a/src/org/chorem/android/saymytexts/SayMyTextsWidgetProvider.java =
b/src/org/chorem/android/saymytexts/SayMyTextsWidgetProvider.java
deleted file mode 100644
index 16bd523..0000000
--- a/src/org/chorem/android/saymytexts/SayMyTextsWidgetProvider.java
+++ /dev/null
@@ -1,111 +0,0 @@
-package org.chorem.android.saymytexts;
-
-/*
- * #%L
- * Say My Texts
- * $Id:$
- * $HeadURL:$
- * %%
- * Copyright (C) 2014 Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *=20
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *=20
- * You should have received a copy of the GNU General Public
- * License along with this program.  If not, see
- * <http://www.gnu.org/licenses/gpl-3.0.html>.
- * #L%
- */
-
-import android.app.PendingIntent;
-import android.appwidget.AppWidgetManager;
-import android.appwidget.AppWidgetProvider;
-import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.preference.PreferenceManager;
-import android.util.Log;
-import android.widget.RemoteViews;
-
-/**
- * @author Kevin Morin (Code Lutin)
- * @since x.x
- */
-public class SayMyTextsWidgetProvider extends AppWidgetProvider {
-
-    private static final String TAG =3D "SayMyTextsWidgetProvider";
-
-    protected static final String CLICK_ACTION =3D "org.chorem.android.saymy=
texts.action.APPWIDGET_CLICKED";
-
-    @Override
-    public void onUpdate(final Context context, final AppWidgetManager appWi=
dgetManager, int[] appWidgetIds) {
-        final int N =3D appWidgetIds.length;
-
-        // Perform this loop procedure for each App Widget that belongs to t=
his provider
-        for (int i =3D 0; i < N; i++) {
-            final int appWidgetId =3D appWidgetIds[i];
-
-            // Create an Intent to call this onReceive method
-            Intent intent =3D new Intent(context, getClass());
-            intent.setAction(CLICK_ACTION);
-            PendingIntent pendingIntent =3D PendingIntent.getBroadcast(conte=
xt, 0, intent, 0);
-
-            // Get the layout for the App Widget and attach an on-click list=
ener
-            // to the button
-            RemoteViews views =3D updateButtonState(context);
-            views.setOnClickPendingIntent(R.id.say_my_texts_widget, pendingI=
ntent);
-
-            //TODO
-            PreferenceManager.getDefaultSharedPreferences(context)
-                    .registerOnSharedPreferenceChangeListener(new SharedPref=
erences.OnSharedPreferenceChangeListener() {
-                        @Override
-                        public void onSharedPreferenceChanged(SharedPreferen=
ces sharedPreferences, String key) {
-//                            String enableReadingKey =3D context.getString(=
R.string.preference_enable_reading_key);
-//                            if (key.equals(enableReadingKey)) {
-//                                RemoteViews views =3D updateButtonState(co=
ntext);
-//                                appWidgetManager.updateAppWidget(appWidget=
Id, views);
-//                            }
-                        }
-                    });
-
-            // Tell the AppWidgetManager to perform an update on the current=
 app widget
-            appWidgetManager.updateAppWidget(appWidgetId, views);
-        }
-    }
-
-    @Override
-    public void onReceive(Context context, Intent intent) {
-        super.onReceive(context, intent);
-        Log.d(TAG, "on receive " + intent.getAction());
-        if (CLICK_ACTION.equals(intent.getAction())) {
-            SharedPreferences sharedPref =3D PreferenceManager.getDefaultSha=
redPreferences(context);
-//            String key =3D context.getString(R.string.preference_enable_re=
ading_key);
-//            boolean enabled =3D sharedPref.getBoolean(key, true);
-//            Log.d(TAG, "enabled " + enabled);
-//            sharedPref.edit().putBoolean(key, !enabled).commit();
-        }
-    }
-
-    protected RemoteViews updateButtonState(Context context) {
-        SharedPreferences sharedPreferences =3D PreferenceManager.getDefault=
SharedPreferences(context);
-//        String key =3D context.getString(R.string.preference_enable_readin=
g_key);
-//
-//        boolean enabled =3D sharedPreferences.getBoolean(key, true);
-//        int drawableId =3D enabled ?
-//                android.R.drawable.button_onoff_indicator_on :
-//                android.R.drawable.button_onoff_indicator_off;
-//
-//        RemoteViews views =3D new RemoteViews(context.getPackageName(), R.=
layout.say_my_texts_widget);
-//        views.setImageViewResource(R.id.say_my_texts_widget_onoff_icon, dr=
awableId);
-
-//        return views;
-        return null;
-    }
-}
diff --git a/src/site/fr/rst/dev.rst b/src/site/fr/rst/dev.rst
index 8f97972..b41c186 100644
--- a/src/site/fr/rst/dev.rst
+++ b/src/site/fr/rst/dev.rst
@@ -27,7 +27,9 @@ Documentation d=C3=A9veloppeur
=20
 L'application est compos=C3=A9e :
=20
-- d'un service qui lit les SMS =C3=A0 voix haute
+- d'un service qui lit les SMS =C3=A0 voix haute et g=C3=A8re les commandes =
vocales
 - d'une activit=C3=A9 de configuration
 - d'un *BroadcastReceiver* qui re=C3=A7oit les SMS et =C3=A9coute les connex=
ions bluetooth
+- d'un *BroadcastReceiver* qui re=C3=A7oit les commandes vocales
+- d'un *BroadcastReceiver* qui re=C3=A7oit le texte dict=C3=A9 en r=C3=A9pon=
se
 - d'une application pour configurer le rapporteur de plantage
\ No newline at end of file
diff --git a/src/site/fr/rst/index.rst b/src/site/fr/rst/index.rst
index 02edd02..b37729c 100644
--- a/src/site/fr/rst/index.rst
+++ b/src/site/fr/rst/index.rst
@@ -25,6 +25,6 @@
 Bienvenue sur le site de Say My Texts
 #####################################
=20
-Say My Texts est une application Android qui permet de lire =C3=A0 haute voi=
x les SMS que vous recevez
-quand des =C3=A9couteurs sont branch=C3=A9s ou que le t=C3=A9l=C3=A9phone es=
t connect=C3=A9 =C3=A0 un kit mains-libres bluetooth.
-Ceci est particuli=C3=A8rement utile en v=C3=A9lo, quand on court ou en voit=
ure.
\ No newline at end of file
+Say My Texts est une application Android qui permet de lire =C3=A0 haute voi=
x les SMS que vous recevez.
+Ceci est particuli=C3=A8rement utile en v=C3=A9lo, quand on court ou en voit=
ure.
+Vous pouvez =C3=A9galement r=C3=A9pondre =C3=A0 l'exp=C3=A9diteur soit en l'=
appelant soit en dictant la r=C3=A9ponse.
\ No newline at end of file
diff --git a/src/site/fr/rst/user.rst b/src/site/fr/rst/user.rst
index df21573..5059090 100644
--- a/src/site/fr/rst/user.rst
+++ b/src/site/fr/rst/user.rst
@@ -52,6 +52,10 @@ L'application a besoin des permissions suivantes :
     pour trouver le nom du contact =C3=A0 partir du num=C3=A9ro de l'envoyeur
 :BLUETOOTH:
     pour acc=C3=A9der aux appareils bluetooth connect=C3=A9s
+:RECORD_AUDIO:
+    pour les commandes vocales et dicter la r=C3=A9ponse
+:CALL_PHONE:
+    pour rappeler l'exp=C3=A9diteur
=20
 Configuration
 ~~~~~~~~~~~~~
@@ -59,7 +63,9 @@ Configuration
 Le lancement de l'application depuis le menu ouvre la configuration de l'app=
lication.
 Vous pouvez :
=20
-- activer ou d=C3=A9sactiver la lecture
+- activer ou d=C3=A9sactiver la lecture en fonction du branchement ou non d'=
un casque ou de la connexion d'un appareil bluetooth
+- activer l'int=C3=A9raction =C3=A0 la r=C3=A9ception d'un message
+- si l'int=C3=A9raction est activ=C3=A9e, vous pouvez choisir le nombre d'es=
sais de reconnaissance des commandes vocales (3 par d=C3=A9faut)
 - activer ou d=C3=A9sactiver le `mode Heisendroid`_.
 - vous envoyer un SMS pour tester la lecture
=20
@@ -75,7 +81,20 @@ et suivie de "*You're goddamn right!*". Il s'agit l=C3=A0 =
aussi d'une r=C3=A9f=C3=A9rence =C3=A0
=20
 .. _mode Heisendroid: #Mode_Heisendroid
=20
-Widget
-~~~~~~
+Int=C3=A9ractions
+~~~~~~~~~~~~
+
+Si l'int=C3=A9raction est activ=C3=A9e, lorsque vous recevez un SMS, l'appli=
cation vous propose 3 possibilit=C3=A9s :
+
+- appeler l'exp=C3=A9diteur (d=C3=AEtes "appeler")
+- r=C3=A9pondre par SMS en dictant la r=C3=A9ponse (d=C3=AEtes "r=C3=A9pondr=
e")
+- ne rien faire (d=C3=AEtes "rien")
+
+Si vous choisissez de r=C3=A9pondre par SMS, vous devrez alors dicter la r=
=C3=A9ponse. L'application vous =C3=A9noncera ce qu'elle a compris.
+Vous pourrez alors :
+
+- confirmer et envoyer la r=C3=A9ponse (d=C3=AEtes "confirmer")
+- redicter le SMS (d=C3=AEtes "corriger")
+- annuler la r=C3=A9ponse et quitter (d=C3=AEtes "annuler")
=20
-Le widget vous permet d'activer ou d=C3=A9sactiver la lecture depuis l'=C3=
=A9cran d'accueil.
\ No newline at end of file
+Si l'application ne comprend pas ce que vous avez dit (ce qui arrive malheur=
eusement), elle vous demandera de r=C3=A9p=C3=A9ter.
\ No newline at end of file
diff --git a/src/site/rst/dev.rst b/src/site/rst/dev.rst
index a29e401..e041486 100644
--- a/src/site/rst/dev.rst
+++ b/src/site/rst/dev.rst
@@ -27,7 +27,9 @@ Developer documentation
=20
 The application is composed of:
=20
-- a service which reads the SMS out loud
+- a service which reads the SMS out loud and manage the vocal commands
 - an activity for the settings
 - a *BroadcastReceiver* which receives the SMS and listens to the bluetooth =
connections
+- a *BroadcastReceiver* which receives the vocal commands
+- a *BroadcastReceiver* which receives the dictated reply
 - an application to setup the crash report
\ No newline at end of file
diff --git a/src/site/rst/index.rst b/src/site/rst/index.rst
index 152c1f8..49c8d35 100644
--- a/src/site/rst/index.rst
+++ b/src/site/rst/index.rst
@@ -25,6 +25,6 @@
 Welcome to Say My Texts website
 ###############################
=20
-Say My Texts is an Android application which reads out loud the SMS you rece=
ive while a headset is plugged
-or a bluetooth handfree is connected.
-This is particulary useful when you are riding, running or driving.
\ No newline at end of file
+Say My Texts is an Android application which reads out loud the SMS you rece=
ive.
+This is particulary useful when you are riding, running or driving.
+You also can reply to the sender by calling him or by dictating the reply.
\ No newline at end of file
diff --git a/src/site/rst/user.rst b/src/site/rst/user.rst
index a80cc71..62b1c6f 100644
--- a/src/site/rst/user.rst
+++ b/src/site/rst/user.rst
@@ -47,6 +47,10 @@ The application needs the following permissions:
 :MODIFY_AUDIO_SETTINGS: the voice synthetizer needs it
 :READ_CONTACTS: to match the phone number of the sender with the contact name
 :BLUETOOTH: to get the connected devices
+:RECORD_AUDIO:
+      pour les commandes vocales et dicter la r=C3=A9ponse
+:CALL_PHONE:
+      pour rappeler l'exp=C3=A9diteur
=20
=20
 Settings
@@ -55,7 +59,9 @@ Settings
 When you launch the application from the menu, the settings open.
 You can:
=20
-- enable or disable the reading
+- enable or disable the reading depending if a headset is plugged or not or =
if a bluetooth device is connected
+- enable or disable the interaction with the received messages
+- if the interaction is enabled, you can configure the maximum number of tri=
es to understand the vocal commands (3 by default)
 - enable or disable the `Heisendroid mode`_.
 - send a SMS to yourself to test the reading
=20
@@ -71,8 +77,20 @@ and followed by "*You're goddamn right!*". It is also a re=
ference to one of the
=20
 .. _Heisendroid mode: #Heisendroid_mode
=20
+Interactions
+~~~~~~~~~~~~
+
+If the interaction is on, when you receive an SMS, the app offers you 3 choi=
ces:
+
+- call the sender (say "call")
+- reply by SMS by dictating the message (say "repy")
+- do nothing (say "nothing")
+
+If you choose to reply by SMS, you can then dictate the message. The applica=
tion will tell what it understands.
+You can then:
=20
-Widget
-~~~~~~
+- confirm and send the reply (say "confirm")
+- dictate the text again (say "modify")
+- cancel the reply and quit  (say "cancel")
=20
-The widget permits you to enable or disable the reading from the home screen.
\ No newline at end of file
+If the app does not understand what you said (it happens), you will be asked=
 to repeat.
\ No newline at end of file

--=20
To stop receiving notification emails like this one, please contact
chorem.org SCM administrator <admin+scm@chorem.org>.

--===============4570158544192166124==--


