Differences between revisions 5 and 37 (spanning 32 versions)
Revision 5 as of 2017-07-27 13:47:38
Size: 2418
Editor: 212-51-157-29
Comment:
Revision 37 as of 2019-10-07 16:34:12
Size: 10231
Editor: accessnow
Comment: cosmetics
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
!BitlBee has native support for Mastodon in the works. You can take a look at this [[https://github.com/kensanata/bitlbee|fork]] with its [[https://github.com/kensanata/bitlbee/blob/master/protocols/mastodon/TODO.md|TODO]] list. There is a [[https://alexschroeder.ch/software/Bitlbee_Mastodon|Mastodon plugin]] for !BitlBee.

The internal help system is probably more up to date than this wiki page.

{{{#!irc
08:51 <kensanata> help mastodon
}}}
Line 7: Line 13:
To use your Mastodon account. In your `&bitlbee` channel: In this section, we'll sign in as `@kensanata@mastodon.weaponvsac.space`. This section assumes an existing account on an instance! Replace username and Mastodon server when trying it. :)

In your `&bitlbee` channel – also known as the ''control channel'' – add a new account, change it's `base_url` to point at your instance, and switch it on:
Line 20: Line 28:
At this point, you'll get contacted by the user `mastodon_oauth` with a big URL that you need to visit using a browser. Authenticate the client and you'll get back a another very long string. Copy and paste this string: At this point, you'll get contacted by the user `mastodon_oauth` with a big URL that you need to visit using a browser. Authenticate the client and you'll get back another very long string. Copy and paste this string:
Line 23: Line 31:
14:44 <mastodon_oauth> Open this URL in your browser to authenticate:
https://mastodon.weaponvsac.space/oauth/authorize?scope=read%20write%20follow&response_type=code&redirect_uri=urn:ietf:wg:oauth:2.0:oob&client_id=*************
14:44 <mastodon_oauth> Open this URL in your browser to authenticate: https://.......
Line 41: Line 48:
You should now have a channel called `#mastodon.weaponsvs.space@localhost` where all the status updates and notifications get shown. You should now have a channel called `#mastodon.weaponsvsac.space@localhost` where all the status updates and notifications get shown. We'll call this your ''account channel''.
Line 52: Line 59:
Everything else remains '''unimplemented'''. == Reading ==
Line 54: Line 61:
Working on that. :) The default `mode` setting is `chat`. This means that each Mastodon account you add will result in a new channel in your IRC client.

Use `help set mode` in your Bitlbee control channel (`&bitlbee`) to read up on different modes.

== Posting ==

The default `commands` setting is `true`. This means that anything you type is a Toot unless it looks like command, in which case it is handled as such.
In addition to that, you can use the `post <message>` command. If you set the `commands` setting to `strict`, using the `post` command is mandatory.

Use `help set commands` in your Bitlbee control channel (`&bitlbee`) to read up on the various commands.

A well behaved Mastodon client will limit your Toots to 500 characters even though the underlying protocols allow for longer messages. By default, Bitlbee does the same. Use `help set message_length` in your Bitlbee control channel (`&bitlbee`) to read up on the hairy details. Basically, some aspects of of your message will count for less: URLs, domain names for mentioned user accounts and the like. See `help set target_url_length` for more information on how URLs are counted.

== Direct Messaging ==

There are two ways to DM someone.

   1. If you are following them, then there exists a handle for them in your IRC client and you can simply `/msg <their nick>`
   1. To DM anyone regardless of whether you follow them, you can type `visibility direct` in the IRC window from which you intend to DM, and then write a post that mentions their long @nick@server identifier.

== Context ==

Use `context <id|nick>` to show some context for a status or the last status by a nick. This will display the ancestors and descendants of a status.

Use `timeline <nick>` to show the most recent messages by a nick.

== Replying ==

If you use the default IRC conventions of starting a message with a nickname and a colon (`:`) or a comma (`,`), then your message will be treated as a reply to that nick's last message.

This only works if that nick's last message was sent within the last 3h. For more information about this time window use `help set auto_reply_timeout` in your Bitlbee control channel (`&bitlbee`).

You can also reply to an earlier message by referring to its id using the `reply <id> <message>` command. If you set the `commands` setting to `strict`, using the `reply` command is mandatory.

== Deleting Posts ==

Use `del <id>` to delete a status or your last status. Synonyms: `delete`, `undo`.

== Favouriting ==

Use `fav <id|nick>` to favour a status or the last status by a nick. Synonyms: `favourite`, `favorite`, `like`. See [[https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md#boosts-and-favourites|favorites]] in the Mastodon User Guide.

Use `unfav <id|nick>` to unfavour a status or the last status by a nick. Synonyms: `unfavourite`, `unfavorite`, `unlike`, `dislike`.

== Following, Blocking, Muting ==

Use `follow <nick|account>` to follow somebody. See [[https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md#following-other-users|following]] in the Mastodon User Guide. This determines the nicks in your channel. Verify the list using `/names`.

Usually you'll be providing a local or remote account to follow. In the background, Bitlbee will run a search for the account you provided and follow the first match. Sometimes there will be nicks in the channel which you are not following, e.g. a nick is automatically added to the channel when a status of theirs mentioning you is shown.

Use `unfollow <nick>` to unfollow a nick. Synonyms: `allow`.

Use `block <nick>` to block a nick on the server. See [[https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md#blocking|blocking]] in the Mastodon User Guide. This is independent of your IRC client's `/ignore` command, if available.

Use `unblock <nick>` to unblock a nick.

Use `mute user <nick>` to mute a nick on the server. See [[https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md#muting|muting]] in the Mastodon User Guide.

Use `unmute user <nick>` to unmute a nick.

Use `mute <id|nick>` to mute the conversation based on a status or the last status by a nick. Muting a status will prevent replies to it, favourites and replies of it from appearing. See [[https://github.com/tootsuite/documentation/blob/master/Using-the-API/API.md#mutingunmuting-a-conversation-of-a-status|status muting]] in the Mastodon API.

Use `unmute <id|nick>` to unmute the conversation based on a status or the last status by a nick.

== Boosting ==

Use `boost <id|nick>` to boost a status or the last status by a nick. See [[https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/User-guide.md#boosts-and-favourites|boosting]] in the Mastodon User Guide.

Use `unboost <id|nick>` to unboost a status or the last status by a nick.

== More Information ==

Use `url <id|nick>` to get the URL to a status or the last status by a nick.

Use `info instance` to get debug information about your instance. See [[https://github.com/tootsuite/documentation/blob/master/Using-the-API/API.md#instance|Instance]] in the Mastodon API.

Use `info user <nick|account>` to get debug information about an account. See [[https://github.com/tootsuite/documentation/blob/master/Using-the-API/API.md#account|Account]] in the Mastodon API.

Use `info relation <nick|account>` to get debug information about the relation to an account. See [[https://github.com/tootsuite/documentation/blob/master/Using-the-API/API.md#relationship|Relationship]] in the Mastodon API.

Use `info <id|nick>` to get debug information about a status or the last status by a nick. See [[https://github.com/tootsuite/documentation/blob/master/Using-the-API/API.md#status|Status]] in the Mastodon API.

== Search ==

Mastodon allows you to search for three kinds of things:

 * the URL of a status
 * users
 * hashtags

Use `search <what>` to get debug information about the things found by a search.

== Spam ==

Use `report <id|nick> <comment>` to report a status or the last status by a nick. Synonyms: `spam`.

Note that the comment is mandatory. Explain why the status is being reported. The administrator of your instance will see this report and decide what to do about it, if anything.

== In the Control Channel ==

As we said at the beginning, the default `mode` setting is `chat`. This means that each Mastodon account you add will result in a new channel in your IRC client. All the commands mentioned above are what you type in this "instance channel."

There are some standard root commands that only work in the control channel, `&bitlbee`.

 * `info <account> <nick>` shows you information about the nick in the instance channel
 * `block <account> <nick>` blocks nick
 * `allow <account> <nick>` unblocks nick

== Following a Hashtag ==

This also happens from the control channel, `&bitlbee`.

Here's how to subscribe to `#hashtag` for the account `mastodon`. The `chat add` command takes the parameters ''account'', ''hashtag'', and ''channel name''. In the example we're simply giving the channel the same name. You can name the channel whatever you want. The important part is that the channel ''topic'' must be the hashtag it is subscribing to.

{{{
chat add mastodon hashtag #hashtag
channel #hashtag set auto_join true
/join #hashtag
}}}

Don't forget to `save` your config.

Note that where as you can still issue commands in these hashtag channels, the output is going to appear in the original ''account channel''.

Setting up a Mastodon account in BitlBee

There is a Mastodon plugin for BitlBee.

The internal help system is probably more up to date than this wiki page.

   1 08:51 <kensanata> help mastodon

Connecting

In this section, we'll sign in as @kensanata@mastodon.weaponvsac.space. This section assumes an existing account on an instance! Replace username and Mastodon server when trying it. :)

In your &bitlbee channel – also known as the control channel – add a new account, change it's base_url to point at your instance, and switch it on:

   1 14:43 <kensanata> account add mastodon @kensanata
   2 14:43 <root> Account successfully added with tag mastodon2
   3 14:43 <kensanata> account mastodon2 set base_url https://mastodon.weaponvsac.space/api/v1
   4 14:43 <root> base_url = `https://mastodon.weaponvsac.space/api/v1'
   5 14:44 <kensanata> account mastodon2 on
   6 14:44 <root> mastodon2 - Logging in: Login
   7 14:44 <root> mastodon2 - Logging in: Parsing application registration response
   8 14:44 <root> mastodon2 - Logging in: Starting OAuth authentication

At this point, you'll get contacted by the user mastodon_oauth with a big URL that you need to visit using a browser. Authenticate the client and you'll get back another very long string. Copy and paste this string:

   1 14:44 <mastodon_oauth> Open this URL in your browser to authenticate: https://.......
   2 14:44 <mastodon_oauth> Respond to this message with the returned authorization token.
   3 14:44 <kensanata> ****************************************************************

Once you do that, your login should complete in the &bitlbee channel:

   1 14:44 <root> mastodon2 - Logging in: Requesting OAuth access token
   2 14:44 <root> mastodon2 - Logging in: Connecting
   3 14:44 *** mastodonweaponvsacspace_ JOIN
   4 14:44 *** MODE +v mastodonweaponvsacspace_
   5 14:44 <root> mastodon2 - Logging in: Verifying credentials
   6 14:44 <root> mastodon2 - Logging in: Getting home timeline
   7 14:44 <root> mastodon2 - Logging in: Logged in

You should now have a channel called #mastodon.weaponsvsac.space@localhost where all the status updates and notifications get shown. We'll call this your account channel.

Mastodon gives BitlBee a permanent authentication token, which will be saved in your configuration.

You should probably save this configuration.

   1 14:58 <kensanata> save
   2 14:58 <root> Configuration saved

Reading

The default mode setting is chat. This means that each Mastodon account you add will result in a new channel in your IRC client.

Use help set mode in your Bitlbee control channel (&bitlbee) to read up on different modes.

Posting

The default commands setting is true. This means that anything you type is a Toot unless it looks like command, in which case it is handled as such. In addition to that, you can use the post <message> command. If you set the commands setting to strict, using the post command is mandatory.

Use help set commands in your Bitlbee control channel (&bitlbee) to read up on the various commands.

A well behaved Mastodon client will limit your Toots to 500 characters even though the underlying protocols allow for longer messages. By default, Bitlbee does the same. Use help set message_length in your Bitlbee control channel (&bitlbee) to read up on the hairy details. Basically, some aspects of of your message will count for less: URLs, domain names for mentioned user accounts and the like. See help set target_url_length for more information on how URLs are counted.

Direct Messaging

There are two ways to DM someone.

  1. If you are following them, then there exists a handle for them in your IRC client and you can simply /msg <their nick>

  2. To DM anyone regardless of whether you follow them, you can type visibility direct in the IRC window from which you intend to DM, and then write a post that mentions their long @nick@server identifier.

Context

Use context <id|nick> to show some context for a status or the last status by a nick. This will display the ancestors and descendants of a status.

Use timeline <nick> to show the most recent messages by a nick.

Replying

If you use the default IRC conventions of starting a message with a nickname and a colon (:) or a comma (,), then your message will be treated as a reply to that nick's last message.

This only works if that nick's last message was sent within the last 3h. For more information about this time window use help set auto_reply_timeout in your Bitlbee control channel (&bitlbee).

You can also reply to an earlier message by referring to its id using the reply <id> <message> command. If you set the commands setting to strict, using the reply command is mandatory.

Deleting Posts

Use del <id> to delete a status or your last status. Synonyms: delete, undo.

Favouriting

Use fav <id|nick> to favour a status or the last status by a nick. Synonyms: favourite, favorite, like. See favorites in the Mastodon User Guide.

Use unfav <id|nick> to unfavour a status or the last status by a nick. Synonyms: unfavourite, unfavorite, unlike, dislike.

Following, Blocking, Muting

Use follow <nick|account> to follow somebody. See following in the Mastodon User Guide. This determines the nicks in your channel. Verify the list using /names.

Usually you'll be providing a local or remote account to follow. In the background, Bitlbee will run a search for the account you provided and follow the first match. Sometimes there will be nicks in the channel which you are not following, e.g. a nick is automatically added to the channel when a status of theirs mentioning you is shown.

Use unfollow <nick> to unfollow a nick. Synonyms: allow.

Use block <nick> to block a nick on the server. See blocking in the Mastodon User Guide. This is independent of your IRC client's /ignore command, if available.

Use unblock <nick> to unblock a nick.

Use mute user <nick> to mute a nick on the server. See muting in the Mastodon User Guide.

Use unmute user <nick> to unmute a nick.

Use mute <id|nick> to mute the conversation based on a status or the last status by a nick. Muting a status will prevent replies to it, favourites and replies of it from appearing. See status muting in the Mastodon API.

Use unmute <id|nick> to unmute the conversation based on a status or the last status by a nick.

Boosting

Use boost <id|nick> to boost a status or the last status by a nick. See boosting in the Mastodon User Guide.

Use unboost <id|nick> to unboost a status or the last status by a nick.

More Information

Use url <id|nick> to get the URL to a status or the last status by a nick.

Use info instance to get debug information about your instance. See Instance in the Mastodon API.

Use info user <nick|account> to get debug information about an account. See Account in the Mastodon API.

Use info relation <nick|account> to get debug information about the relation to an account. See Relationship in the Mastodon API.

Use info <id|nick> to get debug information about a status or the last status by a nick. See Status in the Mastodon API.

Mastodon allows you to search for three kinds of things:

  • the URL of a status
  • users
  • hashtags

Use search <what> to get debug information about the things found by a search.

Spam

Use report <id|nick> <comment> to report a status or the last status by a nick. Synonyms: spam.

Note that the comment is mandatory. Explain why the status is being reported. The administrator of your instance will see this report and decide what to do about it, if anything.

In the Control Channel

As we said at the beginning, the default mode setting is chat. This means that each Mastodon account you add will result in a new channel in your IRC client. All the commands mentioned above are what you type in this "instance channel."

There are some standard root commands that only work in the control channel, &bitlbee.

  • info <account> <nick> shows you information about the nick in the instance channel

  • block <account> <nick> blocks nick

  • allow <account> <nick> unblocks nick

Following a Hashtag

This also happens from the control channel, &bitlbee.

Here's how to subscribe to #hashtag for the account mastodon. The chat add command takes the parameters account, hashtag, and channel name. In the example we're simply giving the channel the same name. You can name the channel whatever you want. The important part is that the channel topic must be the hashtag it is subscribing to.

chat add mastodon hashtag #hashtag
channel #hashtag set auto_join true
/join #hashtag

Don't forget to save your config.

Note that where as you can still issue commands in these hashtag channels, the output is going to appear in the original account channel.

BitlBee Wiki: HowtoMastodon (last edited 2024-03-15 14:23:09 by 86-127-253-29)