ayadn 0.6.4 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +20 -0
- data/.rspec +2 -0
- data/.travis.yml +17 -0
- data/Gemfile +14 -0
- data/Guardfile +26 -0
- data/LICENSE.txt +22 -0
- data/MANUAL.md +946 -0
- data/README.md +26 -411
- data/Rakefile +6 -0
- data/ayadn.gemspec +39 -0
- data/bin/ayadn +3 -3
- data/lib/ayadn.rb +12 -25
- data/lib/ayadn/action.rb +1121 -0
- data/lib/ayadn/alias.rb +106 -0
- data/lib/ayadn/api.rb +312 -301
- data/lib/ayadn/app.rb +429 -365
- data/lib/ayadn/authorize.rb +127 -28
- data/lib/ayadn/blacklist.rb +116 -0
- data/lib/ayadn/cnx.rb +105 -0
- data/lib/ayadn/databases.rb +110 -0
- data/lib/ayadn/descriptions.rb +1043 -0
- data/lib/ayadn/endpoints.rb +220 -153
- data/lib/ayadn/errors.rb +37 -0
- data/lib/ayadn/extend.rb +4 -10
- data/lib/ayadn/fileops.rb +48 -0
- data/lib/ayadn/logs.rb +32 -0
- data/lib/ayadn/pinboard.rb +46 -35
- data/lib/ayadn/post.rb +229 -212
- data/lib/ayadn/scroll.rb +251 -0
- data/lib/ayadn/set.rb +377 -0
- data/lib/ayadn/settings.rb +195 -0
- data/lib/ayadn/status.rb +226 -165
- data/lib/ayadn/switch.rb +72 -0
- data/lib/ayadn/version.rb +4 -0
- data/lib/ayadn/view.rb +506 -269
- data/lib/ayadn/workers.rb +362 -0
- data/spec/helpers.rb +19 -0
- data/spec/mock/@ericd.json +160 -0
- data/spec/mock/@m.json +45 -0
- data/spec/mock/checkins.json +1856 -0
- data/spec/mock/fwr_@ayadn.json +1077 -0
- data/spec/mock/posted.json +1 -0
- data/spec/mock/stream.json +1 -0
- data/spec/spec_helper.rb +14 -0
- data/spec/unit/api_spec.rb +61 -0
- data/spec/unit/databases_spec.rb +5 -0
- data/spec/unit/descriptions_spec.rb +9 -0
- data/spec/unit/endpoints_spec.rb +35 -0
- data/spec/unit/post_spec.rb +136 -0
- data/spec/unit/status_spec.rb +9 -0
- data/spec/unit/view_spec.rb +119 -0
- data/spec/unit/workers_spec.rb +147 -0
- metadata +216 -40
- data/CHANGELOG.md +0 -250
- data/CONTRIBUTORS.md +0 -5
- data/LICENSE.md +0 -14
- data/lib/ayadn/adn_files.rb +0 -84
- data/lib/ayadn/client-http.rb +0 -226
- data/lib/ayadn/colors.rb +0 -62
- data/lib/ayadn/config.yml +0 -35
- data/lib/ayadn/debug.rb +0 -36
- data/lib/ayadn/files.rb +0 -184
- data/lib/ayadn/get-api.rb +0 -43
- data/lib/ayadn/help.rb +0 -152
- data/lib/ayadn/list.rb +0 -89
- data/lib/ayadn/main.rb +0 -542
- data/lib/ayadn/requires.rb +0 -12
- data/lib/ayadn/skip.rb +0 -27
- data/lib/ayadn/tools.rb +0 -208
- data/lib/ayadn/user-stream.rb +0 -91
- data/lib/ayadn/view-channels.rb +0 -120
- data/lib/ayadn/view-interactions.rb +0 -57
- data/lib/ayadn/view-object.rb +0 -195
- data/lib/experiments.rb +0 -109
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a1ac4ca5dcab8724e657f5dbcc336fabf6a91fdf
|
4
|
+
data.tar.gz: 6fd6a5129de0234ca67f8e99e66be05c9c5d093c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d2badae07e439ce5c3b03b930f4b42e01dbc38a7371aabb6e375a096e6410bdd1aefbd4847f3d198bdff4fc78ca8336d063f2d64615a3cd6c827f03818cecdab
|
7
|
+
data.tar.gz: 8979d5fc1bdc384bd2405bb7d9ea2217ea9b106968c9a91cdf31d71ccb488f18e57593b8f0b5c4f29b052ba68f1c707d6918c80f64881570b3142280a8376e92
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/.travis.yml
ADDED
data/Gemfile
ADDED
data/Guardfile
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
# A sample Guardfile
|
2
|
+
# More info at https://github.com/guard/guard#readme
|
3
|
+
|
4
|
+
guard :rspec do
|
5
|
+
watch(%r{^spec/.+_spec\.rb$})
|
6
|
+
watch(%r{^lib/ayadn/(.+)\.rb$}) { |m| "spec/unit/#{m[1]}_spec.rb" }
|
7
|
+
watch('spec/spec_helper.rb') { "spec" }
|
8
|
+
watch('spec/helpers.rb')
|
9
|
+
watch('bin/ayadn')
|
10
|
+
|
11
|
+
# # Rails example
|
12
|
+
# watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
|
13
|
+
# watch(%r{^app/(.*)(\.erb|\.haml|\.slim)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
|
14
|
+
# watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
|
15
|
+
# watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
|
16
|
+
# watch('config/routes.rb') { "spec/routing" }
|
17
|
+
# watch('app/controllers/application_controller.rb') { "spec/controllers" }
|
18
|
+
|
19
|
+
# # Capybara features specs
|
20
|
+
# watch(%r{^app/views/(.+)/.*\.(erb|haml|slim)$}) { |m| "spec/features/#{m[1]}_spec.rb" }
|
21
|
+
|
22
|
+
# # Turnip features and steps
|
23
|
+
# watch(%r{^spec/acceptance/(.+)\.feature$})
|
24
|
+
# watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance' }
|
25
|
+
end
|
26
|
+
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2014 Eric Dejonckheere
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/MANUAL.md
ADDED
@@ -0,0 +1,946 @@
|
|
1
|
+
- [INSTALL](#install)
|
2
|
+
- [RUBY](#ruby)
|
3
|
+
- [AYADN](#ayadn)
|
4
|
+
- [OS X, LINUX, BSD](#os-x-linux-bsd)
|
5
|
+
- [WINDOWS](#windows)
|
6
|
+
- [FIRST STEPS](#first-steps)
|
7
|
+
- [AUTHORIZE](#authorize)
|
8
|
+
- [HELP](#help)
|
9
|
+
- [EXAMPLES](#examples)
|
10
|
+
- [ACCOUNTS](#accounts)
|
11
|
+
- [DATA](#data)
|
12
|
+
- [HOW-TO](#how-to)
|
13
|
+
- [STREAMS](#streams)
|
14
|
+
- [TIMELINE](#timeline)
|
15
|
+
- [AVAILABLE OPTIONS](#available-options)
|
16
|
+
- [SCROLL](#scroll)
|
17
|
+
- [COUNT](#count)
|
18
|
+
- [INDEX](#index)
|
19
|
+
- [NEW](#new)
|
20
|
+
- [RAW](#raw)
|
21
|
+
- [GLOBAL](#global)
|
22
|
+
- [CHECKINS](#checkins)
|
23
|
+
- [CONVERSATIONS](#conversations)
|
24
|
+
- [TRENDING](#trending)
|
25
|
+
- [MENTIONS](#mentions)
|
26
|
+
- [POSTS](#posts)
|
27
|
+
- [MESSAGES](#messages)
|
28
|
+
- [WHATSTARRED](#whatstarred)
|
29
|
+
- [CONVO](#convo)
|
30
|
+
- [HASHTAG](#hashtag)
|
31
|
+
- [SEARCH](#search)
|
32
|
+
- [RANDOM](#random)
|
33
|
+
- [USER INFO](#user-info)
|
34
|
+
- [POST INFO](#post-info)
|
35
|
+
- [POSTING](#posting)
|
36
|
+
- [POST](#post)
|
37
|
+
- [WRITE](#write)
|
38
|
+
- [AUTO POST](#auto-post)
|
39
|
+
- [REPLY](#reply)
|
40
|
+
- [PM (PRIVATE MESSAGE)](#pm-private-message)
|
41
|
+
- [SEND](#send)
|
42
|
+
- [ACTIONS](#actions)
|
43
|
+
- [DELETE](#delete)
|
44
|
+
- [REPOST](#repost)
|
45
|
+
- [UNREPOST](#unrepost)
|
46
|
+
- [STAR](#star)
|
47
|
+
- [UNSTAR](#unstar)
|
48
|
+
- [FOLLOW](#follow)
|
49
|
+
- [UNFOLLOW](#unfollow)
|
50
|
+
- [MUTE](#mute)
|
51
|
+
- [UNMUTE](#unmute)
|
52
|
+
- [BLOCK](#block)
|
53
|
+
- [UNBLOCK](#unblock)
|
54
|
+
- [DOWNLOAD](#download)
|
55
|
+
- [LISTS](#lists)
|
56
|
+
- [FOLLOWERS](#followers)
|
57
|
+
- [FOLLOWINGS](#followings)
|
58
|
+
- [CHANNELS](#channels)
|
59
|
+
- [INTERACTIONS](#interactions)
|
60
|
+
- [WHOREPOSTED](#whoreposted)
|
61
|
+
- [MUTED](#muted)
|
62
|
+
- [BLOCKED](#blocked)
|
63
|
+
- [SETTINGS](#settings)
|
64
|
+
- [FILES](#files)
|
65
|
+
- [TOOLS](#tools)
|
66
|
+
- [AUTHORIZE](#authorize-1)
|
67
|
+
- [SWITCH](#switch)
|
68
|
+
- [BLACKLIST](#blacklist)
|
69
|
+
- [ADD](#add)
|
70
|
+
- [REMOVE](#remove)
|
71
|
+
- [LIST](#list)
|
72
|
+
- [IMPORT](#import)
|
73
|
+
- [ALIAS](#alias)
|
74
|
+
- [CREATE](#create)
|
75
|
+
- [DELETE](#delete-1)
|
76
|
+
- [LIST](#list-1)
|
77
|
+
- [IMPORT](#import-1)
|
78
|
+
- [SET](#set)
|
79
|
+
- [EXTRAS](#extras)
|
80
|
+
- [PIN](#pin)
|
81
|
+
- [NOWPLAYING](#nowplaying)
|
82
|
+
|
83
|
+
# INSTALL
|
84
|
+
|
85
|
+
## RUBY
|
86
|
+
|
87
|
+
Ayadn is compatible with Ruby 1.9.3 but works better with Ruby 2.0 or newer.
|
88
|
+
|
89
|
+
## AYADN
|
90
|
+
|
91
|
+
Install:
|
92
|
+
|
93
|
+
`gem install ayadn`
|
94
|
+
|
95
|
+
Update:
|
96
|
+
|
97
|
+
`gem update ayadn`
|
98
|
+
|
99
|
+
### OS X, LINUX, BSD
|
100
|
+
|
101
|
+
Please use something like RVM or RBENV to install Ruby if necessary.
|
102
|
+
|
103
|
+
You can also use the Ruby shipped with your system but it's not ideal, as it will probably require root privileges or using the 'sudo' command.
|
104
|
+
|
105
|
+
### WINDOWS
|
106
|
+
|
107
|
+
You have to run one more command:
|
108
|
+
|
109
|
+
`gem install win32console -v 1.3.2`
|
110
|
+
|
111
|
+
# FIRST STEPS
|
112
|
+
|
113
|
+
## AUTHORIZE
|
114
|
+
|
115
|
+
You have to give Ayadn the authorization to use your App.net account.
|
116
|
+
|
117
|
+
Just run `ayadn authorize` or `ayadn -auth` to register a new user.
|
118
|
+
|
119
|
+
## HELP
|
120
|
+
|
121
|
+
`ayadn` shows a list of available commands.
|
122
|
+
|
123
|
+
`ayadn help COMMAND` shows the instructions and available [options](#available-options) for a specific command.
|
124
|
+
|
125
|
+
Examples:
|
126
|
+
|
127
|
+
`ayadn help post`
|
128
|
+
|
129
|
+
`ayadn help timeline`
|
130
|
+
|
131
|
+
## EXAMPLES
|
132
|
+
|
133
|
+
Just a few examples to give you a hint at the flexible syntax:
|
134
|
+
|
135
|
+
`ayadn timeline`
|
136
|
+
|
137
|
+
`ayadn -tl`
|
138
|
+
|
139
|
+
`ayadn checkins -c10 -i`
|
140
|
+
|
141
|
+
`ayadn global --scroll`
|
142
|
+
|
143
|
+
`ayadn -up @ericd`
|
144
|
+
|
145
|
+
`ayadn -P 'Hello guys!'`
|
146
|
+
|
147
|
+
`ayadn -R 23362460`
|
148
|
+
|
149
|
+
`ayadn convo 23362788`
|
150
|
+
|
151
|
+
`ayadn search movies hollywood`
|
152
|
+
|
153
|
+
`ayadn follow @ericd`
|
154
|
+
|
155
|
+
## ACCOUNTS
|
156
|
+
|
157
|
+
Ayadn supports multiple accounts.
|
158
|
+
|
159
|
+
Register a new user with `ayadn -auth` at any moment.
|
160
|
+
|
161
|
+
You can then switch between accounts:
|
162
|
+
|
163
|
+
`ayadn switch @ericd` or `ayadn -@ ericd`
|
164
|
+
|
165
|
+
## DATA
|
166
|
+
|
167
|
+
All Ayadn files and folders are created in your 'home' folder.
|
168
|
+
|
169
|
+
On Mac OS X, it looks like this:
|
170
|
+
|
171
|
+
/Users/ericdke/ayadn/ericd
|
172
|
+
├── auth
|
173
|
+
│ └── token
|
174
|
+
├── backup
|
175
|
+
├── config
|
176
|
+
│ ├── api.json
|
177
|
+
│ ├── config.yml
|
178
|
+
│ └── version.yml
|
179
|
+
├── db
|
180
|
+
│ ├── aliases.db
|
181
|
+
│ ├── blacklist.db
|
182
|
+
│ └── users.db
|
183
|
+
├── downloads
|
184
|
+
├── lists
|
185
|
+
├── log
|
186
|
+
│ └── ayadn.log
|
187
|
+
├── messages
|
188
|
+
├── pagination
|
189
|
+
│ ├── index.db
|
190
|
+
│ └── pagination.db
|
191
|
+
└── posts
|
192
|
+
|
193
|
+
Each authorized account has its set of folders and databases.
|
194
|
+
|
195
|
+
This is also the repository of the configuration file, `config.yml`.
|
196
|
+
|
197
|
+
Although there's the `set` command in Ayadn to configure most parameters, you can also edit the file manually. If anything goes wrong, simply delete `config.yml` and Ayadn will re-create one with default values.
|
198
|
+
|
199
|
+
|
200
|
+
# HOW-TO
|
201
|
+
|
202
|
+
Note: options are only described once in this manual (in the first example, for 'timeline').
|
203
|
+
|
204
|
+
However, options are available for mosts of streams! They're described only once for readability purposes.
|
205
|
+
|
206
|
+
**You can check if a command has specific options with `ayadn help COMMAND`.**
|
207
|
+
Most examples will include the 'complete' command followed by the 'shortcut' command. Of course, using Ayadn is way faster with the shortcut commands.
|
208
|
+
|
209
|
+
If you're like me, you'll even want to create aliases in bash/zsh or TextExpander snippets for the combinations of Ayadn commands and options you use the most...
|
210
|
+
|
211
|
+
|
212
|
+
# STREAMS
|
213
|
+
|
214
|
+
This section is about the App.net streams.
|
215
|
+
|
216
|
+
## TIMELINE
|
217
|
+
|
218
|
+
Display your main timeline.
|
219
|
+
|
220
|
+
This is also called the 'Unified stream': it regroups the posts of people you follow and the posts mentioning you.
|
221
|
+
|
222
|
+
`ayadn timeline`
|
223
|
+
|
224
|
+
`ayadn -tl`
|
225
|
+
|
226
|
+
|
227
|
+
### AVAILABLE OPTIONS
|
228
|
+
|
229
|
+
#### SCROLL
|
230
|
+
|
231
|
+
Scroll your timeline with:
|
232
|
+
|
233
|
+
`ayadn timeline --scroll`
|
234
|
+
|
235
|
+
`ayadn -tl -s`
|
236
|
+
|
237
|
+
Note: Ayadn pulls the stream every 3 seconds by default.
|
238
|
+
|
239
|
+
It means you can launch up to 3 scroll streams at a time _per account_.
|
240
|
+
|
241
|
+
You can bring that value down to 1 second if you're using only _one_ scroll stream per account at a time, 2 seconds if you're using _two_ scroll streams, and so on and so forth.
|
242
|
+
|
243
|
+
If Ayadn ends up making too many requests to ADN, it will display an alert message with instructions then stop running.
|
244
|
+
|
245
|
+
So if you plan on launching many Ayadn scrolling instances at once, you should [set](#set) the timer parameter accordingly (App.net accepts 5000 requests per hour per account maximum).
|
246
|
+
|
247
|
+
#### COUNT
|
248
|
+
|
249
|
+
Ayadn displays a certain number of posts by default when you request a stream.
|
250
|
+
|
251
|
+
With the *count* option, you can set a specific value for each request:
|
252
|
+
|
253
|
+
`ayadn --count=10 timeline`
|
254
|
+
|
255
|
+
`ayadn -c10 -tl`
|
256
|
+
|
257
|
+
The maximum value is 200 for any stream.
|
258
|
+
|
259
|
+
#### INDEX
|
260
|
+
|
261
|
+
Shows an index instead of the posts ids.
|
262
|
+
|
263
|
+
`ayadn --index timeline`
|
264
|
+
|
265
|
+
`ayadn -tl -i`
|
266
|
+
|
267
|
+
This is particularly useful if you're using Ayadn to [reply](#reply) to conversations.
|
268
|
+
|
269
|
+
Copy/pasting the post id can be tedious at times, and anyway it's faster to glance at a short number and use it immediately.
|
270
|
+
|
271
|
+
Example:
|
272
|
+
|
273
|
+
ayadn -tl -i
|
274
|
+
ayadn -R 33
|
275
|
+
|
276
|
+
if 33 is the number of the indexed post you want to reply to.
|
277
|
+
|
278
|
+
#### NEW
|
279
|
+
|
280
|
+
Displays only the new posts in the stream since your last visit.
|
281
|
+
|
282
|
+
`ayadn --new timeline`
|
283
|
+
|
284
|
+
`ayadn -n -tl`
|
285
|
+
|
286
|
+
#### RAW
|
287
|
+
|
288
|
+
Displays the raw response from the App.net API instead of the formatted Ayadn output. For debugging and learning purposes.
|
289
|
+
|
290
|
+
`ayadn -x -tl`
|
291
|
+
|
292
|
+
## GLOBAL
|
293
|
+
|
294
|
+
Display the 'Global stream'.
|
295
|
+
|
296
|
+
`ayadn global`
|
297
|
+
|
298
|
+
`ayadn -gl`
|
299
|
+
|
300
|
+
Although the 'Global stream' is nowadays infested with spammers, it remains a fantastic source to find new people to interact with.
|
301
|
+
|
302
|
+
Ayadn helps you in that task with the [blacklist](#blacklist) command, which allows you to mute posters _per client name_, obliterating suddenly most of the bots and feeds.
|
303
|
+
|
304
|
+
You may also want to read the Conversations stream, which contains only posts leading to conversation threads.
|
305
|
+
|
306
|
+
## CHECKINS
|
307
|
+
|
308
|
+
Display the 'Checkins stream'.
|
309
|
+
|
310
|
+
Ayadn will show any available geolocation data for these posts.
|
311
|
+
|
312
|
+
`ayadn checkins`
|
313
|
+
|
314
|
+
`ayadn -ck`
|
315
|
+
|
316
|
+
## CONVERSATIONS
|
317
|
+
|
318
|
+
Display the 'Conversations stream'.
|
319
|
+
|
320
|
+
This is a stream of posts that lead to [conversations](#convo) with real people.
|
321
|
+
|
322
|
+
`ayadn conversations`
|
323
|
+
|
324
|
+
`ayadn -cq`
|
325
|
+
|
326
|
+
## TRENDING
|
327
|
+
|
328
|
+
Display the 'Trending stream'.
|
329
|
+
|
330
|
+
This is a stream of trending posts.
|
331
|
+
|
332
|
+
`ayadn trending`
|
333
|
+
|
334
|
+
`ayadn -tr`
|
335
|
+
|
336
|
+
## MENTIONS
|
337
|
+
|
338
|
+
Display posts containing a mention of @username.
|
339
|
+
|
340
|
+
`ayadn mentions @ericd`
|
341
|
+
|
342
|
+
`ayadn -m @ericd`
|
343
|
+
|
344
|
+
You can get your own mentions stream by using *me* instead of *@username*:
|
345
|
+
|
346
|
+
`ayadn -m me`
|
347
|
+
|
348
|
+
Don't forget that like most streams, Mentions is [scrollable](#scroll): very convenient to know at a glance if we got something new from our friends!
|
349
|
+
|
350
|
+
## POSTS
|
351
|
+
|
352
|
+
Show the posts of a specific user.
|
353
|
+
|
354
|
+
`ayadn userposts @ericd`
|
355
|
+
|
356
|
+
`ayadn -up @ericd`
|
357
|
+
|
358
|
+
You can get your own posts by using *me* instead of *@username*:
|
359
|
+
|
360
|
+
`ayadn -up me`
|
361
|
+
|
362
|
+
## MESSAGES
|
363
|
+
|
364
|
+
Show messages in a [channel](#channels).
|
365
|
+
|
366
|
+
`ayadn messages 46217`
|
367
|
+
|
368
|
+
`ayadn -ms 46217`
|
369
|
+
|
370
|
+
You can replace the channel id with its alias if you previously [defined](#alias) one:
|
371
|
+
|
372
|
+
`ayadn -ms mychannelalias`
|
373
|
+
|
374
|
+
## WHATSTARRED
|
375
|
+
|
376
|
+
Show posts starred by a specific user.
|
377
|
+
|
378
|
+
`ayadn whatstarred @ericd`
|
379
|
+
|
380
|
+
`ayadn -was @ericd`
|
381
|
+
|
382
|
+
You can get your own stars by using *me* instead of *@username*:
|
383
|
+
|
384
|
+
`ayadn -was me`
|
385
|
+
|
386
|
+
## CONVO
|
387
|
+
|
388
|
+
Show the conversation thread around a specific post.
|
389
|
+
|
390
|
+
`ayadn convo 23362788`
|
391
|
+
|
392
|
+
`ayadn -co 23362788`
|
393
|
+
|
394
|
+
## HASHTAG
|
395
|
+
|
396
|
+
Show recent posts containing #HASHTAG(s).
|
397
|
+
|
398
|
+
`ayadn hashtag nowplaying`
|
399
|
+
|
400
|
+
`ayadn -t nowplaying`
|
401
|
+
|
402
|
+
`ayadn -t nowplaying rock`
|
403
|
+
|
404
|
+
## SEARCH
|
405
|
+
|
406
|
+
Show recents posts containing WORD(s).
|
407
|
+
|
408
|
+
`ayadn search ruby`
|
409
|
+
|
410
|
+
`ayadn -s ruby`
|
411
|
+
|
412
|
+
`ayadn -s ruby json api`
|
413
|
+
|
414
|
+
## RANDOM
|
415
|
+
|
416
|
+
Show series of random posts from App.net. Just for fun :)
|
417
|
+
|
418
|
+
`ayadn random`
|
419
|
+
|
420
|
+
`ayadn -rnd`
|
421
|
+
|
422
|
+
## USER INFO
|
423
|
+
|
424
|
+
Show informations about a user.
|
425
|
+
|
426
|
+
`ayadn userinfo @ericd`
|
427
|
+
|
428
|
+
`ayadn -ui @ericd`
|
429
|
+
|
430
|
+
You can see your own info by using *me* instead of *@username*:
|
431
|
+
|
432
|
+
`ayadn -ui me`
|
433
|
+
|
434
|
+
## POST INFO
|
435
|
+
|
436
|
+
Show informations about a post.
|
437
|
+
|
438
|
+
`ayadn postinfo 23362788`
|
439
|
+
|
440
|
+
`ayadn -pi 23362788`
|
441
|
+
|
442
|
+
# POSTING
|
443
|
+
|
444
|
+
This section is about posting to App.net.
|
445
|
+
|
446
|
+
## POST
|
447
|
+
|
448
|
+
Simple and fast way to post a short sentence/word to App.net.
|
449
|
+
|
450
|
+
`ayadn post Hello from Ayadn`
|
451
|
+
|
452
|
+
`ayadn -P Hello from Ayadn`
|
453
|
+
|
454
|
+
`ayadn -P @ericd hello Eric`
|
455
|
+
|
456
|
+
You have to put your text between single quotes if you're using punctuation:
|
457
|
+
|
458
|
+
`ayadn -P 'Hello from Ayadn, guys!'`
|
459
|
+
|
460
|
+
But remember you can't then use any `'` character!
|
461
|
+
|
462
|
+
**So you should rather use either the [write](#write) or the [auto](#auto-post) method for posting.**
|
463
|
+
|
464
|
+
## WRITE
|
465
|
+
|
466
|
+
Multi-line post to App.net.
|
467
|
+
|
468
|
+
This is the recommended way to post elaborate text to ADN:
|
469
|
+
|
470
|
+
`ayadn write`
|
471
|
+
|
472
|
+
`ayadn -W`
|
473
|
+
|
474
|
+
It will show you a prompt where you can type anything, including special characters and Markdown links.
|
475
|
+
|
476
|
+
Hit ENTER to create line breaks and paragraphs.
|
477
|
+
|
478
|
+
Cancel your post with CTRC-C or send it with CTRL-D.
|
479
|
+
|
480
|
+
Just type a @username at the beginning of your post if you want to mention a specific user, as you would in any other App.net client.
|
481
|
+
|
482
|
+
## AUTO POST
|
483
|
+
|
484
|
+
Auto post every line of input.
|
485
|
+
|
486
|
+
The is the funniest way to post to ADN! :)
|
487
|
+
|
488
|
+
`ayadn auto`
|
489
|
+
|
490
|
+
In this mode, each line you type (each time you hit ENTER!) is automatically posted to ADN.
|
491
|
+
|
492
|
+
You can type anything, including special characters and Markdown links, and of course mention anyone: the only thing you can't do from this mode is _replying_ to a post in a thread.
|
493
|
+
|
494
|
+
Hit CTRL+C to exit this mode at any moment.
|
495
|
+
|
496
|
+
## REPLY
|
497
|
+
|
498
|
+
Reply to a specific post.
|
499
|
+
|
500
|
+
- You can reply by specifying the post id:
|
501
|
+
|
502
|
+
`ayadn reply 23362460`
|
503
|
+
|
504
|
+
`ayadn -R 23362460`
|
505
|
+
|
506
|
+
Ayadn will then show you the [write](#write) prompt.
|
507
|
+
|
508
|
+
If you reply to a post containing multiple mentions, your text will be inserted between the leading mention and the other ones.
|
509
|
+
|
510
|
+
- You can also reply to the *index* of the post instead of its *id* _if you used the '--index' or '-i' option_ when previously viewing a stream:
|
511
|
+
|
512
|
+
`ayadn -R 3`
|
513
|
+
|
514
|
+
## PM (PRIVATE MESSAGE)
|
515
|
+
|
516
|
+
Send a private message to a specific user.
|
517
|
+
|
518
|
+
`ayadn pm @ericd`
|
519
|
+
|
520
|
+
Ayadn will then show you the [write](#write) prompt.
|
521
|
+
|
522
|
+
## SEND
|
523
|
+
|
524
|
+
Send a message to an App.net CHANNEL.
|
525
|
+
|
526
|
+
`ayadn send 46217`
|
527
|
+
|
528
|
+
`ayadn -C 46217`
|
529
|
+
|
530
|
+
Ayadn will then show you the [write](#write) prompt.
|
531
|
+
|
532
|
+
If you've already created an [alias](#alias) for the channel, you can post to it with:
|
533
|
+
|
534
|
+
`ayadn send mychannelalias`
|
535
|
+
|
536
|
+
`ayadn -C mychannelalias`
|
537
|
+
|
538
|
+
# ACTIONS
|
539
|
+
|
540
|
+
This section is about available actions like follow, repost, etc.
|
541
|
+
|
542
|
+
## DELETE
|
543
|
+
|
544
|
+
Delete a post.
|
545
|
+
|
546
|
+
`ayadn delete 23365251`
|
547
|
+
|
548
|
+
`ayadn -D 23365251`
|
549
|
+
|
550
|
+
## REPOST
|
551
|
+
|
552
|
+
Repost a post.
|
553
|
+
|
554
|
+
`ayadn repost 23365251`
|
555
|
+
|
556
|
+
`ayadn -O 23365251`
|
557
|
+
|
558
|
+
## UNREPOST
|
559
|
+
|
560
|
+
Unrepost a post.
|
561
|
+
|
562
|
+
`ayadn unrepost 23365251`
|
563
|
+
|
564
|
+
`ayadn -UR 23365251`
|
565
|
+
|
566
|
+
## STAR
|
567
|
+
|
568
|
+
Star a post.
|
569
|
+
|
570
|
+
`ayadn star 23365251`
|
571
|
+
|
572
|
+
`ayadn -ST 23365251`
|
573
|
+
|
574
|
+
## UNSTAR
|
575
|
+
|
576
|
+
Unstar a post.
|
577
|
+
|
578
|
+
`ayadn unstar 23365251`
|
579
|
+
|
580
|
+
`ayadn -US 23365251`
|
581
|
+
|
582
|
+
## FOLLOW
|
583
|
+
|
584
|
+
Follow a user.
|
585
|
+
|
586
|
+
`ayadn follow @ericd`
|
587
|
+
|
588
|
+
`ayadn -FO @ericd`
|
589
|
+
|
590
|
+
## UNFOLLOW
|
591
|
+
|
592
|
+
Unfollow a user.
|
593
|
+
|
594
|
+
`ayadn unfollow @ericd`
|
595
|
+
|
596
|
+
`ayadn -UF @ericd`
|
597
|
+
|
598
|
+
## MUTE
|
599
|
+
|
600
|
+
Mute a user.
|
601
|
+
|
602
|
+
`ayadn mute @spammer`
|
603
|
+
|
604
|
+
`ayadn -MU @spammer`
|
605
|
+
|
606
|
+
## UNMUTE
|
607
|
+
|
608
|
+
Unmute a user.
|
609
|
+
|
610
|
+
`ayadn unmute @spammer`
|
611
|
+
|
612
|
+
`ayadn -UM @spammer`
|
613
|
+
|
614
|
+
## BLOCK
|
615
|
+
|
616
|
+
Block a user (same as [mute](#mute) but also prevents the blocked user to [follow](#follow) you).
|
617
|
+
|
618
|
+
`ayadn block @spammer`
|
619
|
+
|
620
|
+
`ayadn -BL @spammer`
|
621
|
+
|
622
|
+
## UNBLOCK
|
623
|
+
|
624
|
+
Unblock a user.
|
625
|
+
|
626
|
+
`ayadn unblock @spammer`
|
627
|
+
|
628
|
+
`ayadn -UB @spammer`
|
629
|
+
|
630
|
+
## DOWNLOAD
|
631
|
+
|
632
|
+
Download a file from your App.net storage (any file posted with other ADN clients).
|
633
|
+
|
634
|
+
`ayadn download 23344556`
|
635
|
+
|
636
|
+
`ayadn -df 23344556`
|
637
|
+
|
638
|
+
# LISTS
|
639
|
+
|
640
|
+
This section is about getting lists from App.net.
|
641
|
+
|
642
|
+
## FOLLOWERS
|
643
|
+
|
644
|
+
List followers of a user.
|
645
|
+
|
646
|
+
`ayadn followers @ericd`
|
647
|
+
|
648
|
+
`ayadn -fwr @ericd`
|
649
|
+
|
650
|
+
You can see your own list by using *me* instead of *@username*:
|
651
|
+
|
652
|
+
`ayadn -fwr me`
|
653
|
+
|
654
|
+
## FOLLOWINGS
|
655
|
+
|
656
|
+
List the users a user is following.
|
657
|
+
|
658
|
+
`ayadn followings @ericd`
|
659
|
+
|
660
|
+
`ayadn -fwg @ericd`
|
661
|
+
|
662
|
+
You can see your own list by using *me* instead of *@username*:
|
663
|
+
|
664
|
+
`ayadn -fwg me`
|
665
|
+
|
666
|
+
## CHANNELS
|
667
|
+
|
668
|
+
List your active App.net channels.
|
669
|
+
|
670
|
+
`ayadn channels`
|
671
|
+
|
672
|
+
`ayadn -ch`
|
673
|
+
|
674
|
+
## INTERACTIONS
|
675
|
+
|
676
|
+
Shows a short reminder of your recent App.net activity.
|
677
|
+
|
678
|
+
`ayadn interactions`
|
679
|
+
|
680
|
+
`ayadn -int`
|
681
|
+
|
682
|
+
## WHOREPOSTED
|
683
|
+
|
684
|
+
List users who reposted a post.
|
685
|
+
|
686
|
+
`ayadn whoreposted 22790201`
|
687
|
+
|
688
|
+
`ayadn -wor 22790201`
|
689
|
+
|
690
|
+
## MUTED
|
691
|
+
|
692
|
+
List the users you muted.
|
693
|
+
|
694
|
+
`ayadn muted`
|
695
|
+
|
696
|
+
`ayadn -mtd`
|
697
|
+
|
698
|
+
## BLOCKED
|
699
|
+
|
700
|
+
List the users you blocked.
|
701
|
+
|
702
|
+
`ayadn blocked`
|
703
|
+
|
704
|
+
`ayadn -bkd`
|
705
|
+
|
706
|
+
## SETTINGS
|
707
|
+
|
708
|
+
List current Ayadn settings.
|
709
|
+
|
710
|
+
`ayadn settings`
|
711
|
+
|
712
|
+
`ayadn -sg`
|
713
|
+
|
714
|
+
## FILES
|
715
|
+
|
716
|
+
List the files in your App.net storage.
|
717
|
+
|
718
|
+
`ayadn files`
|
719
|
+
|
720
|
+
`ayadn -fl`
|
721
|
+
|
722
|
+
List them all:
|
723
|
+
|
724
|
+
`ayadn files -a`
|
725
|
+
|
726
|
+
`ayadn -fl -a`
|
727
|
+
|
728
|
+
# TOOLS
|
729
|
+
|
730
|
+
This section is about specific Ayadn tools.
|
731
|
+
|
732
|
+
## AUTHORIZE
|
733
|
+
|
734
|
+
Authorize Ayadn for a specific user account.
|
735
|
+
|
736
|
+
`ayadn authorize`
|
737
|
+
|
738
|
+
`ayadn -auth`
|
739
|
+
|
740
|
+
Ayadn will give you a link leading to the official App.net registration page.
|
741
|
+
|
742
|
+
After your successful login, you will be redirected to the Ayadn authorization page.
|
743
|
+
|
744
|
+
Copy the code (token) you will find there and paste it into Ayadn: a new user will be created and automatically logged in.
|
745
|
+
|
746
|
+
## SWITCH
|
747
|
+
|
748
|
+
Switch between your authorized accounts.
|
749
|
+
|
750
|
+
`ayadn switch @ericd`
|
751
|
+
|
752
|
+
`ayadn switch @otheraccount`
|
753
|
+
|
754
|
+
Alternative syntax:
|
755
|
+
|
756
|
+
`ayadn -@ ericd`
|
757
|
+
|
758
|
+
`ayadn -@ otheraccount`
|
759
|
+
|
760
|
+
List your authorized accounts:
|
761
|
+
|
762
|
+
`ayadn switch -l`
|
763
|
+
|
764
|
+
`ayadn -@ -l`
|
765
|
+
|
766
|
+
## BLACKLIST
|
767
|
+
|
768
|
+
The blacklist is a list of users, clients and hashtags that you don't want to ever be displayed.
|
769
|
+
|
770
|
+
Available subcommands: add, remove, import, list.
|
771
|
+
|
772
|
+
This is different from the 'mute a user' feature of the App.net API: blacklist works locally and is specific to each account.
|
773
|
+
|
774
|
+
Blacklist a client (example: IFTTT) and posts that are posted with this client won't appear in the streams.
|
775
|
+
|
776
|
+
This is a way of creating "bot-free" streams: the more bots you add to this list, the more humans you see.
|
777
|
+
|
778
|
+
Blacklist a hashtag and you will free yourself from this annoying trend you can't stand.
|
779
|
+
|
780
|
+
Blacklist a user and you won't even see posts by other users mentioning the user you blacklisted!
|
781
|
+
|
782
|
+
Oh, and you can import blacklist databases from other accounts, too.
|
783
|
+
|
784
|
+
### ADD
|
785
|
+
|
786
|
+
Adds an item to your blacklist.
|
787
|
+
|
788
|
+
Available items: client, hashtag, mention.
|
789
|
+
|
790
|
+
`ayadn blacklist add mention @shmuck`
|
791
|
+
|
792
|
+
Add a mention:
|
793
|
+
|
794
|
+
`ayadn -K add mention @shmuck`
|
795
|
+
|
796
|
+
Add a client:
|
797
|
+
|
798
|
+
`ayadn -K add client IFTTT`
|
799
|
+
|
800
|
+
Add a hashtag:
|
801
|
+
|
802
|
+
`ayadn -K add hashtag twitter`
|
803
|
+
|
804
|
+
### REMOVE
|
805
|
+
|
806
|
+
Removes an item from your blacklist.
|
807
|
+
|
808
|
+
Available items: client, hashtag, mention.
|
809
|
+
|
810
|
+
`ayadn blacklist remove mention @shmuck`
|
811
|
+
|
812
|
+
Remove a mention:
|
813
|
+
|
814
|
+
`ayadn -K remove mention @shmuck`
|
815
|
+
|
816
|
+
Remove a client:
|
817
|
+
|
818
|
+
`ayadn -K remove client IFTTT`
|
819
|
+
|
820
|
+
Remove a hashtag:
|
821
|
+
|
822
|
+
`ayadn -K remove hashtag twitter`
|
823
|
+
|
824
|
+
### LIST
|
825
|
+
|
826
|
+
List all items in your blacklist.
|
827
|
+
|
828
|
+
`ayadn blacklist list`
|
829
|
+
|
830
|
+
`ayadn -K list`
|
831
|
+
|
832
|
+
### IMPORT
|
833
|
+
|
834
|
+
Import a blacklist database in the current account.
|
835
|
+
|
836
|
+
`ayadn blacklist import '/Users/blah/backups/blacklist.db'`
|
837
|
+
|
838
|
+
`ayadn -K import '/Users/blah/backups/blacklist.db'`
|
839
|
+
|
840
|
+
## ALIAS
|
841
|
+
|
842
|
+
Aliases are names you give to channels for an easier access.
|
843
|
+
|
844
|
+
Available subcommands: create, delete, list, import.
|
845
|
+
|
846
|
+
Example: you're a [Paste-App](http://paste-app.net/) user and your personal Paste-App channel is 46216.
|
847
|
+
|
848
|
+
Instead of getting this channel's messages with `ayadn -ms 46216` you can create an alias:
|
849
|
+
|
850
|
+
`ayadn alias create 46216 pasteapp`
|
851
|
+
|
852
|
+
or
|
853
|
+
|
854
|
+
`ayadn -A create 46216 pasteapp`
|
855
|
+
|
856
|
+
Then you can access this channel with `ayadn -ms pasteapp`, as words are easier to remember than numbers.
|
857
|
+
|
858
|
+
### CREATE
|
859
|
+
|
860
|
+
Create an alias for a channel.
|
861
|
+
|
862
|
+
`ayadn alias create 46216 pasteapp`
|
863
|
+
|
864
|
+
`ayadn -A create 46216 pasteapp`
|
865
|
+
|
866
|
+
### DELETE
|
867
|
+
|
868
|
+
Delete a channel alias.
|
869
|
+
|
870
|
+
`ayadn alias delete pasteapp`
|
871
|
+
|
872
|
+
`ayadn -A delete pasteapp`
|
873
|
+
|
874
|
+
### LIST
|
875
|
+
|
876
|
+
List all your channel aliases.
|
877
|
+
|
878
|
+
`ayadn alias list`
|
879
|
+
|
880
|
+
`ayadn -A list`
|
881
|
+
|
882
|
+
### IMPORT
|
883
|
+
|
884
|
+
Import a previously backed-up list of aliases.
|
885
|
+
|
886
|
+
`ayadn alias import '/Users/blah/backups/aliases.db'`
|
887
|
+
|
888
|
+
`ayadn -A import '/Users/blah/backups/aliases.db'`
|
889
|
+
|
890
|
+
## SET
|
891
|
+
|
892
|
+
The 'set' commands allows you to configure some Ayadn parameters.
|
893
|
+
|
894
|
+
`ayadn set color mentions blue`
|
895
|
+
|
896
|
+
You can get a list of configurable parameters with `ayadn -sg`.
|
897
|
+
|
898
|
+
Examples:
|
899
|
+
|
900
|
+
`ayadn set color username green`
|
901
|
+
|
902
|
+
`ayadn set color mentions yellow`
|
903
|
+
|
904
|
+
`ayadn set counts default 30`
|
905
|
+
|
906
|
+
`ayadn set counts search 100`
|
907
|
+
|
908
|
+
`ayadn set timeline directed false`
|
909
|
+
|
910
|
+
`ayadn set show_real_name false`
|
911
|
+
|
912
|
+
`ayadn set show_date false`
|
913
|
+
|
914
|
+
`ayadn set backup auto_save_sent_posts true`
|
915
|
+
|
916
|
+
`ayadn set scroll timer 1.5`
|
917
|
+
|
918
|
+
To reset the configuration to default values:
|
919
|
+
|
920
|
+
`ayadn set defaults`
|
921
|
+
|
922
|
+
|
923
|
+
# EXTRAS
|
924
|
+
|
925
|
+
This section is about specific Ayadn extras.
|
926
|
+
|
927
|
+
## PIN
|
928
|
+
|
929
|
+
Export a post's link and text, with tags, to your Pinboard account.
|
930
|
+
|
931
|
+
`ayadn pin 22790201 Ayadn gem update`
|
932
|
+
|
933
|
+
`ayadn pin 26874913 duel swords france`
|
934
|
+
|
935
|
+
## NOWPLAYING
|
936
|
+
|
937
|
+
Post what you're listening to!
|
938
|
+
|
939
|
+
Only works on Mac OS X with iTunes.
|
940
|
+
|
941
|
+
`ayadn nowplaying`
|
942
|
+
|
943
|
+
`ayadn -np`
|
944
|
+
|
945
|
+
Ayadn will grab information from iTunes, format it, insert the *#nowplaying* hashtag then ask for your confirmation before posting it.
|
946
|
+
|