How to define custom messages in Drupal 7 I want to show a custom message to user after he/she adds a new content of a specific type in Drupal 7. If I change the '@type %title has been created' to what I want the message will change for all content types.

How can I do it? Is there any module to define messages for different actions?
I just did this the other day, it's a bit of a hack, but I couldn't find another way.  The basic premise is to get and clear all current messages, loop through and call drupal_set_message() on all of them over again, changing the one you want:

&lt;?php
/**
 * Submit function for the message node form.  Check for new message notification and change it.
 */
function mymodule_message_node_form_submit($form, &amp;$form_state) {
  $node = $form_state['node'];
  $t_args = array('@type' =&gt; node_type_get_name($node), '%title' =&gt; $node-&gt;title);
  $replace_message = t('@type %title has been created.', $t_args);

  // This call will get all messages and clear them from $_SESSION
  $messages = drupal_get_messages('status');
  foreach ($messages['status'] as $message) {

    if ($message == $replace_message) {
      drupal_set_message(t('Thank you your message has been sent successfully.  We will be in touch shortly.'));
    }
    else {
      drupal_set_message($message);
    }
  }
}
?&gt;