twitter 5.1.1 → 5.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data.tar.gz.sig +0 -0
- data/.yardopts +2 -0
- data/CHANGELOG.md +10 -1
- data/CONTRIBUTING.md +2 -2
- data/README.md +30 -20
- data/Rakefile +26 -5
- data/lib/twitter/arguments.rb +0 -1
- data/lib/twitter/base.rb +13 -16
- data/lib/twitter/basic_user.rb +3 -3
- data/lib/twitter/client.rb +7 -8
- data/lib/twitter/configuration.rb +5 -5
- data/lib/twitter/core_ext/enumerable.rb +0 -2
- data/lib/twitter/core_ext/kernel.rb +0 -2
- data/lib/twitter/creatable.rb +0 -1
- data/lib/twitter/cursor.rb +7 -10
- data/lib/twitter/direct_message.rb +1 -1
- data/lib/twitter/entity/uri.rb +2 -2
- data/lib/twitter/enumerable.rb +1 -2
- data/lib/twitter/error.rb +4 -6
- data/lib/twitter/error/already_favorited.rb +1 -1
- data/lib/twitter/error/already_posted.rb +1 -1
- data/lib/twitter/error/already_retweeted.rb +1 -1
- data/lib/twitter/error/too_many_requests.rb +2 -2
- data/lib/twitter/factory.rb +2 -6
- data/lib/twitter/geo.rb +1 -1
- data/lib/twitter/geo/point.rb +3 -5
- data/lib/twitter/geo_factory.rb +1 -5
- data/lib/twitter/geo_results.rb +5 -8
- data/lib/twitter/identity.rb +1 -2
- data/lib/twitter/list.rb +4 -5
- data/lib/twitter/media/photo.rb +1 -2
- data/lib/twitter/media_factory.rb +1 -5
- data/lib/twitter/null_object.rb +4 -6
- data/lib/twitter/oembed.rb +1 -1
- data/lib/twitter/place.rb +4 -5
- data/lib/twitter/profile_banner.rb +1 -3
- data/lib/twitter/rate_limit.rb +1 -3
- data/lib/twitter/relationship.rb +1 -2
- data/lib/twitter/rest/api/direct_messages.rb +13 -14
- data/lib/twitter/rest/api/favorites.rb +10 -11
- data/lib/twitter/rest/api/friends_and_followers.rb +36 -36
- data/lib/twitter/rest/api/help.rb +8 -9
- data/lib/twitter/rest/api/lists.rb +62 -63
- data/lib/twitter/rest/api/oauth.rb +3 -4
- data/lib/twitter/rest/api/places_and_geo.rb +9 -10
- data/lib/twitter/rest/api/saved_searches.rb +5 -6
- data/lib/twitter/rest/api/search.rb +2 -3
- data/lib/twitter/rest/api/spam_reporting.rb +1 -2
- data/lib/twitter/rest/api/suggested_users.rb +4 -5
- data/lib/twitter/rest/api/timelines.rb +17 -18
- data/lib/twitter/rest/api/trends.rb +10 -11
- data/lib/twitter/rest/api/tweets.rb +15 -16
- data/lib/twitter/rest/api/undocumented.rb +6 -7
- data/lib/twitter/rest/api/users.rb +51 -52
- data/lib/twitter/rest/api/utils.rb +23 -30
- data/lib/twitter/rest/client.rb +8 -9
- data/lib/twitter/rest/request/multipart_with_file.rb +0 -1
- data/lib/twitter/rest/response/parse_error_json.rb +0 -2
- data/lib/twitter/rest/response/parse_json.rb +0 -2
- data/lib/twitter/rest/response/raise_error.rb +1 -3
- data/lib/twitter/search_results.rb +12 -15
- data/lib/twitter/settings.rb +2 -2
- data/lib/twitter/size.rb +2 -2
- data/lib/twitter/source_user.rb +1 -1
- data/lib/twitter/streaming/client.rb +71 -18
- data/lib/twitter/streaming/connection.rb +1 -3
- data/lib/twitter/streaming/deleted_tweet.rb +8 -0
- data/lib/twitter/streaming/event.rb +8 -8
- data/lib/twitter/streaming/friend_list.rb +2 -9
- data/lib/twitter/streaming/message_parser.rb +13 -7
- data/lib/twitter/streaming/response.rb +0 -2
- data/lib/twitter/streaming/stall_warning.rb +7 -0
- data/lib/twitter/suggestion.rb +0 -1
- data/lib/twitter/token.rb +2 -3
- data/lib/twitter/trend_results.rb +5 -8
- data/lib/twitter/tweet.rb +16 -24
- data/lib/twitter/user.rb +30 -32
- data/lib/twitter/version.rb +2 -5
- data/spec/fixtures/track_streaming_user.json +2 -1
- data/spec/helper.rb +6 -2
- data/spec/twitter/base_spec.rb +9 -9
- data/spec/twitter/basic_user_spec.rb +6 -6
- data/spec/twitter/configuration_spec.rb +4 -4
- data/spec/twitter/cursor_spec.rb +27 -27
- data/spec/twitter/direct_message_spec.rb +36 -36
- data/spec/twitter/entity/uri_spec.rb +27 -27
- data/spec/twitter/error_spec.rb +21 -21
- data/spec/twitter/geo/point_spec.rb +9 -9
- data/spec/twitter/geo/polygon_spec.rb +5 -5
- data/spec/twitter/geo_factory_spec.rb +7 -7
- data/spec/twitter/geo_results_spec.rb +11 -11
- data/spec/twitter/geo_spec.rb +5 -5
- data/spec/twitter/identifiable_spec.rb +9 -9
- data/spec/twitter/list_spec.rb +38 -38
- data/spec/twitter/media/photo_spec.rb +54 -54
- data/spec/twitter/media_factory_spec.rb +5 -5
- data/spec/twitter/null_object_spec.rb +6 -6
- data/spec/twitter/oembed_spec.rb +65 -65
- data/spec/twitter/place_spec.rb +89 -60
- data/spec/twitter/profile_banner_spec.rb +3 -3
- data/spec/twitter/rate_limit_spec.rb +18 -18
- data/spec/twitter/relationship_spec.rb +16 -16
- data/spec/twitter/rest/api/direct_messages_spec.rb +61 -61
- data/spec/twitter/rest/api/favorites_spec.rb +93 -93
- data/spec/twitter/rest/api/friends_and_followers_spec.rb +349 -349
- data/spec/twitter/rest/api/geo_spec.rb +33 -33
- data/spec/twitter/rest/api/help_spec.rb +24 -24
- data/spec/twitter/rest/api/lists_spec.rb +487 -487
- data/spec/twitter/rest/api/oauth_spec.rb +30 -30
- data/spec/twitter/rest/api/saved_searches_spec.rb +40 -40
- data/spec/twitter/rest/api/search_spec.rb +16 -16
- data/spec/twitter/rest/api/spam_reporting_spec.rb +9 -9
- data/spec/twitter/rest/api/suggested_users_spec.rb +23 -23
- data/spec/twitter/rest/api/timelines_spec.rb +58 -58
- data/spec/twitter/rest/api/trends_spec.rb +26 -26
- data/spec/twitter/rest/api/tweets_spec.rb +284 -284
- data/spec/twitter/rest/api/undocumented_spec.rb +51 -51
- data/spec/twitter/rest/api/users_spec.rb +360 -360
- data/spec/twitter/rest/client_spec.rb +99 -103
- data/spec/twitter/saved_search_spec.rb +16 -16
- data/spec/twitter/search_results_spec.rb +44 -44
- data/spec/twitter/settings_spec.rb +8 -8
- data/spec/twitter/size_spec.rb +5 -5
- data/spec/twitter/source_user_spec.rb +6 -6
- data/spec/twitter/streaming/client_spec.rb +53 -49
- data/spec/twitter/streaming/deleted_tweet_spec.rb +23 -0
- data/spec/twitter/streaming/event_spec.rb +20 -22
- data/spec/twitter/streaming/friend_list_spec.rb +11 -0
- data/spec/twitter/streaming/message_parser_spec.rb +54 -0
- data/spec/twitter/suggestion_spec.rb +11 -11
- data/spec/twitter/target_user_spec.rb +6 -6
- data/spec/twitter/token_spec.rb +4 -4
- data/spec/twitter/trend_results_spec.rb +30 -30
- data/spec/twitter/trend_spec.rb +20 -20
- data/spec/twitter/tweet_spec.rb +170 -173
- data/spec/twitter/user_spec.rb +179 -179
- data/twitter.gemspec +2 -2
- metadata +21 -4
- metadata.gz.sig +2 -1
|
@@ -22,8 +22,8 @@ module Twitter
|
|
|
22
22
|
# @option options [Integer] :max_id Returns results with an ID less than (that is, older than) or equal to the specified ID.
|
|
23
23
|
# @option options [Integer] :count Specifies the number of records to retrieve. Must be less than or equal to 200.
|
|
24
24
|
# @option options [Integer] :page Specifies the page of results to retrieve.
|
|
25
|
-
def direct_messages_received(options={})
|
|
26
|
-
objects_from_response(Twitter::DirectMessage, :get,
|
|
25
|
+
def direct_messages_received(options = {})
|
|
26
|
+
objects_from_response(Twitter::DirectMessage, :get, '/1.1/direct_messages.json', options)
|
|
27
27
|
end
|
|
28
28
|
|
|
29
29
|
# Returns the 20 most recent direct messages sent by the authenticating user
|
|
@@ -39,8 +39,8 @@ module Twitter
|
|
|
39
39
|
# @option options [Integer] :max_id Returns results with an ID less than (that is, older than) or equal to the specified ID.
|
|
40
40
|
# @option options [Integer] :count Specifies the number of records to retrieve. Must be less than or equal to 200.
|
|
41
41
|
# @option options [Integer] :page Specifies the page of results to retrieve.
|
|
42
|
-
def direct_messages_sent(options={})
|
|
43
|
-
objects_from_response(Twitter::DirectMessage, :get,
|
|
42
|
+
def direct_messages_sent(options = {})
|
|
43
|
+
objects_from_response(Twitter::DirectMessage, :get, '/1.1/direct_messages/sent.json', options)
|
|
44
44
|
end
|
|
45
45
|
|
|
46
46
|
# Returns a direct message
|
|
@@ -53,9 +53,9 @@ module Twitter
|
|
|
53
53
|
# @return [Twitter::DirectMessage] The requested messages.
|
|
54
54
|
# @param id [Integer] A direct message ID.
|
|
55
55
|
# @param options [Hash] A customizable set of options.
|
|
56
|
-
def direct_message(id, options={})
|
|
56
|
+
def direct_message(id, options = {})
|
|
57
57
|
options[:id] = id
|
|
58
|
-
object_from_response(Twitter::DirectMessage, :get,
|
|
58
|
+
object_from_response(Twitter::DirectMessage, :get, '/1.1/direct_messages/show.json', options)
|
|
59
59
|
end
|
|
60
60
|
|
|
61
61
|
# @note This method requires an access token with RWD (read, write & direct message) permissions. Consult The Application Permission Model for more information.
|
|
@@ -63,7 +63,7 @@ module Twitter
|
|
|
63
63
|
# @authentication Requires user context
|
|
64
64
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
65
65
|
# @return [Array<Twitter::DirectMessage>] The requested messages.
|
|
66
|
-
# @overload direct_messages(options={})
|
|
66
|
+
# @overload direct_messages(options = {})
|
|
67
67
|
# Returns the 20 most recent direct messages sent to the authenticating user
|
|
68
68
|
#
|
|
69
69
|
# @see https://dev.twitter.com/docs/api/1.1/get/direct_messages
|
|
@@ -108,7 +108,7 @@ module Twitter
|
|
|
108
108
|
# @param ids [Enumerable<Integer>] A collection of direct message IDs.
|
|
109
109
|
# @param options [Hash] A customizable set of options.
|
|
110
110
|
def destroy_direct_message(*args)
|
|
111
|
-
threaded_objects_from_response(Twitter::DirectMessage, :post,
|
|
111
|
+
threaded_objects_from_response(Twitter::DirectMessage, :post, '/1.1/direct_messages/destroy.json', args)
|
|
112
112
|
end
|
|
113
113
|
deprecate_alias :direct_message_destroy, :destroy_direct_message
|
|
114
114
|
|
|
@@ -122,16 +122,15 @@ module Twitter
|
|
|
122
122
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
123
123
|
# @param text [String] The text of your direct message, up to 140 characters.
|
|
124
124
|
# @param options [Hash] A customizable set of options.
|
|
125
|
-
def create_direct_message(user, text, options={})
|
|
125
|
+
def create_direct_message(user, text, options = {})
|
|
126
126
|
merge_user!(options, user)
|
|
127
127
|
options[:text] = text
|
|
128
|
-
object_from_response(Twitter::DirectMessage, :post,
|
|
128
|
+
object_from_response(Twitter::DirectMessage, :post, '/1.1/direct_messages/new.json', options)
|
|
129
129
|
end
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
130
|
+
alias_method :d, :create_direct_message
|
|
131
|
+
alias_method :m, :create_direct_message
|
|
132
|
+
alias_method :dm, :create_direct_message
|
|
133
133
|
deprecate_alias :direct_message_create, :create_direct_message
|
|
134
|
-
|
|
135
134
|
end
|
|
136
135
|
end
|
|
137
136
|
end
|
|
@@ -32,7 +32,7 @@ module Twitter
|
|
|
32
32
|
def favorites(*args)
|
|
33
33
|
arguments = Twitter::Arguments.new(args)
|
|
34
34
|
merge_user!(arguments.options, arguments.pop) if arguments.last
|
|
35
|
-
objects_from_response(Twitter::Tweet, :get,
|
|
35
|
+
objects_from_response(Twitter::Tweet, :get, '/1.1/favorites/list.json', arguments.options)
|
|
36
36
|
end
|
|
37
37
|
|
|
38
38
|
# Un-favorites the specified Tweets as the authenticating user
|
|
@@ -48,9 +48,9 @@ module Twitter
|
|
|
48
48
|
# @param tweets [Enumerable<Integer, String, URI, Twitter::Tweet>] A collection of Tweet IDs, URIs, or objects.
|
|
49
49
|
# @param options [Hash] A customizable set of options.
|
|
50
50
|
def unfavorite(*args)
|
|
51
|
-
threaded_objects_from_response(Twitter::Tweet, :post,
|
|
51
|
+
threaded_objects_from_response(Twitter::Tweet, :post, '/1.1/favorites/destroy.json', args)
|
|
52
52
|
end
|
|
53
|
-
|
|
53
|
+
alias_method :destroy_favorite, :unfavorite
|
|
54
54
|
deprecate_alias :favorite_destroy, :unfavorite
|
|
55
55
|
|
|
56
56
|
# Favorites the specified Tweets as the authenticating user
|
|
@@ -70,14 +70,14 @@ module Twitter
|
|
|
70
70
|
arguments.flatten.threaded_map do |tweet|
|
|
71
71
|
id = extract_id(tweet)
|
|
72
72
|
begin
|
|
73
|
-
object_from_response(Twitter::Tweet, :post,
|
|
73
|
+
object_from_response(Twitter::Tweet, :post, '/1.1/favorites/create.json', arguments.options.merge(:id => id))
|
|
74
74
|
rescue Twitter::Error::Forbidden => error
|
|
75
75
|
raise unless error.message == Twitter::Error::AlreadyFavorited::MESSAGE
|
|
76
76
|
end
|
|
77
77
|
end.compact
|
|
78
78
|
end
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
alias_method :fav, :favorite
|
|
80
|
+
alias_method :fave, :favorite
|
|
81
81
|
deprecate_alias :favorite_create, :favorite
|
|
82
82
|
|
|
83
83
|
# Favorites the specified Tweets as the authenticating user and raises an error if one has already been favorited
|
|
@@ -98,17 +98,16 @@ module Twitter
|
|
|
98
98
|
arguments.flatten.threaded_map do |tweet|
|
|
99
99
|
id = extract_id(tweet)
|
|
100
100
|
begin
|
|
101
|
-
object_from_response(Twitter::Tweet, :post,
|
|
101
|
+
object_from_response(Twitter::Tweet, :post, '/1.1/favorites/create.json', arguments.options.merge(:id => id))
|
|
102
102
|
rescue Twitter::Error::Forbidden => error
|
|
103
103
|
handle_forbidden_error(Twitter::Error::AlreadyFavorited, error)
|
|
104
104
|
end
|
|
105
105
|
end
|
|
106
106
|
end
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
107
|
+
alias_method :create_favorite!, :favorite!
|
|
108
|
+
alias_method :fav!, :favorite!
|
|
109
|
+
alias_method :fave!, :favorite!
|
|
110
110
|
deprecate_alias :favorite_create!, :favorite!
|
|
111
|
-
|
|
112
111
|
end
|
|
113
112
|
end
|
|
114
113
|
end
|
|
@@ -16,19 +16,19 @@ module Twitter
|
|
|
16
16
|
# @authentication Requires user context
|
|
17
17
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
18
18
|
# @return [Twitter::Cursor]
|
|
19
|
-
# @overload friend_ids(options={})
|
|
19
|
+
# @overload friend_ids(options = {})
|
|
20
20
|
# Returns an array of numeric IDs for every user the authenticated user is following
|
|
21
21
|
#
|
|
22
22
|
# @param options [Hash] A customizable set of options.
|
|
23
23
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. This is recommended for users who are following many users. Provide a value of -1 to begin paging. Provide values as returned in the response body's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
24
|
-
# @overload friend_ids(user, options={})
|
|
24
|
+
# @overload friend_ids(user, options = {})
|
|
25
25
|
# Returns an array of numeric IDs for every user the specified user is following
|
|
26
26
|
#
|
|
27
27
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
28
28
|
# @param options [Hash] A customizable set of options.
|
|
29
29
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
30
30
|
def friend_ids(*args)
|
|
31
|
-
cursor_from_response_with_user(:ids, nil, :get,
|
|
31
|
+
cursor_from_response_with_user(:ids, nil, :get, '/1.1/friends/ids.json', args)
|
|
32
32
|
end
|
|
33
33
|
|
|
34
34
|
# @see https://dev.twitter.com/docs/api/1.1/get/followers/ids
|
|
@@ -36,19 +36,19 @@ module Twitter
|
|
|
36
36
|
# @authentication Requires user context
|
|
37
37
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
38
38
|
# @return [Twitter::Cursor]
|
|
39
|
-
# @overload follower_ids(options={})
|
|
39
|
+
# @overload follower_ids(options = {})
|
|
40
40
|
# Returns an array of numeric IDs for every user following the authenticated user
|
|
41
41
|
#
|
|
42
42
|
# @param options [Hash] A customizable set of options.
|
|
43
43
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
44
|
-
# @overload follower_ids(user, options={})
|
|
44
|
+
# @overload follower_ids(user, options = {})
|
|
45
45
|
# Returns an array of numeric IDs for every user following the specified user
|
|
46
46
|
#
|
|
47
47
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
48
48
|
# @param options [Hash] A customizable set of options.
|
|
49
49
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. This is recommended for users who are following many users. Provide a value of -1 to begin paging. Provide values as returned in the response body's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
50
50
|
def follower_ids(*args)
|
|
51
|
-
cursor_from_response_with_user(:ids, nil, :get,
|
|
51
|
+
cursor_from_response_with_user(:ids, nil, :get, '/1.1/followers/ids.json', args)
|
|
52
52
|
end
|
|
53
53
|
|
|
54
54
|
# Returns the relationship of the authenticating user to the comma separated list of up to 100 screen_names or user_ids provided. Values for connections can be: following, following_requested, followed_by, none.
|
|
@@ -66,7 +66,7 @@ module Twitter
|
|
|
66
66
|
def friendships(*args)
|
|
67
67
|
arguments = Twitter::Arguments.new(args)
|
|
68
68
|
merge_users!(arguments.options, arguments)
|
|
69
|
-
objects_from_response(Twitter::User, :get,
|
|
69
|
+
objects_from_response(Twitter::User, :get, '/1.1/friendships/lookup.json', arguments.options)
|
|
70
70
|
end
|
|
71
71
|
|
|
72
72
|
# Returns an array of numeric IDs for every user who has a pending request to follow the authenticating user
|
|
@@ -78,8 +78,8 @@ module Twitter
|
|
|
78
78
|
# @return [Twitter::Cursor]
|
|
79
79
|
# @param options [Hash] A customizable set of options.
|
|
80
80
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
81
|
-
def friendships_incoming(options={})
|
|
82
|
-
cursor_from_response(:ids, nil, :get,
|
|
81
|
+
def friendships_incoming(options = {})
|
|
82
|
+
cursor_from_response(:ids, nil, :get, '/1.1/friendships/incoming.json', options)
|
|
83
83
|
end
|
|
84
84
|
|
|
85
85
|
# Returns an array of numeric IDs for every protected user for whom the authenticating user has a pending follow request
|
|
@@ -91,8 +91,8 @@ module Twitter
|
|
|
91
91
|
# @return [Twitter::Cursor]
|
|
92
92
|
# @param options [Hash] A customizable set of options.
|
|
93
93
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
94
|
-
def friendships_outgoing(options={})
|
|
95
|
-
cursor_from_response(:ids, nil, :get,
|
|
94
|
+
def friendships_outgoing(options = {})
|
|
95
|
+
cursor_from_response(:ids, nil, :get, '/1.1/friendships/outgoing.json', options)
|
|
96
96
|
end
|
|
97
97
|
|
|
98
98
|
# Allows the authenticating user to follow the specified users, unless they are already followed
|
|
@@ -118,7 +118,7 @@ module Twitter
|
|
|
118
118
|
end
|
|
119
119
|
follow!(new_friends.value - existing_friends.value, arguments.options)
|
|
120
120
|
end
|
|
121
|
-
|
|
121
|
+
alias_method :create_friendship, :follow
|
|
122
122
|
deprecate_alias :friendship_create, :follow
|
|
123
123
|
|
|
124
124
|
# Allows the authenticating user to follow the specified users
|
|
@@ -138,14 +138,15 @@ module Twitter
|
|
|
138
138
|
arguments = Twitter::Arguments.new(args)
|
|
139
139
|
arguments.flatten.threaded_map do |user|
|
|
140
140
|
begin
|
|
141
|
-
object_from_response(Twitter::User, :post,
|
|
141
|
+
object_from_response(Twitter::User, :post, '/1.1/friendships/create.json', merge_user(arguments.options, user))
|
|
142
142
|
rescue Twitter::Error::Forbidden
|
|
143
143
|
# This error will be raised if the user doesn't have permission to
|
|
144
144
|
# follow list_member, for whatever reason.
|
|
145
|
+
next
|
|
145
146
|
end
|
|
146
147
|
end.compact
|
|
147
148
|
end
|
|
148
|
-
|
|
149
|
+
alias_method :create_friendship!, :follow!
|
|
149
150
|
deprecate_alias :friendship_create!, :follow!
|
|
150
151
|
|
|
151
152
|
# Allows the authenticating user to unfollow the specified users
|
|
@@ -161,9 +162,9 @@ module Twitter
|
|
|
161
162
|
# @param users [Enumerable<Integer, String, Twitter::User>] A collection of Twitter user IDs, screen names, or objects.
|
|
162
163
|
# @param options [Hash] A customizable set of options.
|
|
163
164
|
def unfollow(*args)
|
|
164
|
-
threaded_user_objects_from_response(:post,
|
|
165
|
+
threaded_user_objects_from_response(:post, '/1.1/friendships/destroy.json', args)
|
|
165
166
|
end
|
|
166
|
-
|
|
167
|
+
alias_method :destroy_friendship, :unfollow
|
|
167
168
|
deprecate_alias :friendship_destroy, :unfollow
|
|
168
169
|
|
|
169
170
|
# Allows one to enable or disable retweets and device notifications from the specified user.
|
|
@@ -177,9 +178,9 @@ module Twitter
|
|
|
177
178
|
# @param options [Hash] A customizable set of options.
|
|
178
179
|
# @option options [Boolean] :device Enable/disable device notifications from the target user.
|
|
179
180
|
# @option options [Boolean] :retweets Enable/disable retweets from the target user.
|
|
180
|
-
def friendship_update(user, options={})
|
|
181
|
+
def friendship_update(user, options = {})
|
|
181
182
|
merge_user!(options, user)
|
|
182
|
-
object_from_response(Twitter::Relationship, :post,
|
|
183
|
+
object_from_response(Twitter::Relationship, :post, '/1.1/friendships/update.json', options)
|
|
183
184
|
end
|
|
184
185
|
|
|
185
186
|
# Returns detailed information about the relationship between two users
|
|
@@ -192,15 +193,15 @@ module Twitter
|
|
|
192
193
|
# @param source [Integer, String, Twitter::User] The Twitter user ID, screen name, or object of the source user.
|
|
193
194
|
# @param target [Integer, String, Twitter::User] The Twitter user ID, screen name, or object of the target user.
|
|
194
195
|
# @param options [Hash] A customizable set of options.
|
|
195
|
-
def friendship(source, target, options={})
|
|
196
|
-
merge_user!(options, source,
|
|
196
|
+
def friendship(source, target, options = {})
|
|
197
|
+
merge_user!(options, source, 'source')
|
|
197
198
|
options[:source_id] = options.delete(:source_user_id) unless options[:source_user_id].nil?
|
|
198
|
-
merge_user!(options, target,
|
|
199
|
+
merge_user!(options, target, 'target')
|
|
199
200
|
options[:target_id] = options.delete(:target_user_id) unless options[:target_user_id].nil?
|
|
200
|
-
object_from_response(Twitter::Relationship, :get,
|
|
201
|
+
object_from_response(Twitter::Relationship, :get, '/1.1/friendships/show.json', options)
|
|
201
202
|
end
|
|
202
|
-
|
|
203
|
-
|
|
203
|
+
alias_method :friendship_show, :friendship
|
|
204
|
+
alias_method :relationship, :friendship
|
|
204
205
|
|
|
205
206
|
# Test for the existence of friendship between two users
|
|
206
207
|
#
|
|
@@ -212,7 +213,7 @@ module Twitter
|
|
|
212
213
|
# @param source [Integer, String, Twitter::User] The Twitter user ID, screen name, or object of the source user.
|
|
213
214
|
# @param target [Integer, String, Twitter::User] The Twitter user ID, screen name, or object of the target user.
|
|
214
215
|
# @param options [Hash] A customizable set of options.
|
|
215
|
-
def friendship?(source, target, options={})
|
|
216
|
+
def friendship?(source, target, options = {})
|
|
216
217
|
friendship(source, target, options).source.following?
|
|
217
218
|
end
|
|
218
219
|
|
|
@@ -223,14 +224,14 @@ module Twitter
|
|
|
223
224
|
# @authentication Requires user context
|
|
224
225
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
225
226
|
# @return [Twitter::Cursor]
|
|
226
|
-
# @overload followers(options={})
|
|
227
|
+
# @overload followers(options = {})
|
|
227
228
|
# Returns a cursored collection of user objects for users following the authenticated user.
|
|
228
229
|
#
|
|
229
230
|
# @param options [Hash] A customizable set of options.
|
|
230
231
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. This is recommended for users who are following many users. Provide a value of -1 to begin paging. Provide values as returned in the response body's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
231
232
|
# @option options [Boolean, String, Integer] :skip_status Do not include contributee's Tweets when set to true, 't' or 1.
|
|
232
233
|
# @option options [Boolean, String, Integer] :include_user_entities The user entities node will be disincluded when set to false.
|
|
233
|
-
# @overload followers(user, options={})
|
|
234
|
+
# @overload followers(user, options = {})
|
|
234
235
|
# Returns a cursored collection of user objects for users following the specified user.
|
|
235
236
|
#
|
|
236
237
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
@@ -239,7 +240,7 @@ module Twitter
|
|
|
239
240
|
# @option options [Boolean, String, Integer] :skip_status Do not include contributee's Tweets when set to true, 't' or 1.
|
|
240
241
|
# @option options [Boolean, String, Integer] :include_user_entities The user entities node will be disincluded when set to false.
|
|
241
242
|
def followers(*args)
|
|
242
|
-
cursor_from_response_with_user(:users, Twitter::User, :get,
|
|
243
|
+
cursor_from_response_with_user(:users, Twitter::User, :get, '/1.1/followers/list.json', args)
|
|
243
244
|
end
|
|
244
245
|
|
|
245
246
|
# Returns a cursored collection of user objects for every user the specified user is following (otherwise known as their "friends").
|
|
@@ -249,14 +250,14 @@ module Twitter
|
|
|
249
250
|
# @authentication Requires user context
|
|
250
251
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
251
252
|
# @return [Twitter::Cursor]
|
|
252
|
-
# @overload friends(options={})
|
|
253
|
+
# @overload friends(options = {})
|
|
253
254
|
# Returns a cursored collection of user objects for every user the authenticated user is following (otherwise known as their "friends").
|
|
254
255
|
#
|
|
255
256
|
# @param options [Hash] A customizable set of options.
|
|
256
257
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. This is recommended for users who are following many users. Provide a value of -1 to begin paging. Provide values as returned in the response body's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
257
258
|
# @option options [Boolean, String, Integer] :skip_status Do not include contributee's Tweets when set to true, 't' or 1.
|
|
258
259
|
# @option options [Boolean, String, Integer] :include_user_entities The user entities node will be disincluded when set to false.
|
|
259
|
-
# @overload friends(user, options={})
|
|
260
|
+
# @overload friends(user, options = {})
|
|
260
261
|
# Returns a cursored collection of user objects for every user the specified user is following (otherwise known as their "friends").
|
|
261
262
|
#
|
|
262
263
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
@@ -265,9 +266,9 @@ module Twitter
|
|
|
265
266
|
# @option options [Boolean, String, Integer] :skip_status Do not include contributee's Tweets when set to true, 't' or 1.
|
|
266
267
|
# @option options [Boolean, String, Integer] :include_user_entities The user entities node will be disincluded when set to false.
|
|
267
268
|
def friends(*args)
|
|
268
|
-
cursor_from_response_with_user(:users, Twitter::User, :get,
|
|
269
|
+
cursor_from_response_with_user(:users, Twitter::User, :get, '/1.1/friends/list.json', args)
|
|
269
270
|
end
|
|
270
|
-
|
|
271
|
+
alias_method :following, :friends
|
|
271
272
|
|
|
272
273
|
# Returns a collection of user IDs that the currently authenticated user does not want to receive retweets from.
|
|
273
274
|
# @see https://dev.twitter.com/docs/api/1.1/get/friendships/no_retweets/ids
|
|
@@ -276,11 +277,10 @@ module Twitter
|
|
|
276
277
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
277
278
|
# @return [Array<Integer>]
|
|
278
279
|
# @param options [Hash] A customizable set of options.
|
|
279
|
-
def no_retweet_ids(options={})
|
|
280
|
-
get(
|
|
280
|
+
def no_retweet_ids(options = {})
|
|
281
|
+
get('/1.1/friendships/no_retweets/ids.json', options)[:body].map(&:to_i)
|
|
281
282
|
end
|
|
282
|
-
|
|
283
|
-
|
|
283
|
+
alias_method :no_retweets_ids, :no_retweet_ids
|
|
284
284
|
end
|
|
285
285
|
end
|
|
286
286
|
end
|
|
@@ -15,8 +15,8 @@ module Twitter
|
|
|
15
15
|
# @authentication Requires user context
|
|
16
16
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
17
17
|
# @return [Twitter::Configuration] Twitter's configuration.
|
|
18
|
-
def configuration(options={})
|
|
19
|
-
object_from_response(Twitter::Configuration, :get,
|
|
18
|
+
def configuration(options = {})
|
|
19
|
+
object_from_response(Twitter::Configuration, :get, '/1.1/help/configuration.json', options)
|
|
20
20
|
end
|
|
21
21
|
|
|
22
22
|
# Returns the list of languages supported by Twitter
|
|
@@ -26,8 +26,8 @@ module Twitter
|
|
|
26
26
|
# @authentication Requires user context
|
|
27
27
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
28
28
|
# @return [Array<Twitter::Language>]
|
|
29
|
-
def languages(options={})
|
|
30
|
-
objects_from_response(Twitter::Language, :get,
|
|
29
|
+
def languages(options = {})
|
|
30
|
+
objects_from_response(Twitter::Language, :get, '/1.1/help/languages.json', options)
|
|
31
31
|
end
|
|
32
32
|
|
|
33
33
|
# Returns {https://twitter.com/privacy Twitter's Privacy Policy}
|
|
@@ -37,8 +37,8 @@ module Twitter
|
|
|
37
37
|
# @authentication Requires user context
|
|
38
38
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
39
39
|
# @return [String]
|
|
40
|
-
def privacy(options={})
|
|
41
|
-
get(
|
|
40
|
+
def privacy(options = {})
|
|
41
|
+
get('/1.1/help/privacy.json', options)[:body][:privacy]
|
|
42
42
|
end
|
|
43
43
|
|
|
44
44
|
# Returns {https://twitter.com/tos Twitter's Terms of Service}
|
|
@@ -48,10 +48,9 @@ module Twitter
|
|
|
48
48
|
# @authentication Requires user context
|
|
49
49
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
50
50
|
# @return [String]
|
|
51
|
-
def tos(options={})
|
|
52
|
-
get(
|
|
51
|
+
def tos(options = {})
|
|
52
|
+
get('/1.1/help/tos.json', options)[:body][:tos]
|
|
53
53
|
end
|
|
54
|
-
|
|
55
54
|
end
|
|
56
55
|
end
|
|
57
56
|
end
|
|
@@ -14,7 +14,7 @@ module Twitter
|
|
|
14
14
|
module Lists
|
|
15
15
|
include Twitter::REST::API::Utils
|
|
16
16
|
MAX_USERS_PER_REQUEST = 100
|
|
17
|
-
URI_SUBSTRING =
|
|
17
|
+
URI_SUBSTRING = '://'
|
|
18
18
|
|
|
19
19
|
# Returns all lists the authenticating or specified user subscribes to, including their own
|
|
20
20
|
#
|
|
@@ -23,17 +23,17 @@ module Twitter
|
|
|
23
23
|
# @authentication Requires user context
|
|
24
24
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
25
25
|
# @return [Array<Twitter::List>]
|
|
26
|
-
# @overload lists(options={})
|
|
26
|
+
# @overload lists(options = {})
|
|
27
27
|
# @param options [Hash] A customizable set of options.
|
|
28
28
|
# @option options [Boolean] :reverse Set this to true if you would like owned lists to be returned first.
|
|
29
|
-
# @overload lists(user, options={})
|
|
29
|
+
# @overload lists(user, options = {})
|
|
30
30
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
31
31
|
# @param options [Hash] A customizable set of options.
|
|
32
32
|
# @option options [Boolean] :reverse Set this to true if you would like owned lists to be returned first.
|
|
33
33
|
def lists(*args)
|
|
34
|
-
objects_from_response_with_user(Twitter::List, :get,
|
|
34
|
+
objects_from_response_with_user(Twitter::List, :get, '/1.1/lists/list.json', args)
|
|
35
35
|
end
|
|
36
|
-
|
|
36
|
+
alias_method :lists_subscribed_to, :lists
|
|
37
37
|
|
|
38
38
|
# Show tweet timeline for members of the specified list
|
|
39
39
|
#
|
|
@@ -42,13 +42,13 @@ module Twitter
|
|
|
42
42
|
# @authentication Requires user context
|
|
43
43
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
44
44
|
# @return [Array<Twitter::Tweet>]
|
|
45
|
-
# @overload list_timeline(list, options={})
|
|
45
|
+
# @overload list_timeline(list, options = {})
|
|
46
46
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
47
47
|
# @param options [Hash] A customizable set of options.
|
|
48
48
|
# @option options [Integer] :since_id Returns results with an ID greater than (that is, more recent than) the specified ID.
|
|
49
49
|
# @option options [Integer] :max_id Returns results with an ID less than (that is, older than) or equal to the specified ID.
|
|
50
50
|
# @option options [Integer] :count The number of results to retrieve.
|
|
51
|
-
# @overload list_timeline(user, list, options={})
|
|
51
|
+
# @overload list_timeline(user, list, options = {})
|
|
52
52
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
53
53
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
54
54
|
# @param options [Hash] A customizable set of options.
|
|
@@ -59,7 +59,7 @@ module Twitter
|
|
|
59
59
|
arguments = Twitter::Arguments.new(args)
|
|
60
60
|
merge_list!(arguments.options, arguments.pop)
|
|
61
61
|
merge_owner!(arguments.options, arguments.pop)
|
|
62
|
-
objects_from_response(Twitter::Tweet, :get,
|
|
62
|
+
objects_from_response(Twitter::Tweet, :get, '/1.1/lists/statuses.json', arguments.options)
|
|
63
63
|
end
|
|
64
64
|
|
|
65
65
|
# Removes the specified member from the list
|
|
@@ -69,17 +69,17 @@ module Twitter
|
|
|
69
69
|
# @authentication Requires user context
|
|
70
70
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
71
71
|
# @return [Twitter::List] The list.
|
|
72
|
-
# @overload remove_list_member(list, user_to_remove, options={})
|
|
72
|
+
# @overload remove_list_member(list, user_to_remove, options = {})
|
|
73
73
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
74
74
|
# @param user_to_remove [Integer, String] The user id or screen name of the list member to remove.
|
|
75
75
|
# @param options [Hash] A customizable set of options.
|
|
76
|
-
# @overload remove_list_member(user, list, user_to_remove, options={})
|
|
76
|
+
# @overload remove_list_member(user, list, user_to_remove, options = {})
|
|
77
77
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
78
78
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
79
79
|
# @param user_to_remove [Integer, String] The user id or screen name of the list member to remove.
|
|
80
80
|
# @param options [Hash] A customizable set of options.
|
|
81
81
|
def remove_list_member(*args)
|
|
82
|
-
list_from_response_with_user(:post,
|
|
82
|
+
list_from_response_with_user(:post, '/1.1/lists/members/destroy.json', args)
|
|
83
83
|
end
|
|
84
84
|
deprecate_alias :list_remove_member, :remove_list_member
|
|
85
85
|
|
|
@@ -90,17 +90,17 @@ module Twitter
|
|
|
90
90
|
# @authentication Requires user context
|
|
91
91
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
92
92
|
# @return [Twitter::Cursor]
|
|
93
|
-
# @overload memberships(options={})
|
|
93
|
+
# @overload memberships(options = {})
|
|
94
94
|
# @param options [Hash] A customizable set of options.
|
|
95
95
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
96
96
|
# @option options [Boolean, String, Integer] :filter_to_owned_lists When set to true, t or 1, will return just lists the authenticating user owns, and the user represented by user_id or screen_name is a member of.
|
|
97
|
-
# @overload memberships(user, options={})
|
|
97
|
+
# @overload memberships(user, options = {})
|
|
98
98
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
99
99
|
# @param options [Hash] A customizable set of options.
|
|
100
100
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
101
101
|
# @option options [Boolean, String, Integer] :filter_to_owned_lists When set to true, t or 1, will return just lists the authenticating user owns, and the user represented by user_id or screen_name is a member of.
|
|
102
102
|
def memberships(*args)
|
|
103
|
-
cursor_from_response_with_user(:lists, Twitter::List, :get,
|
|
103
|
+
cursor_from_response_with_user(:lists, Twitter::List, :get, '/1.1/lists/memberships.json', args)
|
|
104
104
|
end
|
|
105
105
|
|
|
106
106
|
# Returns the subscribers of the specified list
|
|
@@ -110,17 +110,17 @@ module Twitter
|
|
|
110
110
|
# @authentication Requires user context
|
|
111
111
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
112
112
|
# @return [Twitter::Cursor] The subscribers of the specified list.
|
|
113
|
-
# @overload list_subscribers(list, options={})
|
|
113
|
+
# @overload list_subscribers(list, options = {})
|
|
114
114
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
115
115
|
# @param options [Hash] A customizable set of options.
|
|
116
116
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
117
|
-
# @overload list_subscribers(user, list, options={})
|
|
117
|
+
# @overload list_subscribers(user, list, options = {})
|
|
118
118
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
119
119
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
120
120
|
# @param options [Hash] A customizable set of options.
|
|
121
121
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
122
122
|
def list_subscribers(*args)
|
|
123
|
-
cursor_from_response_with_list(:get,
|
|
123
|
+
cursor_from_response_with_list(:get, '/1.1/lists/subscribers.json', args)
|
|
124
124
|
end
|
|
125
125
|
|
|
126
126
|
# Make the authenticated user follow the specified list
|
|
@@ -130,15 +130,15 @@ module Twitter
|
|
|
130
130
|
# @authentication Requires user context
|
|
131
131
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
132
132
|
# @return [Twitter::List] The specified list.
|
|
133
|
-
# @overload list_subscribe(list, options={})
|
|
133
|
+
# @overload list_subscribe(list, options = {})
|
|
134
134
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
135
135
|
# @param options [Hash] A customizable set of options.
|
|
136
|
-
# @overload list_subscribe(user, list, options={})
|
|
136
|
+
# @overload list_subscribe(user, list, options = {})
|
|
137
137
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
138
138
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
139
139
|
# @param options [Hash] A customizable set of options.
|
|
140
140
|
def list_subscribe(*args)
|
|
141
|
-
list_from_response(:post,
|
|
141
|
+
list_from_response(:post, '/1.1/lists/subscribers/create.json', args)
|
|
142
142
|
end
|
|
143
143
|
|
|
144
144
|
# Check if a user is a subscriber of the specified list
|
|
@@ -148,18 +148,18 @@ module Twitter
|
|
|
148
148
|
# @authentication Requires user context
|
|
149
149
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
150
150
|
# @return [Boolean] true if user is a subscriber of the specified list, otherwise false.
|
|
151
|
-
# @overload list_subscriber?(list, user_to_check, options={})
|
|
151
|
+
# @overload list_subscriber?(list, user_to_check, options = {})
|
|
152
152
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
153
153
|
# @param user_to_check [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
154
154
|
# @param options [Hash] A customizable set of options.
|
|
155
|
-
# @overload list_subscriber?(user, list, user_to_check, options={})
|
|
155
|
+
# @overload list_subscriber?(user, list, user_to_check, options = {})
|
|
156
156
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
157
157
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
158
158
|
# @param user_to_check [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
159
159
|
# @param options [Hash] A customizable set of options.
|
|
160
160
|
# @return [Boolean] true if user is a subscriber of the specified list, otherwise false.
|
|
161
161
|
def list_subscriber?(*args)
|
|
162
|
-
list_user?(:get,
|
|
162
|
+
list_user?(:get, '/1.1/lists/subscribers/show.json', args)
|
|
163
163
|
end
|
|
164
164
|
|
|
165
165
|
# Unsubscribes the authenticated user form the specified list
|
|
@@ -169,15 +169,15 @@ module Twitter
|
|
|
169
169
|
# @authentication Requires user context
|
|
170
170
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
171
171
|
# @return [Twitter::List] The specified list.
|
|
172
|
-
# @overload list_unsubscribe(list, options={})
|
|
172
|
+
# @overload list_unsubscribe(list, options = {})
|
|
173
173
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
174
174
|
# @param options [Hash] A customizable set of options.
|
|
175
|
-
# @overload list_unsubscribe(user, list, options={})
|
|
175
|
+
# @overload list_unsubscribe(user, list, options = {})
|
|
176
176
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
177
177
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
178
178
|
# @param options [Hash] A customizable set of options.
|
|
179
179
|
def list_unsubscribe(*args)
|
|
180
|
-
list_from_response(:post,
|
|
180
|
+
list_from_response(:post, '/1.1/lists/subscribers/destroy.json', args)
|
|
181
181
|
end
|
|
182
182
|
|
|
183
183
|
# Adds specified members to a list
|
|
@@ -188,17 +188,17 @@ module Twitter
|
|
|
188
188
|
# @authentication Requires user context
|
|
189
189
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
190
190
|
# @return [Twitter::List] The list.
|
|
191
|
-
# @overload add_list_members(list, users, options={})
|
|
191
|
+
# @overload add_list_members(list, users, options = {})
|
|
192
192
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
193
193
|
# @param users [Enumerable<Integer, String, Twitter::User>] A collection of Twitter user IDs, screen names, or objects.
|
|
194
194
|
# @param options [Hash] A customizable set of options.
|
|
195
|
-
# @overload add_list_members(user, list, users, options={})
|
|
195
|
+
# @overload add_list_members(user, list, users, options = {})
|
|
196
196
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
197
197
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
198
198
|
# @param users [Enumerable<Integer, String, Twitter::User>] A collection of Twitter user IDs, screen names, or objects.
|
|
199
199
|
# @param options [Hash] A customizable set of options.
|
|
200
200
|
def add_list_members(*args)
|
|
201
|
-
list_from_response_with_users(:post,
|
|
201
|
+
list_from_response_with_users(:post, '/1.1/lists/members/create_all.json', args)
|
|
202
202
|
end
|
|
203
203
|
deprecate_alias :list_add_members, :add_list_members
|
|
204
204
|
|
|
@@ -209,17 +209,17 @@ module Twitter
|
|
|
209
209
|
# @rate_limited Yes
|
|
210
210
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
211
211
|
# @return [Boolean] true if user is a member of the specified list, otherwise false.
|
|
212
|
-
# @overload list_member?(list, user_to_check, options={})
|
|
212
|
+
# @overload list_member?(list, user_to_check, options = {})
|
|
213
213
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
214
214
|
# @param user_to_check [Integer, String] The user ID or screen name of the list member.
|
|
215
215
|
# @param options [Hash] A customizable set of options.
|
|
216
|
-
# @overload list_member?(user, list, user_to_check, options={})
|
|
216
|
+
# @overload list_member?(user, list, user_to_check, options = {})
|
|
217
217
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
218
218
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
219
219
|
# @param user_to_check [Integer, String] The user ID or screen name of the list member.
|
|
220
220
|
# @param options [Hash] A customizable set of options.
|
|
221
221
|
def list_member?(*args)
|
|
222
|
-
list_user?(:get,
|
|
222
|
+
list_user?(:get, '/1.1/lists/members/show.json', args)
|
|
223
223
|
end
|
|
224
224
|
|
|
225
225
|
# Returns the members of the specified list
|
|
@@ -229,17 +229,17 @@ module Twitter
|
|
|
229
229
|
# @authentication Requires user context
|
|
230
230
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
231
231
|
# @return [Twitter::Cursor]
|
|
232
|
-
# @overload list_members(list, options={})
|
|
232
|
+
# @overload list_members(list, options = {})
|
|
233
233
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
234
234
|
# @param options [Hash] A customizable set of options.
|
|
235
235
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
236
|
-
# @overload list_members(user, list, options={})
|
|
236
|
+
# @overload list_members(user, list, options = {})
|
|
237
237
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
238
238
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
239
239
|
# @param options [Hash] A customizable set of options.
|
|
240
240
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
241
241
|
def list_members(*args)
|
|
242
|
-
cursor_from_response_with_list(:get,
|
|
242
|
+
cursor_from_response_with_list(:get, '/1.1/lists/members.json', args)
|
|
243
243
|
end
|
|
244
244
|
|
|
245
245
|
# Add a member to a list
|
|
@@ -250,17 +250,17 @@ module Twitter
|
|
|
250
250
|
# @authentication Requires user context
|
|
251
251
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
252
252
|
# @return [Twitter::List] The list.
|
|
253
|
-
# @overload add_list_member(list, user_to_add, options={})
|
|
253
|
+
# @overload add_list_member(list, user_to_add, options = {})
|
|
254
254
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
255
255
|
# @param user_to_add [Integer, String] The user id or screen name to add to the list.
|
|
256
256
|
# @param options [Hash] A customizable set of options.
|
|
257
|
-
# @overload add_list_member(user, list, user_to_add, options={})
|
|
257
|
+
# @overload add_list_member(user, list, user_to_add, options = {})
|
|
258
258
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
259
259
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
260
260
|
# @param user_to_add [Integer, String] The user id or screen name to add to the list.
|
|
261
261
|
# @param options [Hash] A customizable set of options.
|
|
262
262
|
def add_list_member(*args)
|
|
263
|
-
list_from_response_with_user(:post,
|
|
263
|
+
list_from_response_with_user(:post, '/1.1/lists/members/create.json', args)
|
|
264
264
|
end
|
|
265
265
|
deprecate_alias :list_add_member, :add_list_member
|
|
266
266
|
|
|
@@ -272,15 +272,15 @@ module Twitter
|
|
|
272
272
|
# @authentication Requires user context
|
|
273
273
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
274
274
|
# @return [Twitter::List] The deleted list.
|
|
275
|
-
# @overload destroy_list(list, options={})
|
|
275
|
+
# @overload destroy_list(list, options = {})
|
|
276
276
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
277
277
|
# @param options [Hash] A customizable set of options.
|
|
278
|
-
# @overload destroy_list(user, list, options={})
|
|
278
|
+
# @overload destroy_list(user, list, options = {})
|
|
279
279
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
280
280
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
281
281
|
# @param options [Hash] A customizable set of options.
|
|
282
282
|
def destroy_list(*args)
|
|
283
|
-
list_from_response(:post,
|
|
283
|
+
list_from_response(:post, '/1.1/lists/destroy.json', args)
|
|
284
284
|
end
|
|
285
285
|
deprecate_alias :list_destroy, :destroy_list
|
|
286
286
|
|
|
@@ -291,19 +291,19 @@ module Twitter
|
|
|
291
291
|
# @authentication Requires user context
|
|
292
292
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
293
293
|
# @return [Twitter::List] The created list.
|
|
294
|
-
# @overload list_update(list, options={})
|
|
294
|
+
# @overload list_update(list, options = {})
|
|
295
295
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
296
296
|
# @param options [Hash] A customizable set of options.
|
|
297
297
|
# @option options [String] :mode ('public') Whether your list is public or private. Values can be 'public' or 'private'.
|
|
298
298
|
# @option options [String] :description The description to give the list.
|
|
299
|
-
# @overload list_update(user, list, options={})
|
|
299
|
+
# @overload list_update(user, list, options = {})
|
|
300
300
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
301
301
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
302
302
|
# @param options [Hash] A customizable set of options.
|
|
303
303
|
# @option options [String] :mode ('public') Whether your list is public or private. Values can be 'public' or 'private'.
|
|
304
304
|
# @option options [String] :description The description to give the list.
|
|
305
305
|
def list_update(*args)
|
|
306
|
-
list_from_response(:post,
|
|
306
|
+
list_from_response(:post, '/1.1/lists/update.json', args)
|
|
307
307
|
end
|
|
308
308
|
|
|
309
309
|
# Creates a new list for the authenticated user
|
|
@@ -318,8 +318,8 @@ module Twitter
|
|
|
318
318
|
# @param options [Hash] A customizable set of options.
|
|
319
319
|
# @option options [String] :mode ('public') Whether your list is public or private. Values can be 'public' or 'private'.
|
|
320
320
|
# @option options [String] :description The description to give the list.
|
|
321
|
-
def create_list(name, options={})
|
|
322
|
-
object_from_response(Twitter::List, :post,
|
|
321
|
+
def create_list(name, options = {})
|
|
322
|
+
object_from_response(Twitter::List, :post, '/1.1/lists/create.json', options.merge(:name => name))
|
|
323
323
|
end
|
|
324
324
|
deprecate_alias :list_create, :create_list
|
|
325
325
|
|
|
@@ -331,15 +331,15 @@ module Twitter
|
|
|
331
331
|
# @authentication Requires user context
|
|
332
332
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
333
333
|
# @return [Twitter::List] The specified list.
|
|
334
|
-
# @overload list(list, options={})
|
|
334
|
+
# @overload list(list, options = {})
|
|
335
335
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
336
336
|
# @param options [Hash] A customizable set of options.
|
|
337
|
-
# @overload list(user, list, options={})
|
|
337
|
+
# @overload list(user, list, options = {})
|
|
338
338
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
339
339
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
340
340
|
# @param options [Hash] A customizable set of options.
|
|
341
341
|
def list(*args)
|
|
342
|
-
list_from_response(:get,
|
|
342
|
+
list_from_response(:get, '/1.1/lists/show.json', args)
|
|
343
343
|
end
|
|
344
344
|
|
|
345
345
|
# List the lists the specified user follows
|
|
@@ -349,15 +349,15 @@ module Twitter
|
|
|
349
349
|
# @authentication Requires user context
|
|
350
350
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
351
351
|
# @return [Twitter::Cursor]
|
|
352
|
-
# @overload subscriptions(options={})
|
|
352
|
+
# @overload subscriptions(options = {})
|
|
353
353
|
# @param options [Hash] A customizable set of options.
|
|
354
354
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
355
|
-
# @overload subscriptions(user, options={})
|
|
355
|
+
# @overload subscriptions(user, options = {})
|
|
356
356
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
357
357
|
# @param options [Hash] A customizable set of options.
|
|
358
358
|
# @option options [Integer] :cursor (-1) Breaks the results into pages. Provide values as returned in the response objects's next_cursor and previous_cursor attributes to page back and forth in the list.
|
|
359
359
|
def subscriptions(*args)
|
|
360
|
-
cursor_from_response_with_user(:lists, Twitter::List, :get,
|
|
360
|
+
cursor_from_response_with_user(:lists, Twitter::List, :get, '/1.1/lists/subscriptions.json', args)
|
|
361
361
|
end
|
|
362
362
|
|
|
363
363
|
# Removes specified members from the list
|
|
@@ -367,17 +367,17 @@ module Twitter
|
|
|
367
367
|
# @authentication Requires user context
|
|
368
368
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
369
369
|
# @return [Twitter::List] The list.
|
|
370
|
-
# @overload remove_list_members(list, users, options={})
|
|
370
|
+
# @overload remove_list_members(list, users, options = {})
|
|
371
371
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
372
372
|
# @param users [Enumerable<Integer, String, Twitter::User>] A collection of Twitter user IDs, screen names, or objects.
|
|
373
373
|
# @param options [Hash] A customizable set of options.
|
|
374
|
-
# @overload remove_list_members(user, list, users, options={})
|
|
374
|
+
# @overload remove_list_members(user, list, users, options = {})
|
|
375
375
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
376
376
|
# @param list [Integer, String, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
377
377
|
# @param users [Enumerable<Integer, String, Twitter::User>] A collection of Twitter user IDs, screen names, or objects.
|
|
378
378
|
# @param options [Hash] A customizable set of options.
|
|
379
379
|
def remove_list_members(*args)
|
|
380
|
-
list_from_response_with_users(:post,
|
|
380
|
+
list_from_response_with_users(:post, '/1.1/lists/members/destroy_all.json', args)
|
|
381
381
|
end
|
|
382
382
|
deprecate_alias :list_remove_members, :remove_list_members
|
|
383
383
|
|
|
@@ -388,15 +388,15 @@ module Twitter
|
|
|
388
388
|
# @authentication Requires user context
|
|
389
389
|
# @raise [Twitter::Error::Unauthorized] Error raised when supplied user credentials are not valid.
|
|
390
390
|
# @return [Array<Twitter::List>]
|
|
391
|
-
# @overload owned_lists(options={})
|
|
391
|
+
# @overload owned_lists(options = {})
|
|
392
392
|
# @param options [Hash] A customizable set of options.
|
|
393
393
|
# @option options [Integer] :count The amount of results to return per page. Defaults to 20. No more than 1000 results will ever be returned in a single page.
|
|
394
|
-
# @overload owned_lists(user, options={})
|
|
394
|
+
# @overload owned_lists(user, options = {})
|
|
395
395
|
# @param user [Integer, String, Twitter::User] A Twitter user ID, screen name, URI, or object.
|
|
396
396
|
# @param options [Hash] A customizable set of options.
|
|
397
397
|
# @option options [Integer] :count The amount of results to return per page. Defaults to 20. No more than 1000 results will ever be returned in a single page.
|
|
398
398
|
def owned_lists(*args)
|
|
399
|
-
cursor_from_response_with_user(:lists, Twitter::List, :get,
|
|
399
|
+
cursor_from_response_with_user(:lists, Twitter::List, :get, '/1.1/lists/ownerships.json', args)
|
|
400
400
|
end
|
|
401
401
|
deprecate_alias :lists_ownerships, :owned_lists
|
|
402
402
|
deprecate_alias :lists_owned, :owned_lists
|
|
@@ -455,20 +455,20 @@ module Twitter
|
|
|
455
455
|
# @param hash [Hash]
|
|
456
456
|
# @param list [Integer, String, URI, Twitter::List] A Twitter list ID, slug, URI, or object.
|
|
457
457
|
# @return [Hash]
|
|
458
|
-
def merge_list!(hash, list)
|
|
458
|
+
def merge_list!(hash, list) # rubocop:disable MethodLength
|
|
459
459
|
case list
|
|
460
460
|
when Integer
|
|
461
461
|
hash[:list_id] = list
|
|
462
462
|
when String
|
|
463
463
|
if list[URI_SUBSTRING]
|
|
464
|
-
list = list.split(
|
|
464
|
+
list = list.split('/')
|
|
465
465
|
hash[:slug] = list.pop
|
|
466
466
|
hash[:owner_screen_name] = list.pop
|
|
467
467
|
else
|
|
468
468
|
hash[:slug] = list
|
|
469
469
|
end
|
|
470
470
|
when URI
|
|
471
|
-
list = list.path.split(
|
|
471
|
+
list = list.path.split('/')
|
|
472
472
|
hash[:slug] = list.pop
|
|
473
473
|
hash[:owner_screen_name] = list.pop
|
|
474
474
|
when Twitter::List
|
|
@@ -486,12 +486,11 @@ module Twitter
|
|
|
486
486
|
def merge_owner!(hash, user)
|
|
487
487
|
unless hash[:owner_id] || hash[:owner_screen_name]
|
|
488
488
|
user ||= screen_name
|
|
489
|
-
merge_user!(hash, user,
|
|
489
|
+
merge_user!(hash, user, 'owner')
|
|
490
490
|
hash[:owner_id] = hash.delete(:owner_user_id) unless hash[:owner_user_id].nil?
|
|
491
491
|
end
|
|
492
492
|
hash
|
|
493
493
|
end
|
|
494
|
-
|
|
495
494
|
end
|
|
496
495
|
end
|
|
497
496
|
end
|