diff --git a/CMakeLists.txt b/CMakeLists.txt
index 37144dd92b00a999a5a03930576f7387796f4c1b..5bf67cbb365bc9397e3ad1f0b209ffb8caee1e6a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -12,6 +12,7 @@ find_package(catkin REQUIRED COMPONENTS
   sensor_msgs
   actionlib_msgs
   message_generation
+  audio_common_msgs
   std_msgs
 )
 
@@ -72,6 +73,8 @@ add_service_files(
   ScheduleActivity.srv
   SetAnswer.srv
   SetScreen.srv
+  TextToSpeech.srv
+  SaySpeech.srv
 )
 
 ## Generate actions in the 'action' folder
@@ -82,12 +85,17 @@ add_action_files(
   ExecuteAction.action
   ExecuteActivity.action
   Speak.action
+  Listen.action
+  UserDetected.action
+  PostActivityResult.action
+  ScreenControl.action
+  RequestActivity.action
 )
 
 ## Generate added messages and services with any dependencies listed here
 generate_messages(
   DEPENDENCIES
-  geometry_msgs sensor_msgs actionlib_msgs std_msgs
+  geometry_msgs sensor_msgs actionlib_msgs audio_common_msgs std_msgs
 )
 
 ################################################
diff --git a/action/Listen.action b/action/Listen.action
new file mode 100755
index 0000000000000000000000000000000000000000..9c2363d2f0cafedbc13c607d7bda6837fb7396d4
--- /dev/null
+++ b/action/Listen.action
@@ -0,0 +1,10 @@
+# Action to listen to user's speech
+
+int32 duration          # How long it should listen
+---
+string transcription    # Transcribed text from captured audio
+---
+string feedback_status
+
+
+
diff --git a/action/PostActivityResult.action b/action/PostActivityResult.action
new file mode 100644
index 0000000000000000000000000000000000000000..c2fdb6aebb5ca04706d2a1924f45fcb538ac2e9d
--- /dev/null
+++ b/action/PostActivityResult.action
@@ -0,0 +1,18 @@
+# goal definition
+string idactivity
+bool result
+string answer
+string pose
+string emotion
+string location
+string api_url
+
+---
+
+# result definition
+bool result
+int32 error_code
+
+---
+
+# feedback
diff --git a/action/RequestActivity.action b/action/RequestActivity.action
new file mode 100644
index 0000000000000000000000000000000000000000..f4d5366cd1df022f926a3ae551ed5aafc0ce9b7a
--- /dev/null
+++ b/action/RequestActivity.action
@@ -0,0 +1,7 @@
+string url
+string user_id
+string device_id
+---
+iri_raadical_msgs/Activity activity
+---
+string feedback_status
\ No newline at end of file
diff --git a/action/ScreenControl.action b/action/ScreenControl.action
new file mode 100644
index 0000000000000000000000000000000000000000..c08e077000ce9523a45d64efa7f6be638a7f2dce
--- /dev/null
+++ b/action/ScreenControl.action
@@ -0,0 +1,12 @@
+#goal definition
+iri_raadical_msgs/Screen screen
+
+---
+
+#result definition
+string answer
+
+---
+
+#feedback
+string feedback
diff --git a/action/UserDetected.action b/action/UserDetected.action
new file mode 100644
index 0000000000000000000000000000000000000000..953877eee36dbf127ad76b5c380845fbdf4b0aa9
--- /dev/null
+++ b/action/UserDetected.action
@@ -0,0 +1,13 @@
+#goal definition
+string userid
+string api_url
+
+---
+
+#result definition
+bool result
+int32 error_code
+
+---
+
+#feedback
diff --git a/package.xml b/package.xml
index c1dbea5817e540e2b9756cb263a1dd8b14675975..c259a8c3f6a7a4f1674cf493b9b56aec825ce4d3 100644
--- a/package.xml
+++ b/package.xml
@@ -62,6 +62,7 @@
   <exec_depend>std_msgs</exec_depend>
   <exec_depend>sensor_msgs</exec_depend>
   <exec_depend>geometry_msgs</exec_depend>
+  <depend>audio_common_msgs</depend>
 
 
   <!-- The export tag contains other, unspecified, tags -->
diff --git a/srv/SaySpeech.srv b/srv/SaySpeech.srv
new file mode 100644
index 0000000000000000000000000000000000000000..cfd812954495d45c0056b6a2082fd22fcebe4ac1
--- /dev/null
+++ b/srv/SaySpeech.srv
@@ -0,0 +1,7 @@
+audio_common_msgs/AudioData data
+bool blocking   
+    # True: srv responds once the audio has finished playing
+    # False: responds as soon as possible (the audio is still playing)
+---
+bool success    # Whether it has been played successfully
+
diff --git a/srv/TextToSpeech.srv b/srv/TextToSpeech.srv
new file mode 100644
index 0000000000000000000000000000000000000000..6391b117d902195bf2a31ed30d7fb1433f4d5ad8
--- /dev/null
+++ b/srv/TextToSpeech.srv
@@ -0,0 +1,11 @@
+string text
+bool blocking
+    # True: srv responds once the audio has finished playing
+    # False: responds as soon as possible (the audio is still playing)
+int32 emotion
+    # 0: neutro
+    # 1: felicidad
+    # 2: tristeza
+    # 3: enfado
+---
+string result
\ No newline at end of file