'implement the function'

def func(self):

    if ((not self.args) or (not self.rhs)):
        string = 'Usage:    @cboot[/quiet]    <channel>    =    <player>    [:reason]'
        self.msg(string)
        return
    channel = find_channel(self.caller, self.lhs)
    if (not channel):
        return
    reason = ''
    if (':' in self.rhs):
        (playername, reason) = self.rhs.rsplit(':', 1)
        searchstring = playername.lstrip('*')
    else:
        searchstring = self.rhs.lstrip('*')
    player = self.caller.search(searchstring, player=True)
    if (not player):
        return
    if reason:
        reason = ('    (reason:    %s)' % reason)
    if (not channel.access(self.caller, 'control')):
        string = "You    don't    control    this    channel."
        self.msg(string)
        return
    if (player not in channel.db_subscriptions.all()):
        string = ('Player    %s    is    not    connected    to    channel    %s.' % (player.key, channel.key))
        self.msg(string)
        return
    if ('quiet' not in self.switches):
        string = ('%s    boots    %s    from    channel.%s' % (self.caller, player.key, reason))
        channel.msg(string)
    for nick in [nick for nick in (player.character.nicks.get(category='channel') or []) if (nick.value[3].lower() == channel.key)]:
        nick.delete()
    channel.disconnect(player)
    CHANNELHANDLER.update()
