1BTI(1) bti BTI(1)
2
3
4
6 bti - send a tweet to twitter.com from the command line
7
9 bti [--account account] [--password password] [--action action]
10 [--user screenname] [--host HOST_NAME] [--proxy PROXY:PORT]
11 [--logfile LOGFILE] [--config CONFIGFILE] [--replyto ID]
12 [--retweet ID] [--page PAGENUMBER] [--bash] [--shrink-urls]
13 [--debug] [--dry-run] [--verbose] [--version] [--help]
14
16 bti sends a tweet message to twitter.com.
17
19 --account account
20 Specify the twitter.com account name.
21
22 --password password
23 Specify the password of your twitter.com account.
24
25 --action action
26 Specify the action which you want to perform. Valid options are
27 "update" to send a message, "friends" to see your friends timeline,
28 "public" to track public timeline, "replies" to see replies to your
29 messages, "user" to see a specific user's timeline and "direct" to
30 send a direct message to a friend. Default is "update".
31
32 --user screenname
33 Specify the user whose messages you want to see when the action is
34 "user", and the reciever of the direct message when the action is
35 "direct" (the sender must be following the receiver).
36
37 --host HOST_NAME
38 Specify the host which you want to send your message to. Valid
39 options are "twitter" to send to twitter.com.
40
41 If no host is specified, the default is to send to twitter.com.
42
43 --proxy PROXY:PORT
44 Specify a http proxy value. This is not a required option, and only
45 needed by systems that are behind a http proxy.
46
47 If --proxy is not specified but the environment variable
48 'http_proxy' is set the latter will be used.
49
50 --logfile LOGFILE
51 Specify a logfile for bti to write status messages to. LOGFILE is
52 in relation to the user's home directory, not an absolute path to a
53 file.
54
55 --config CONFIGFILE
56 Specify a config file for bti to read from. By default, bti looks
57 in the ~/.bti file for config values. This default location can be
58 overridden by setting a specific file with this option.
59
60 --replyto ID
61 Status ID of a single post to which you want to create a threaded
62 reply to.
63
64 For twitter, this is ignored unless the message starts with the
65 @name of the owner of the post with the status ID.
66
67 For status.net, this can link any two messages into context with
68 each other. Status.net will also link a message that contains an
69 @name without this without regard to context.
70
71 --retweet ID
72 Status ID of a single post which you want to retweet.
73
74 --shrink-urls
75 Scans the tweet text for valid URL patterns and passes each through
76 the supplied bti-shrink-urls script. The script will pass the URL
77 to a web service that shrinks the URLs, making it more suitable for
78 micro-blogging.
79
80 The following URL shrinking services are available: http://2tu.us/
81 (default) and http://bit.ly / http://j.mp
82
83 See the documentation for bti-shrink-urls for the configuration
84 options.
85
86 --debug
87 Print a whole bunch of debugging messages to stdout.
88
89 --page PAGENUMBER
90 When the action is to retrieve updates, it usually retrieves only
91 one page. If this option is used, the page number can be specified.
92
93 --dry-run
94 Performs all steps that would normally be done for a given action,
95 but will not connect to the service to post or retrieve data.
96
97 --verbose
98 Verbose mode. Print status IDs and timestamps.
99
100 --bash
101 Add the working directory and a '$' in the tweet message to help
102 specify it is coming from a command line. Don't put the working
103 directory and the '$' in the tweet message.
104
105 This option implies --background.
106
107 --background
108 Do not report back any errors that might have happened when sending
109 the message, and send it in the background, returning immediately,
110 allowing the user to continue on.
111
112 --version
113 Print version number.
114
115 --help
116 Print help text.
117
119 bti provides an easy way to send tweet messages direct from the command
120 line or any script. It reads the message on standard input and uses the
121 account and password settings either from the command line options, or
122 from a config file, to send the message out.
123
124 Its primary focus is to allow you to log everything that you type into
125 a bash shell, in a crazy, "this is what I'm doing right now!" type of
126 way, letting the world follow along with you constant moving between
127 directories and refreshing your email queue to see if there's anything
128 interesting going on.
129
130 To hook bti up to your bash shell, export the following variable:
131
132 PROMPT_COMMAND='history 1 | sed -e "s/^\s*[0-9]*\s*//" | bti --bash'
133
134 This example assumes that you have the ~/.bti set up with your account
135 and password information already in it, otherwise you can specify them
136 as an option.
137
139 The account and password can be stored in a configuration file in the
140 users home directory in a file named .bti. The structure of this file
141 is as follows:
142
143 account
144 The twitter.com account name you wish to use to send this message
145 with.
146
147 password
148 The twitter.com password for the account you wish to use to send
149 this message with.
150
151 --action action
152 Specify the action which you want to perform. Valid options are
153 "update" to send a message, "friends" to see your friends timeline,
154 "public" to track public timeline, "replies" to see replies to your
155 messages and "user" to see a specific user's timeline.
156
157 --user screenname
158 Specify the user you want to see his/her messages while the action
159 is "user".
160
161 host
162 The host you want to use to send the message to. Valid options is
163 "twitter" or "custom" to specify your own server.
164
165 proxy
166 The http proxy needed to send data out to the Internet.
167
168 logfile
169 The logfile name for bti to write what happened to. This file is
170 relative to the user's home directory. If this file is not
171 specified here or on the command line, no logging will be written
172 to the disk.
173
174 replyto
175 The status ID to which all notices will be linked to.
176
177 There is no sane reason for a need to have this set in a config
178 file. One such reason is to have all your messages as children to a
179 particular status.
180
181 shrink-urls
182 Setting this variable to 'true' or 'yes' will enable the URL
183 shrinking feature. This is equivalent to using the --shrink-urls
184 option.
185
186 verbose
187 Setting this variable to 'true' or 'yes' will enable the verbose
188 mode.
189
190 There is an example config file called bti.example in the source tree
191 that shows the structure of the file if you need an example to work off
192 of.
193
194 Configuration options have the following priority:
195
196 command line option
197
198 config file option
199
200 environment variables
201
202 For example, command line options always override any config file
203 option, or any environment variables. Unless a config file is specified
204 by the command line. At that point, the new config file is read, and
205 any previous options set by a command line option, would be overridden.
206
208 Written by Greg Kroah-Hartman <<greg@kroah.com>> and Amir Mohammad
209 Saied <<amirsaied@gmail.com>>.
210
211
212
213bti May 2008 BTI(1)