function setAuthor($name, string $iconurl = '', string $url = '') {
        $name = (string) $name;
        
        if(\mb_strlen($name) > 256) {
            throw new \InvalidArgumentException('Author name can not be longer than 256 characters.');
        }
        
        $this->author = array(
            'name' => $name,
            'icon_url' => $iconurl,
            'url' => $url
        );
        
        return $this;
    }