twitter

package
v0.0.0-...-bd0960d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 28, 2023 License: MIT Imports: 11 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrThrottled = fmt.Errorf("throttled")

Functions

func GetUserID

func GetUserID(username string) (string, error)

Types

type Attachments

type Attachments struct {
	MediaKeys []string `json:"media_keys,omitempty"`
}

type Entities

type Entities struct {
	URLs     []EntityURL     `json:"urls,omitempty"`
	Hashtags []EntityHashtag `json:"hashtags,omitempty"`
	Mentions []EntityMention `json:"mentions,omitempty"`
}

type EntityHashtag

type EntityHashtag struct {
	TextEntity
	Tag string `json:"tag,omitempty"`
}

type EntityMention

type EntityMention struct {
	TextEntity
	Username string `json:"username,omitempty"`
}

type EntityURL

type EntityURL struct {
	TextEntity
	URL         string `json:"url,omitempty"`
	ExpandedURL string `json:"expanded_url,omitempty"`
	DisplayURL  string `json:"display_url,omitempty"`
	UnwoundURL  string `json:"unwound_url,omitempty"`
	Title       string `json:"title,omitempty"`
}

type Media

type Media struct {
	Type       string                   `json:"type"`
	Key        string                   `json:"media_key"`
	URL        string                   `json:"url,omitempty"`
	PreviewURL string                   `json:"preview_image_url,omitempty"`
	Variants   []map[string]interface{} `json:"variants,omitempty"`
	AltText    string                   `json:"alt_text,omitempty"`
}

func (Media) DisplayURLAndFilename

func (m Media) DisplayURLAndFilename() (string, string)

func (Media) FetchList

func (m Media) FetchList() map[string]string

func (Media) TargetURLAndFilename

func (m Media) TargetURLAndFilename() (string, string)

type ReferencedTweet

type ReferencedTweet struct {
	Type string `json:"type"`
	ID   string `json:"id"`
}

type TextEntity

type TextEntity struct {
	Start uint16 `json:"start"`
	End   uint16 `json:"end"`
}

type Tweet

type Tweet struct {
	TweetNoIncludes
	Includes TweetIncludes `json:"includes,omitempty"`

	RequestConfig common.RequestConfig `json:",omitempty"`
}

func FetchTweet

func FetchTweet(id string, config common.RequestConfig) (Tweet, error)

func FetchTweets

func FetchTweets(ids []string, config common.RequestConfig) ([]Tweet, error)

func FetchUserTimeline

func FetchUserTimeline(userID string, config common.RequestConfig, sinceID string) ([]Tweet, error)

FetchUserTimeline fetches all tweets written by a user after tweet sinceID. Returns valid []Tweet even along with an error.

func Search(query string, config common.RequestConfig, sinceID string) ([]Tweet, error)

func (*Tweet) CopyIncludes

func (t *Tweet) CopyIncludes(incl TweetIncludes)

func (*Tweet) InReplyTo

func (t *Tweet) InReplyTo() string

type TweetIncludes

type TweetIncludes struct {
	Users  []TwitterUser     `json:"users,omitempty"`
	Media  []Media           `json:"media,omitempty"`
	Tweets []TweetNoIncludes `json:"tweets,omitempty"`
}

type TweetNoIncludes

type TweetNoIncludes struct {
	ID               string            `json:"id"`
	Text             string            `json:"text"`
	ConversationID   string            `json:"conversation_id"`
	AuthorID         string            `json:"author_id"`
	ReferencedTweets []ReferencedTweet `json:"referenced_tweets,omitempty"`
	Entities         Entities          `json:"entities,omitempty"`
	Attachments      Attachments       `json:"attachments,omitempty"`
	CreatedAt        string            `json:"created_at,omitempty"`
	InReplyToUserID  string            `json:"in_reply_to_user_id,omitempty"`
}

type TwitterUser

type TwitterUser struct {
	ID       string `json:"id"`
	Name     string `json:"name"`
	Username string `json:"username"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL