<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def on_raw_privmsg(self, message):
 """ PRIVMSG command. """

        nick, metadata = self._parse_user(message.source)
        target, message = message.params

        self._sync_user(nick, metadata)

        await self.on_message(target, nick, message)
        if self.is_channel(target):
            await self.on_channel_message(target, nick, message)
        else:
            await self.on_private_message(target, nick, message)