def notify_user(self, msg, level="<STR_LIT:info>", rate_limit=<NUM_LIT:5>, title=None, icon=None):
module_name = self._module.module_full_name<EOL>if isinstance(msg, Composite):<EOL><INDENT>msg = msg.text()<EOL><DEDENT>if title is None:<EOL><INDENT>title = "<STR_LIT>".format(module_name)<EOL><DEDENT>elif isinstance(title, Composite):<EOL><INDENT>title = title.text()<EOL><DEDENT>if self._is_python_2:<EOL><INDENT>if isinstance(msg, str):<EOL><INDENT>msg = msg.decode("<STR_LIT:utf-8>")<EOL><DEDENT>if isinstance(title, str):<EOL><INDENT>title = title.decode("<STR_LIT:utf-8>")<EOL><DEDENT><DEDENT>if msg:<EOL><INDENT>self._py3_wrapper.notify_user(<EOL>msg=msg,<EOL>level=level,<EOL>rate_limit=rate_limit,<EOL>module_name=module_name,<EOL>title=title,<EOL>icon=icon,<EOL>)<EOL><DEDENT>
Send a notification to the user.
level must be 'info', 'error' or 'warning'.
rate_limit is the time period in seconds during which this message
should not be repeated.
icon must be an icon path or icon name.