NAME
bti - send a tweet to twitter.com or identi.ca from the command line
SYNOPSIS
bti [--account account] [--password password] [--action action]
[--user screenname] [--host HOST_NAME] [--proxy PROXY:PORT]
[--logfile LOGFILE] [--config CONFIGFILE] [--page PAGENUMBER]
[--bash] [--shrink-urls] [--debug] [--dry-run] [--verbose]
[--version] [--help]
DESCRIPTION
bti sends a tweet message to twitter.com or identi.ca.
OPTIONS
--account account
Specify the twitter.com or identi.ca account name.
--password password
Specify the password of your twitter.com or identi.ca account.
--action action
Specify the action which you want to perform. Valid options are
"update" to send a message, "friends" to see your friends timeline,
"public" to track public timeline, "replies" to see replies to your
messages and "user" to see a specific user's timeline. Default is
"update".
--user screenname
Specify the user whose messages you want to see when the action is
"user".
--host HOST_NAME
Specify the host which you want to send your message to. Valid
options are "twitter" to send to twitter.com and "identica" to send
to identi.ca. If you want to send the message to a custom laconi.ca
installation, you should specify the API URI. For example
identi.ca's URI is: https://identi.ca/api/statuses
If no host is specified, the default is to send to twitter.com.
--proxy PROXY:PORT
Specify a http proxy value. This is not a required option, and only
needed by systems that are behind a http proxy.
If --proxy is not specified but the environment variable
'http_proxy' is set the latter will be used.
--logfile LOGFILE
Specify a logfile for bti to write status messages to. LOGFILE is
in relation to the user's home directory, not an absolute path to a
file.
--config CONFIGFILE
Specify a config file for bti to read from. By default, bti looks
in the ~/.bti file for config values. This default location can be
overridden by setting a specific file with this option.
--shrink-urls
Scans the tweet text for valid URL patterns and passes each through
the supplied bti-shrink-urls script. The script will pass the URL
to a web service that shrinks the URLs, making it more suitable for
micro-blogging.
Currently, only http://2tu.us/ is used as a URL shrinking service.
--debug
Print a whole bunch of debugging messages to stdout.
--page PAGENUMBER
When the action is to retrieve updates, it usually retrieves only
one page. If this option is used, the page number can be specified.
--dry-run
Performs all steps that would normally be done for a given action,
but will not connect to the service to post or retrieve data.
--verbose
Verbose mode
--bash
Add the working directory and a '$' in the tweet message to help
specify it is coming from a command line. Don't put the working
directory and the '$' in the tweet message.
This mode also does not report back any errors that might have
happened when sending the message, and it sends it in the
background, returning immediately, allowing the process to continue
on.
--version
Print version number.
--help
Print help text.
DESCRIPTION
bti provides an easy way to send tweet messages direct from the command
line or any script. It reads the message on standard input and uses the
account and password settings either from the command line options, or
from a config file, to send the message out.
Its primary focus is to allow you to log everything that you type into
a bash shell, in a crazy, "this is what I'm doing right now!" type of
way, letting the world follow along with you constant moving between
directories and refreshing your email queue to see if there's anything
interesting going on.
To hook bti up to your bash shell, export the following variable:
PROMPT_COMMAND='history 1 | sed -e "s/^\s*[0-9]*\s*//" | bti --bash'
This example assumes that you have the ~/.bti set up with your account
and password information already in it, otherwise you can specify them
as an option.
CONFIGURATION
The account and password can be stored in a configuration file in the
users home directory in a file named .bti. The structure of this file
is as follows:
account
The twitter.com or identi.ca account name you wish to use to send
this message with.
password
The twitter.com or identi.ca password for the account you wish to
use to send this message with.
--action action
Specify the action which you want to perform. Valid options are
"update" to send a message, "friends" to see your friends timeline,
"public" to track public timeline, "replies" to see replies to your
messages and "user" to see a specific user's timeline.
--user screenname
Specify the user you want to see his/her messages while the action
is "user".
host
The host you want to use to send the message to. Valid options are
either "twitter" or "identica" to send to twitter.com or identi.ca
respectively. If you want to send the message to a custom laconi.ca
installation, you should specify the API URI. For example
identi.ca's URI is: https://identi.ca/api/statuses.
proxy
The http proxy needed to send data out to the Internet.
logfile
The logfile name for bti to write what happened to. This file is
relative to the user's home directory. If this file is not
specified here or on the command line, no logging will be written
to the disk.
shrink-urls
Setting this variable to 'true' or 'yes' will enable the URL
shrinking feature. This is equivalent to using the --shrink-urls
option.
verbose
Setting this variable to 'true' or 'yes' will enable the verbose
mode.
There is an example config file in
/usr/share/doc/bti/examples/bti.example that shows the structure of the
file.
Configuration options have the following priority:
command line option
config file option
environment variables
For example, command line options always override any config file
option, or any environment variables. Unless a config file is specified
by the command line. At that point, the new config file is read, and
any previous options set by a command line option, would be overridden.
AUTHOR
Written by Greg Kroah-Hartman <greg@kroah.com> and Amir Mohammad Saied
<amirsaied@gmail.com>.