Update 2018: Facebook "threw it's toys" and for a while became completely unavailable through IFTTT. All existing applets were deleted. As I write this it has come back a little, but you can currently only push posts out to Pages, not your personal feed :(
One of the few reasons I continue to maintain my LiveJournal account has been the FaceBook cross-posting extension (so posts go from here at Dreamwidth to LiveJournal, and them public posts go on to FaceBook). It works pretty well, but I've been meaning to find a way to cut LJ out of the loop so that people clicking on my FB links come to here instead of there. The final push came in learning that LJ now has it's hardware and thus it's data in an even more insecure location than previously
I've also been meaning to investigate the If This Then That
service for some time and multiple responses to googling for a pre-existing solution pointed there.
This solution will work for any blogging or journal service which provides an RSS feed of recent entries. (Find your Dreamwidth RSS urls here
). This will only work to cross-post publicly published entries not friends-locked ones, but that doesn't matter for my use-case. The cross-post is not instant as IFTTT will only check the feed every so often; but should appear within the hour.
[Note: the below captures are displayed at reduced size for ease of layout]
1. Sign up for an IFTTT
account and find your way to the My Applets page.
2. Click the New Applet button
3. Now the first time I visited this page I didn't even register that the blue "+this" part of "if +this then that" as displayed in this screenshot was clickable (damn flat designs) and followed the link below it instead, which was not helpful. So click on the +this - assuming the interface is mostly unchanged.
4. Choose your service: the service you want is "Feed" (generally an orange-and-white icon with a dot and two semi-circles above-right of it)
5. Choose a trigger: I just used "New Feed Item", if I wanted to narrow it down for Dreamwidth I would set up the feed itself to only display particular tags
rather than relying on the content to include a keyword.
At the next screen paste your feed url into the box and click Create Trigger. You'll be taken to a page displaying "if [RSS icon] then +that". Now
it's more obvious where to click, we're learning.
6. Choose your service: FaceBook. I think it was at this point I had to link up my Facebook account into IFTTT. Don't give it access to anything it doesn't need; and see step 9 to clean up these permissions from FB itself as there doesn't seem to be any way to edit them from the IFTTT end.
7. Choose your action: Create a link post.
At the next screen the Link Url field will be filled in for you, don't touch that.
You can add what you like to the Message field, click on the +Ingredient button below it to add details from the post itself. After some experimentation with various post content and the EntryContent ingredient I gave up on that and just put a generic message about the source of the post in here. There were some issues around getting line breaks in the right places while stripping out html tags and dealing with journal cuts. Some of my posts can get quite long and I can see them copying over to FB in a very messed up way.
On that note: the link tag will pick up on an image you have in the content; it will not pick up your profile icon as a fallback. The short summary and the icon were the two things that I consider were better about the LJ implementation.
8. Click the "Create Action" button, wait for the page to update, leave notifications or turn them off as you wish (they only show up in your IFTTT dashboard, I'd leave them on for a while at least for debugging, you can come back and turn them off later) and then the Finish button. The applet will now be available in your My Applets panel.
Click on it here to go to a larger view where you can see see it's status (bottom pane), manually run the check for new posts (bottom pane) or change the settings/delete (cog icon, top left)
9. Go to your FaceBook > Settings > Apps and click on the IFTTT icon to check what permissions IFTTT has actually received (they certainly didn't match what I thought I had allowed it). At minimum for this purpose
it should only need the "required" access to your public profile and the ability to Post to your timeline. If you are pushing the posts to a page or group instead of your personal timeline it may also need permission to manage those. Also make sure it is posting with the level of access you told it to.
"Helpfully" once you uncheck items and save they disappear from display. I haven't found a way to get them back except theoretically by deleting the App from the FB end and re-establishing the link from IFTTT. In the course of my experimentation I did "Disconnect" and "Reconnect" from the IFTTT end but this did not give me the option to re-select permissions. It did
delete the instance of the cross-posting app I had created with no warning though :( So beware of that.
Now the last thing I need to dispense with LJ entirely is a reliable way of backing up Dreamwidth locally. Currently I still use LJArchive (from the LJ cross-posts) but I haven't had any luck getting it to reliably talk with DW.
-------------------------------This entry was originally posted at Dreamwidth.
Preferentially comment there.