Twitter Support for BarnOwl
Switch branches/tags
Nothing to show
Pull request Compare This branch is 57 commits ahead, 2 commits behind wdaher:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


  Twitter.par - Twitter support for BarnOwl

  The Twitter module implements Twitter support for BarnOwl. It also
  supports automatic mirroring of some subset of Zephyrs you send to

  (1) Configure your Twitter credentials in ~/.owl/twitter in the
  following format:
----------8<----------cut here----------8<----------
----------8<----------end cut ----------8<----------
  (2) Copy Twitter.par into ~/.owl/modules/
  (3) Run ":reload-module Twitter" inside BarnOwl
  (4) Start receiving tweets in BarnOwl!
      You can send tweets with the ":twitter" command.

  If you set the twitter:class, twitter:instance, and twitter:opcode
  BarnOwl variables, BarnOwl will resend zephyrs matching those fields
  as tweets coming from you.

  By default, these default to -c $YOUR_USERNAME -i status -O twitter.
  Setting twitter:opcode to "" will cause "normal" (i.e. no opcode)
  messages to that class/instance to be mirrored. A value of '*' works
  as a "match-anything" wildcard for any of the fields.

  Twitter.par polls for normal messages once a minute, and direct
  messages every other minute. To disable polling, you can unset the
  'twitter:poll' variable in BarnOwl.

  Twitter.par supports other Twitter-compatible microblogging services,
  like To enable this, set the 'service' parameter in your
  config hash to the API URL of your service. You may also need to set
  'apihost' and 'apirealm'. See Net::Twitter or your blogging service's
  documentation for more information.


  Twitter.par also supports using multiple Twitter and
  Twitter-compatible microblogging accounts from the same instance.
  To enable this, add additional hashes to your ~/.owl/twitter file as
  a JSON list, e.g.
----------8<----------cut here----------8<----------
   "account_nickname": "twitter",
   "user": "nelhage",
   "password": "sekrit",
   "default": true,
   "publish_tweets": true
   "account_nickname": "identica",
   "service": "",
   "user": "nelhage",
   "password": "sekriter",
   "publish_tweets": true
   "account_nickname": "sipb",
   "user": "sipb",
   "poll_for_tweets": false,
   "poll_for_dms": false,
----------8<----------end cut ----------8<----------

Outgoing tweets sent via ":twitter" without an explicit sender, or
mirrored from zephyr, go to every account with "publish_tweets" set.

Outgoing direct messages and @-replies without an explicit sender come
from whichever account has "default" set. If no account has "default",
the first account is assumed to have "default" set. It is an error to
have more than one account with "default" set to true.

There are several account-specific parameters that control the
behavior of Twitter.par when using multiple accounts:

* account_nickname (string, required if multiple accounts are in use)
    Specify a short name by which you can refer to the account, eg.
    "identica" (eg. :twitter-direct nelhage identica would send a
    direct message to @nelhage on from your account
    nicknamed "identica").

* default (boolean, default false)
    If true, @-replies or direct messages you send without specifying
    an account will be sent using this account.  If no account has
    this parameter, such messages will be sent using the first account

* poll_for_tweets (boolean, default true)
    If true, tweets sent by users this account follows will be
    displayed in your BarnOwl message list.

* poll_for_dms (boolean, default true)
    If true, direct messages sent to this account will be displayed in
    your BarnOwl message list.

* publish_tweets (boolean, default false)
    If true, tweets you send without specifying an account (either
    with the :twitter command or mirrored from a zephyr class) will be
    published to this account.

    If only one account is specified, it defaults to publish_tweets =

* show_mentions (boolean, default true)
    If true, BarnOwl will show all tweets that mention this account's
    username, regardless of whether or not this account is following
    the sender. Has no effect if poll_for_tweets is false.