F-Chat Plugin for Pidgin/Adium

From F-List Wiki
Jump to: navigation, search

StatusLightOffline.pngNelwill has forked StatusLightOffline.pngTestPanther's original Pidgin plugin, and his version is available on GitHub. Thus far, StatusLightOffline.pngSabhak has also contributed to this version of the plugin. This version includes some new features and bugfixes, and is released, precompiled, for both Windows and Linux. Those looking for bleeding-edge builds will want to check StatusLightOffline.pngTomTheDragon's automatic build list, here.

New features:

  • Characters that are "Looking" have a nice icon next to their name
  • /warn-ings by moderators are formatted now
  • Ignoring users now syncs with F-List and works (Interface is still text command-only)
  • /report will present a dialog box with which to report the tab, much like the report UI in the webclient.
  • /version will print the version of the plugin, so you can check if you're using the latest.

Minor stuff/Fixes:

  • SUB/SUP is supported
  • COLOR only allows the same colors the web client does
  • Hybi frames are generated with the correct header now
  • /status behaves like its web client counterpart
  • Notifications for new notes etc. can be disabled per account
  • Some code clean ups, leak fixes, etc.

All instructions assume you already have Pidgin installed on your system. Due to some changes in the SSL handling, versions of Pidgin above 2.10.9 are advised. For more information about Pidgin, itself, please consult the official FAQ for the software.

Getting the Right Plugin

You can either download a stable release of the plugin or use a nightly build at your own risk.

Pidgin Plugin for Windows

Stable

You can find the latest stable release here. This comes with an installer, so simply download fchat-pidgin-setup.exe and run it. Everything should work out of the box and once you are done you can start Pidgin and enter your account settings.

If you need to manually install the plugin for any reason:

  1. Download the file libjson-glib-1.0.dll
  2. Put libjson-glib-1.0.dll in your Pidgin folder (e.g. C:\Program Files (x86)\Pidgin)
  3. Download flist.dll from the link above
  4. Put it in the Pidgin subfolder plugins (e.g. C:\Program Files (x86)\Pidgin\plugins)

Nightly

You can get the latest binary build here. Just download flist_win32_latest.dll from the left column and libjson-glib-1.0.dll.

Warning: Nightly builds are highly experimental. There will be bugs which might crash Pidgin or melt your face. Use at your own risk.

After reading the warning and downloading the files:

  • move flist_win32_latest.dll into your Pidgin's plugin folder (e.g. C:\Program Files (x86)\Pidgin\plugins)
  • move libjson-glib-1.0.dll into Pidgin's main directory (e.g. C:\Program Files (x86)\Pidgin).

Pidgin Plugin for Linux

Stable

You can find the latest stable release here.

  • Download flist.so and put it into ~/.purple/plugins/flist.so (e.g. /home/yourusername/.purple/plugins).
  • Make sure that your distribution's package for json-glib is installed.

Nightly

You can get the latest binary build here. There are two versions, one compiled for Pidgin (flist_linux64_latest.so) and one for libpurple only (flist_alt_linux64_latest.so). Most users will want to download the first one.

  • Download the library and put it into ~/.purple/plugins/flist.so (e.g. /home/yourusername/.purple/plugins).
  • Make sure that your distribution's package for json-glib is installed.

Adium Plugin for Mac

StatusLightOffline.pngMaou has introduced an alpha version of the Pidgin Plugin for Adium users. As it is alpha, it is sort of a hack job, and may not work under all circumstances or with all system configurations. If you would like to test it, more information and the download link are available here. Bug reports for the Adium plugin should be posted to that thread. Do not report issues already listed in the first post.

StatusLightOffline.pngJohn Highwater is currently working out some issues with the plugin. StatusLightOffline.pngJohn Highwater's plugin is only compatible with Adium 1.5.6b1 and onward. (If you're on Adium 1.5.4, please update. 1.5.6 contains security updates that fix vulnerabilities in Adium!) StatusLightOffline.pngMaou's plugin has been updated to 0.3, but some issues remain. John is looking to fix:

  • Sending ads into group chats won't display sent ad
  • Entering private rooms with /join may fail silently, under certain conditions

Instructions, below, are for the Pidgin plugin, and I am not certain how much of that is mirrored in Adium. In other words, if they don't work for you, that's because it's not the same piece of software. Anyone who wants to write some instructions to go with the Adium plugin will have my eternal gratitude.

Legacy Version

The F-Chat plugin for Pidgin was originally developed by StatusLightOffline.pngTestPanther. It is available on Google Code. Bugs may be viewed and reported under 'Issues' on the Google Code page. The last version of the plugin from StatusLightOffline.pngTestPanther was 0.3.0, which is missing a number of features. If at all possible, please use StatusLightOffline.pngNelwill's fork, instead.

Using the Plugin

Set up your character(s)

  1. In the 'Accounts' menu, select 'Manage Accounts'.
  2. Click the 'Add...' button, to add a new character.
  3. For 'Protocol', select 'Flist'. If you do not see 'Flist', please make sure you have installed the plugin correctly.
  4. For 'Username', enter your F-List username, not your character.
  5. For 'Character', enter the name of one of your characters.
  6. For 'Password', enter your F-List password. You can elect to have the program remember your password by ticking the box next to 'Remember password', on the next line.
  7. If you would like to download friends and bookmarks for this character, go to the 'Advanced' tab, and select 'Download Friends' and/or 'Download Bookmarks'.
  8. Click 'Add'.
  9. Enable the account (via the tickbox to the left) to connect to it. Disable it (untick the box) to disconnect.
  10. Close the 'Accounts' window.
  11. You can also disable the account through the 'Accounts' menu, when you are ready to disconnect, and enable it again via the menu, as well.

