code: func (b *Bdiscord) handleUploadFile(msg *config.Message, channelID string) (string, error) {
  	var err error
  	for _, f := range msg.Extra["file"] {
  		fi := f.(config.FileInfo)
  		file := discordgo.File{
  			Name:        fi.Name,
  			ContentType: "",
  			Reader:      bytes.NewReader(*fi.Data),
  		}
  		m := discordgo.MessageSend{
  			Content: msg.Username + fi.Comment,
  			Files:   []*discordgo.File{&file},
  		}
  		_, err = b.c.ChannelMessageSendComplex(channelID, &m)
  		if err != nil {
  			return "", fmt.Errorf("file upload failed: %s", err)
  		}
  	}
  	return "", nil
  }
docs: // handleUploadFile handles native upload of files