twitter

package module
v0.0.0-...-7fb1a91 Latest Latest
Warning

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

Go to latest
Published: Jun 11, 2014 License: GPL-3.0 Imports: 15 Imported by: 1

README

$ go get -u github.com/bsdf/twitter

package main

import (
	"github.com/bsdf/twitter"
	"fmt"
	"strings"
)

func main() {
	t := twitter.Twitter{
		ConsumerKey:      "CONSUMER_KEY_HERE",
		ConsumerSecret:   "CONSUMER_SECRET_HERE",
		OAuthToken:       "OAUTH_TOKEN_HERE",
		OAuthTokenSecret: "OAUTH_TOKEN_SECRET_HERE",
	}

	_, err := t.Tweet("RT @bsdf M83 Designs Children's Sneakers")
	if err != nil {
		fmt.Println(err.Error())
		return
	}

	me, err := t.Follow("bsdf")
	if err != nil {
		fmt.Println("Couldn't follow @bsdf ):", err.Error())
		return
	}

	fmt.Println("@bsdf currently goes by", me.Name)

	tos, err := t.GetTOS()
	if err != nil {
		fmt.Println(err.Error())
		return
	}

	fmt.Println(strings.Replace(tos, "Terms", "Turds", -1))
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Contributor

type Contributor struct {
	Id         int64
	IdStr      string `json:"id_str"`
	ScreenName string `json:"screen_name"`
}

type DirectMessage

type DirectMessage struct {
	Id                  int64
	CreatedAt           string `json:"created_at"`
	SenderScreenName    string `json:"sender_screen_name"`
	Sender              User
	SenderId            int64 `json:"sender_id"`
	Text                string
	RecipientScreenName string `json:"recipient_screen_name"`
	Recipient           User
	RecipientId         int64 `json:"recipient_id"`
}

type Entities

type Entities struct {
	Hashtags     []HashTag
	Media        []Media
	Urls         []URL
	UserMentions []UserMention `json:"user_mentions"`
}

type HashTag

type HashTag struct {
	Indices []int
	Text    string
}

type Media

type Media struct {
	DisplayUrl    string `json:"display_url"`
	ExpandedUrl   string `json:"expanded_url"`
	Id            int64
	IdStr         string `json:"id_str"`
	Indices       []int
	MediaUrl      string `json:"media_url"`
	MediaUrlHttps string `json:"media_url_https"`
	Url           string
	Type          string
}

type RateLimitStatus

type RateLimitStatus struct {
	RemainingHits    int    `json:"remaining_hits"`
	ResetTime        string `json:"reset_time"`
	ResetTimeSeconds int64  `json:"reset_time_in_seconds"`
	HourlyLimit      int    `json:"hourly_limit"`
}

type RestMethod

type RestMethod struct {
	Url    string
	Method string
	Params map[string]string
	Data   string
}

type SearchResult

type SearchResult struct {
	Query   string
	Results []Tweet `json:"statuses"`
}

type Tweet

type Tweet struct {
	Contributors        []Contributor
	CreatedAt           string `json:"created_at"`
	Entities            Entities
	Id                  int64
	IdStr               string `json:"id_str"`
	InReplyToScreenName string `json:"in_reply_to_screen_name"`
	InReplyToStatusId   int64  `json:"in_reply_to_status_id"`
	InReplyToUserId     int64  `json:"in_reply_to_user_id"`
	RetweetCount        int    `json:"retweet_count"`
	PossiblySensitive   bool   `json:"possibly_sensitive"`
	Retweeted           bool
	Source              string
	Text                string
	Truncated           bool
	User                User
}

type Twitter

type Twitter struct {
	ConsumerKey      string
	ConsumerSecret   string
	OAuthToken       string
	OAuthTokenSecret string
	DebugMode        bool
}

func New

func New(consumerKey, consumerSecret, oauthToken, oauthTokenSecret string) *Twitter

func (*Twitter) DeleteDirectMessage

func (t *Twitter) DeleteDirectMessage(id int64) (dm DirectMessage, err error)

func (*Twitter) Destroy

func (t *Twitter) Destroy(id int64) (tweet Tweet, err error)

Destroys a tweet based upon its id Returns the Tweet if successful, error if unsuccessful

func (*Twitter) Follow

func (t *Twitter) Follow(username string) (user User, err error)

Follow a user Returns the User if successful, error if unsuccessful

func (*Twitter) GetDirectMessages

func (t *Twitter) GetDirectMessages() (dms []DirectMessage, err error)

func (*Twitter) GetPrivacyPolicy

func (t *Twitter) GetPrivacyPolicy() (policy string, err error)

func (*Twitter) GetTOS

func (t *Twitter) GetTOS() (tos string, err error)

func (*Twitter) GetUser

func (t *Twitter) GetUser(userName string) (user User, err error)

func (*Twitter) GetUserFriends

func (t *Twitter) GetUserFriends(user string) (friends []int64, err error)

func (*Twitter) GetUserTimeline

func (t *Twitter) GetUserTimeline(screenName string) (tweets []Tweet, err error)

Retrieves a user's timeline

func (*Twitter) LookupUsersById

func (t *Twitter) LookupUsersById(ids []int64) (users []User, err error)

func (*Twitter) Retweet

func (t *Twitter) Retweet(id int64) (tweet Tweet, err error)

Retweets a tweet based upon its id Returns the Tweet if successful, error if unsuccessful

func (*Twitter) Search

func (t *Twitter) Search(query string) (tweets []Tweet, err error)

Destroys a tweet based upon its id Returns the Tweet if successful, error if unsuccessful

func (*Twitter) SendDirectMessage

func (t *Twitter) SendDirectMessage(user, text string) (dm DirectMessage, err error)

func (*Twitter) Tweet

func (t *Twitter) Tweet(message string) (tweet Tweet, err error)

Send a tweet Returns the Tweet if successful, error if unsuccessful

func (*Twitter) Unfollow

func (t *Twitter) Unfollow(username string) (user User, err error)

Unfollow a user Returns the User if successful, error if unsuccessful

type TwitterError

type TwitterError struct {
	Error   string `json:"errors"`
	Request string
}

type URL

type URL struct {
	DisplayUrl  string `json:"display_url"`
	ExpandedUrl string `json:"expanded_url"`
	Indices     []int
	Url         string
}

type User

type User struct {
	Id             int64
	Name           string
	ScreenName     string `json:"screen_name"`
	FollowersCount int    `json:"followers_count"`
	FriendsCount   int    `json:"friends_count"`
	Lang           string
	Location       string
}

type UserMention

type UserMention struct {
	Id         int64
	IdStr      string `json:"id_str"`
	Indices    []int
	Name       string
	ScreenName string `json:"screen_name"`
}

Jump to

Keyboard shortcuts

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