Keep in mind that you can't log the same character onto F-Chat from two places at once; you can, however, have one character logged in via Pidgin and a different character logged in through the webclient, or two characters logged in via Pidgin. If you have the formatting toolbar turned on, your character name will display at the far right, so you know which character you have in that tab.


Setting your status

  1. Click on the 'Accounts' menu
  2. Go down to the character you want to open the room with, and select 'Set Status'.
  3. In the box that appears, select a status, enter a message (if you like), and then click 'OK'.

Sending a PM

  • If it's a friend of yours, just double-click them in your buddy list and a chat window will open.
  • To send a message to someone you're in a room with, right click their name in the user list, on the right side, and select 'IM'.
  • To send a message to someone else, open the 'Buddies' menu and select 'New Instant Message'. Type the character name into the window that appears.
  • /priv also works, but only if you are in a room. Not necessarily a room with the person you want to talk to, but slash commands appear not to work in PMs, and there's no console.

Joining a room

  1. Click on 'Tools'
  2. Select 'Room List'.
  3. In the window that opens, select your character, at the top, and then click 'Get List' at the bottom. The list will initially be ordered by number of characters in the room, with official rooms first, and open private rooms after. You can sort by any column, by clicking on the header.
  4. Select a room you want to enter, and then click 'Join'.
  5. The room will open in a chat window and will show up on your buddy list under 'CharacterName - Temporary Chats'
  6. You can close the room list, once you're finished joining rooms.

Saving your favorite rooms for later

Once you are in a room, you'll see it show up under Temporary Chats. But, what if you like that room, and you want it to stay easily available, even after you relog?

  1. Click on the 'Buddies' menu
  2. Select 'Show' > 'Empty Groups'
  3. Click on the 'Buddies' menu again
  4. Select 'Add Group...'
  5. Name the group something you will remember, like 'CharacterName - Chats'
  6. Drag and drop the rooms you want to save from 'CharacterName - Temporary Chats' to 'CharacterName - Chats'
  7. Turn off Show Empty Groups, the same way you turned it on.
  8. Now, when you relog, all the rooms you usually use with that character will show up in your buddy list.

Making a room

  1. Click on the 'Accounts' menu
  2. Go down to the character you want to open the room with, and select 'Create a Private Channel'.
  3. Type a room name into the box, and click 'OK'.

Setting the Description for a Room

  1. Type /setdescription
  2. Type the description into the box
  3. Click 'OK'

Searching for partners

  1. Click on the 'Accounts' menu
  2. Go down to the character you want to open the room with, and select 'Character Search'.
  3. Set whether you would like to search for 'Looking' status only.
  4. Select whether you would like to search everyone online, or just people in one channel.
  5. Select up to three kinks.
  6. Click 'OK'.
  7. The window will change to ask what genders you are looking for. Select whichever ones you prefer, and click 'OK'.
  8. The window will change to ask which dom/sub options you are looking for. Select whichever ones you prefer, and click 'OK'.
  9. The search results will pop up in your buddy list, under 'CharacterName - Search'. The contents of this group will change each time you search. No harm can be done by simply deleting the group, when you are done looking through the results, as it will be created again, the next time you run a search.

Using RP Ads

In the webclients, there's a button to send RP ads, but there's not one in Pidgin. Instead, use /ad before the text of your ad.
Example: /ad This is an RP ad!

Reporting a User or Room

Type /report to bring up a dialog box which asks for the reported user's name and the reason for the report. Logs are automatically attached to the report.

Checking the Plugin Version

Type /version and compare the output to the version of the latest release, to be sure you're using the most recent version.

F-List Smileys

You'll notice that the default F-List smiley set doesn't exist in Pidgin! If you'd like to add those smileys, an F-List Smiley Theme is available.

FListSmileys.zip (85.9 KB ZIP)

  • Unpack the zip file
  • Place the folder called 'FList' in the correct directory, according to your OS:
    • Linux: ~/.purple/smileys/
    • Windows: /Users/[yourname]/AppData/Roaming/.purple/smileys
  • In the Pidgin buddy list, go to Tools > Preferences > Themes > Smiley Theme and select F-List Smileys

This smiley theme will only affect the F-Chat protocol, and it behaves exactly like the smileys on the site, so it doesn't replace :), but it will replace :hex-smile: or :lif-happy: with the appropriate icons. Because it only affects F-Chat, and doesn't overwrite any standard smileys (except perhaps :cake: and :heart:) it's probably safe to merge with your existing smiley theme, if you're using one.

Building From Source

Building for Linux

Prerequisites (on Debian-like systems):

  • aptitude install build-essential make pidgin-dev libjson-glib-dev

To build the plugin for Pidgin, run:

  • make

To build the plugin for other libpurple clients (Finch, Spectrum 2, Minbif, Bitlbee), run :

  • make FLIST_PURPLE_ONLY=1

To install the plugin after building:

  • Systemwide install: sudo make install
  • Single-user install: Put the flist.so file in ~/.purple/plugins

Building for Windows

Prerequisites (on Debian-like systems):

  • apt-get install gcc-mingw-w64-i686 make

To build the plugin for Pidgin Windows:

  • make prepare_cross
  • make libflist.dll

To install the plugin after building:

  • Move libflist.dll to the Windows machine
  • Put the file into your Pidgin's plugin folder (e.g. C:\Program Files (x86)\Pidgin\plugins)