reading the documentation helps tbh
code:
//////////////////////////////////////////////////////////////////////
// //
// Purpose: Allow special actions when a plugin text is received //
// //
// Definition: //
// This function is called everytime Messenger Plus! detects a //
// plugin text ID in a message received from a user. This ID is //
// generally placed at the beginning of a text by a plugin //
// command to perform an action on the destination computers. //
// This can be used, for example, to play a sound. See the //
// control characters section for more information. //
// //
// Parameters: //
// * sNotifyCode: this 5 character string is the notify code that //
// was sent next to the plugin ID control character. Use it to //
// identify what action to perform. //
// * sText: the rest of the received message. You can use it to //
// get more information about the action you want to perform. //
// However, you MUST NOT use this parameter to determine if an //
// action is supported by your plugin. Use sNotifyCode instead. //
// * pParam: additional information sent by Messenger Plus!. For //
// more information, read the documentation of the PLUGIN_PARAM //
// structure. iConversationWnd and sContactName are used. //
// * sTextToSend: this parameter is optional. You can use it if //
// you want to ask Messenger Plus! to send a new message after //
// this one has been displayed. This WON'T modify the message //
// associated with the notify code, this will simply send a new //
// one. Important: the size of this buffer is 4096 characters //
// and it is YOUR responsability to verify that you don't write //
// more characters to avoid memory faults.
// * return value: if you recognized the notify code return TRUE, //
// else, return FALSE. //
// //
// Advanced: if the plugin version returned by Initialize() is 2 or //
// above, you can specify more than one message or command in //
// sTextToSend. Simply create new lines with # as first character //
// (use '\n' to create new lines in your string). Up to 20 actions //
// can be specified, each being executed at a 0.5 second interval. //
// A different delay can even be entered for each action. After the //
// first #, just put a digit between 1 and 9 and another #. //
// Example: sTextToSend = "#First message\n#5#Second message" //
// //
// Important: keep in mind that several plugins can be installed //
// and that a lot of text is received. If you don't support the //
// notify code passed in parameter, you must return as fast as //
// possible and without doing anything else. //
// //
//////////////////////////////////////////////////////////////////////
MPPLUGIN_RETURN_BOOL ReceiveNotify(/*[in]*/ const char* sNotifyCode,
/*[in]*/ const char* sText,
/*[in]*/ PLUGIN_PARAM* pParam,
/*[out]*/ char* sTextToSend);
sText is an incomming/read only variable. You cannot chnage it (yes i know this is the c++ code but the vb code is the same).
Yes you can read what the user typed, eg
[]mcodeThis is My Message
sText contains "This is My Message"
but you CANNOT change it