+ <refsect1>
+ <title>DESCRIPTION</title>
+ <para>
+ 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.
+ </para>
+ <para>
+ 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.
+ </para>
+ <para>
+ To hook bti up to your bash shell, export the following variable:
+ </para>
+ <para>
+ <literal> PROMPT_COMMAND='history 1 | sed -e "s/^\s*[0-9]*\s*//" | bti --bash'</literal>
+ </para>
+ <para>
+ This example assumes that you have the
+ <filename>~/.bti</filename> set up with your account and password
+ information already in it, otherwise you can specify them as an
+ option.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>CONFIGURATION</title>
+ <para>
+ The account and password can be stored in a configuration file
+ in the users home directory in a file named
+ <filename>.bti</filename>. The structure of this file is as
+ follows:
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term><option>account</option></term>
+ <listitem>
+ <para>
+ The twitter.com or identi.ca account name you wish to use to send this
+ message with.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>password</option></term>
+ <listitem>
+ <para>
+ The twitter.com or identi.ca password for the account you wish to use
+ to send this message with.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>--action action</option></term>
+ <listitem>
+ <para>
+ 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.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>--user screenname</option></term>
+ <listitem>
+ <para>
+ Specify the user you want to see his/her messages while the
+ action is "user".
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>host</option></term>
+ <listitem>
+ <para>
+ 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.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>proxy</option></term>
+ <listitem>
+ <para>
+ The http proxy needed to send data out to the Internet.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>logfile</option></term>
+ <listitem>
+ <para>
+ 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.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>replyto</option></term>
+ <listitem>
+ <para>
+ The status ID to which all notices will be linked to.
+ </para>
+ <para>
+ There is no sane reason for a need to have this set in a
+ config file. One such reason is to have all your messages
+ as children to a particular status.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>shrink-urls</option></term>
+ <listitem>
+ <para>
+ Setting this variable to 'true' or 'yes' will enable the URL
+ shrinking feature. This is equivalent to using the
+ --shrink-urls option.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>verbose</option></term>
+ <listitem>
+ <para>
+ Setting this variable to 'true' or 'yes' will enable the
+ verbose mode.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <para>
+ There is an example config file called
+ <filename>bti.example</filename> in the source tree that shows
+ the structure of the file if you need an example to work off of.
+ </para>
+ <para>
+ Configuration options have the following priority:
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term></term>
+ <listitem><para>command line option</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term></term>
+ <listitem><para>config file option</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term></term>
+ <listitem><para>environment variables</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <para>
+ 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.
+ </para>
+ </refsect1>
+
+ <refsect1><title>AUTHOR</title>
+ <para>Written by Greg Kroah-Hartman <<email>greg@kroah.com</email>> and Amir Mohammad Saied <<email>amirsaied@gmail.com</email>>.</para>
+ </refsect1>