title: received-im-msg signal message
body: <p>I want to make a program that logs in few IDs on different protocols, receives the messages and gives answers to different messages (commands).</p>
  
  <p>example:  </p>
  
  <p><strong>me:</strong> who<br>
  <strong>bot:</strong> I'm a libpurple powered bot.</p>
  
  <p>The code looks like this:</p>
  
  <pre>
  static void received_im_msg(PurpleAccount *account, char *sender, char *message,
                                PurpleConversation *conv, PurpleMessageFlags flags)
  {
      if (conv==NULL) {
          conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, account, sender);
      }
  
      printf("%s: %s\n", sender, message);
  
      char *answer;
  
      if (message == "who") {
          answer="I'm a libpurple powered bot.";
      } else if (message=="hello") {
          answer="Hello, my firend!";
      } else {
          answer="Unknown command.";
      }
      //print the answer, so we can see it in terminal:
      printf("bot: %s\n",message);  
  
      //send the message:
      purple_conv_im_send(purple_conversation_get_im_data(conv),answer);
  }
  </pre>
  
  <p>For me, this code looks just OK, but doesn't work as expected. Any message the bot receives, the answer will be always <strong>Unknown command.</strong>. I can't understand why the</p>
  
  <pre>message == "who"</pre>
  
  <p>is not true, even if</p>
  
  <pre>printf("%s: %s\n", sender, message);</pre>
  
  <p>prints something like:<br>
  <strong>example_id_345: who</strong>.</p>
  
  <p>Do you have any idea of why this thing happens? What I did wrong?</p>
  
  <p>Thank you and sorry for my bad english.</p>