There's a priority system.
Twitter supported the iOS version of this feature two days before iOS 13 launched… which was two weeks after Android 10 came out…
{
"type": "entry",
"published": "2020-01-22T02:00:59+00:00",
"url": "https://twitter.com/jackyalcine/status/1219802106283978752",
"quotation-of": "https://twitter.com/CassidyJames/status/1219800061053296640",
"content": {
"text": "There's a priority system."
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/CassidyJames/status/1219800061053296640": {
"type": "entry",
"published": "2020-01-22T01:52:52+00:00",
"url": "https://twitter.com/CassidyJames/status/1219800061053296640",
"in-reply-to": [
"https://twitter.com/CassidyJames/status/1219799306263089152"
],
"content": {
"text": "Twitter supported the iOS version of this feature two days before iOS 13 launched\u2026 which was two weeks after Android 10 came out\u2026"
},
"author": {
"type": "card",
"name": "Cassidy James Blaede",
"url": "https://twitter.com/CassidyJames",
"photo": "https://pbs.twimg.com/profile_images/1219650897485103110/-rGjjs5Q.jpg"
},
"post-type": "reply"
}
},
"_id": "8164142",
"_source": "2773"
}
At the risk of getting in the middle of it — I like @BernieSanders.
Now let's move on, America.
{
"type": "entry",
"published": "2020-01-22T01:54:40+00:00",
"url": "https://twitter.com/jackyalcine/status/1219800515317338112",
"quotation-of": "https://twitter.com/TomSteyer/status/1219711538820304896",
"content": {
"text": "endorse him you coward"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/TomSteyer/status/1219711538820304896": {
"type": "entry",
"published": "2020-01-21T20:01:06+00:00",
"url": "https://twitter.com/TomSteyer/status/1219711538820304896",
"content": {
"text": "At the risk of getting in the middle of it \u2014 I like @BernieSanders.\n \nNow let's move on, America.",
"html": "At the risk of getting in the middle of it \u2014 I like <a href=\"https://twitter.com/BernieSanders\">@BernieSanders</a>.\n \nNow let's move on, America."
},
"author": {
"type": "card",
"name": "Tom Steyer",
"url": "https://twitter.com/TomSteyer",
"photo": "https://pbs.twimg.com/profile_images/1180190742519656449/rNDail0A.jpg"
},
"post-type": "note"
}
},
"_id": "8163934",
"_source": "2773"
}
not me at a seafood or brisket spot :(
Almost everyone orders the entree.
Some folks order appetizers.
A few will order dessert.
(If you’re building a product, I think it’s best to make the entree)
{
"type": "entry",
"published": "2020-01-22T01:40:27+00:00",
"url": "https://twitter.com/jackyalcine/status/1219796940155604998",
"quotation-of": "https://twitter.com/mijustin/status/1219791119178817536",
"content": {
"text": "not me at a seafood or brisket spot :("
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/mijustin/status/1219791119178817536": {
"type": "entry",
"published": "2020-01-22T01:17:20+00:00",
"url": "https://twitter.com/mijustin/status/1219791119178817536",
"content": {
"text": "Almost everyone orders the entree.\nSome folks order appetizers.\nA few will order dessert.\n\n(If you\u2019re building a product, I think it\u2019s best to make the entree)"
},
"author": {
"type": "card",
"name": "Justin Jackson",
"url": "https://twitter.com/mijustin",
"photo": "https://pbs.twimg.com/profile_images/932726689485828097/n86GsuLG.jpg"
},
"post-type": "note"
}
},
"_id": "8163582",
"_source": "2773"
}
Casey went deep on facial recognition today. You should too! We also have stories from @TonyRomm, @nathanielpopper, @KurtWagner8 and @CynthiaMcFadden, to name a few:
getrevue.co/profile/caseyn…
{
"type": "entry",
"published": "2020-01-22T01:33:03+00:00",
"url": "https://twitter.com/ZoeSchiffer/status/1219795078031409153",
"content": {
"text": "Casey went deep on facial recognition today. You should too! We also have stories from @TonyRomm, @nathanielpopper, @KurtWagner8 and @CynthiaMcFadden, to name a few:\ngetrevue.co/profile/caseyn\u2026",
"html": "Casey went deep on facial recognition today. You should too! We also have stories from <a href=\"https://twitter.com/TonyRomm\">@TonyRomm</a>, <a href=\"https://twitter.com/nathanielpopper\">@nathanielpopper</a>, <a href=\"https://twitter.com/KurtWagner8\">@KurtWagner8</a> and <a href=\"https://twitter.com/CynthiaMcFadden\">@CynthiaMcFadden</a>, to name a few:\n<a href=\"https://www.getrevue.co/profile/caseynewton/issues/clearview-ai-and-the-mortal-threat-to-privacy-221562\">getrevue.co/profile/caseyn\u2026</a>"
},
"author": {
"type": "card",
"name": "Zoe Schiffer",
"url": "https://twitter.com/ZoeSchiffer",
"photo": "https://pbs.twimg.com/profile_images/808466807119978496/nmhE7XbI.jpg"
},
"post-type": "note",
"_id": "8163583",
"_source": "2773"
}
planning on doing this to send someone a hand written letter
Imagine buying a stamp. Imagine buying a stamp and mailing something.
{
"type": "entry",
"published": "2020-01-22T01:18:02+00:00",
"url": "https://twitter.com/jackyalcine/status/1219791297604542464",
"quotation-of": "https://twitter.com/anildash/status/1219786365514276870",
"content": {
"text": "planning on doing this to send someone a hand written letter"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/anildash/status/1219786365514276870": {
"type": "entry",
"published": "2020-01-22T00:58:26+00:00",
"url": "https://twitter.com/anildash/status/1219786365514276870",
"content": {
"text": "Imagine buying a stamp. Imagine buying a stamp and mailing something."
},
"author": {
"type": "card",
"name": "Anil Dash \ud83e\udd6d",
"url": "https://twitter.com/anildash",
"photo": "https://pbs.twimg.com/profile_images/1040592282032984071/RC8We7BG.jpg"
},
"post-type": "note"
}
},
"_id": "8163226",
"_source": "2773"
}
✈️✈️ First flights of 2020. There are many changes we can make to reduce environmental impacts. Flying less is often suggested, disproportionately to its impact compared to meat^1 & clothing^2 production. I’m posting my flights for 2020 anyway.
In absolute environmental impact terms (climate change, pollution, water use etc.), air travel is far behind:
1. Eating meat (15% of greenhouse gas emissions, same as all vehicles)
2. Clothing consumption (10% of carbon emissions etc.)
It’s important to both recognize what causes more impacts, appreciate every choice every person makes to reduce environmental impact, and advocate for necessary systemic changes (industrial, policy etc.). We need to do all of them, and not fall for any either-or traps.
On this trip in particular, I’ve combined two trips into one longer one with remote participation for one of the trips, thus avoiding an additional four flights (nearly two more days of flying).
Eat what you have to eat to be healthy. Buy less stuff in general (including clothing). Fly and take transit as you need to for work. In each case see what you can reduce and what better choices you can make without self-harm, without judgment.
1^:
* https://www.theguardian.com/environment/2018/may/31/avoiding-meat-and-dairy-is-single-biggest-way-to-reduce-your-impact-on-earth
* https://www.independent.co.uk/environment/climate-change/climate-change-meat-industry-creates-same-amount-of-greenhouse-gases-as-all-the-vehicles-in-the-a6747561.html
* https://www.nytimes.com/2018/01/25/climate/cows-global-warming.html
* https://en.wikipedia.org/wiki/Environmental_impact_of_meat_production#Greenhouse_gas_emissions
2^ https://www.businessinsider.de/international/fast-fashion-environmental-impact-pollution-emissions-waste-water-2019-10/
{
"type": "entry",
"published": "2020-01-21 15:06-0800",
"url": "https://tantek.com/2020/021/t1/first-flights-changes-make",
"photo": [
"https://fastly.4sqi.net/img/general/width960/476_cCbKnalp_ZulR3uslmnB_MhKn5bI97sW0n4Q4ZAy8uY.jpg",
"https://fastly.4sqi.net/img/general/width960/476_Vlh78qbexFeTCI7tw2vHKDQ_IhpuojeV46cYzXjpkGI.jpg"
],
"content": {
"text": "\u2708\ufe0f\u2708\ufe0f First flights of 2020. There are many changes we can make to reduce environmental impacts. Flying less is often suggested, disproportionately to its impact compared to meat^1 & clothing^2 production. I\u2019m posting my flights for 2020 anyway. \n\nIn absolute environmental impact terms (climate change, pollution, water use etc.), air travel is far behind:\n1. Eating meat (15% of greenhouse gas emissions, same as all vehicles)\n2. Clothing consumption (10% of carbon emissions etc.)\n\nIt\u2019s important to both recognize what causes more impacts, appreciate every choice every person makes to reduce environmental impact, and advocate for necessary systemic changes (industrial, policy etc.). We need to do all of them, and not fall for any either-or traps.\n\nOn this trip in particular, I\u2019ve combined two trips into one longer one with remote participation for one of the trips, thus avoiding an additional four flights (nearly two more days of flying).\n\nEat what you have to eat to be healthy. Buy less stuff in general (including clothing). Fly and take transit as you need to for work. In each case see what you can reduce and what better choices you can make without self-harm, without judgment.\n\n1^:\n* https://www.theguardian.com/environment/2018/may/31/avoiding-meat-and-dairy-is-single-biggest-way-to-reduce-your-impact-on-earth\n* https://www.independent.co.uk/environment/climate-change/climate-change-meat-industry-creates-same-amount-of-greenhouse-gases-as-all-the-vehicles-in-the-a6747561.html\n* https://www.nytimes.com/2018/01/25/climate/cows-global-warming.html\n* https://en.wikipedia.org/wiki/Environmental_impact_of_meat_production#Greenhouse_gas_emissions\n2^ https://www.businessinsider.de/international/fast-fashion-environmental-impact-pollution-emissions-waste-water-2019-10/",
"html": "<a class=\"u-bridgy-flickr-photo\" href=\"https://fastly.4sqi.net/img/general/original/476_cCbKnalp_ZulR3uslmnB_MhKn5bI97sW0n4Q4ZAy8uY.jpg\"></a><a class=\"u-bridgy-flickr-photo\" href=\"https://fastly.4sqi.net/img/general/original/476_Vlh78qbexFeTCI7tw2vHKDQ_IhpuojeV46cYzXjpkGI.jpg\"></a>\u2708\ufe0f\u2708\ufe0f First flights of 2020. There are many changes we can make to reduce environmental impacts. Flying less is often suggested, disproportionately to its impact compared to meat^1 & clothing^2 production. I\u2019m posting my flights for 2020 anyway. <br /><br />In absolute environmental impact terms (climate change, pollution, water use etc.), air travel is far behind:<br />1. Eating meat (15% of greenhouse gas emissions, same as all vehicles)<br />2. Clothing consumption (10% of carbon emissions etc.)<br /><br />It\u2019s important to both recognize what causes more impacts, appreciate every choice every person makes to reduce environmental impact, and advocate for necessary systemic changes (industrial, policy etc.). We need to do all of them, and not fall for any either-or traps.<br /><br />On this trip in particular, I\u2019ve combined two trips into one longer one with remote participation for one of the trips, thus avoiding an additional four flights (nearly two more days of flying).<br /><br />Eat what you have to eat to be healthy. Buy less stuff in general (including clothing). Fly and take transit as you need to for work. In each case see what you can reduce and what better choices you can make without self-harm, without judgment.<br /><br />1^:<br />* <a href=\"https://www.theguardian.com/environment/2018/may/31/avoiding-meat-and-dairy-is-single-biggest-way-to-reduce-your-impact-on-earth\">https://www.theguardian.com/environment/2018/may/31/avoiding-meat-and-dairy-is-single-biggest-way-to-reduce-your-impact-on-earth</a><br />* <a href=\"https://www.independent.co.uk/environment/climate-change/climate-change-meat-industry-creates-same-amount-of-greenhouse-gases-as-all-the-vehicles-in-the-a6747561.html\">https://www.independent.co.uk/environment/climate-change/climate-change-meat-industry-creates-same-amount-of-greenhouse-gases-as-all-the-vehicles-in-the-a6747561.html</a><br />* <a href=\"https://www.nytimes.com/2018/01/25/climate/cows-global-warming.html\">https://www.nytimes.com/2018/01/25/climate/cows-global-warming.html</a><br />* <a href=\"https://en.wikipedia.org/wiki/Environmental_impact_of_meat_production#Greenhouse_gas_emissions\">https://en.wikipedia.org/wiki/Environmental_impact_of_meat_production#Greenhouse_gas_emissions</a><br />2^ <a href=\"https://www.businessinsider.de/international/fast-fashion-environmental-impact-pollution-emissions-waste-water-2019-10/\">https://www.businessinsider.de/international/fast-fashion-environmental-impact-pollution-emissions-waste-water-2019-10/</a>"
},
"author": {
"type": "card",
"name": "Tantek \u00c7elik",
"url": "https://tantek.com/",
"photo": "https://tantek.com/photo.jpg"
},
"post-type": "photo",
"_id": "8162224",
"_source": "2460"
}
The most relatable thing on the internet today: nytimes.com/2020/01/20/sty…
{
"type": "entry",
"published": "2020-01-22T00:30:34+00:00",
"url": "https://twitter.com/ZoeSchiffer/status/1219779352323186688",
"content": {
"text": "The most relatable thing on the internet today: nytimes.com/2020/01/20/sty\u2026",
"html": "The most relatable thing on the internet today: <a href=\"https://www.nytimes.com/2020/01/20/style/quit-this-assignment.html\">nytimes.com/2020/01/20/sty\u2026</a>"
},
"author": {
"type": "card",
"name": "Zoe Schiffer",
"url": "https://twitter.com/ZoeSchiffer",
"photo": "https://pbs.twimg.com/profile_images/808466807119978496/nmhE7XbI.jpg"
},
"post-type": "note",
"_id": "8162124",
"_source": "2773"
}
So I have a lot of prints (like 30+). Where do people get frames for A1, A3 and legal sized prints in the Bay that won’t result in me spending $8,000? Lol.
Extra points for a local business because we support them.
{
"type": "entry",
"published": "2020-01-21T23:58:22+00:00",
"url": "https://twitter.com/jackyalcine/status/1219771248135282688",
"content": {
"text": "So I have a lot of prints (like 30+). Where do people get frames for A1, A3 and legal sized prints in the Bay that won\u2019t result in me spending $8,000? Lol.\n\nExtra points for a local business because we support them."
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"_id": "8161595",
"_source": "2773"
}
✈️✈️ First flights of 2020. There are many changes we can make to reduce environmental impacts. Flying less is often suggested, disproportionately to its impact compared to meat^1 & clothing^2 production. I’m posting my flights for 2020 anyway.
In… tantek.com/2020/021/t1/fi…
{
"type": "entry",
"published": "2020-01-21T23:48:18+00:00",
"url": "https://twitter.com/t/status/1219768713215401991",
"photo": [
"https://pbs.twimg.com/media/EO19LQyWkAMcUA0.jpg",
"https://pbs.twimg.com/media/EO19LePW4AMN-gm.jpg"
],
"content": {
"text": "\u2708\ufe0f\u2708\ufe0f First flights of 2020. There are many changes we can make to reduce environmental impacts. Flying less is often suggested, disproportionately to its impact compared to meat^1 & clothing^2 production. I\u2019m posting my flights for 2020 anyway.\n\nIn\u2026 tantek.com/2020/021/t1/fi\u2026",
"html": "\u2708\ufe0f\u2708\ufe0f First flights of 2020. There are many changes we can make to reduce environmental impacts. Flying less is often suggested, disproportionately to its impact compared to meat^1 & clothing^2 production. I\u2019m posting my flights for 2020 anyway.\n\nIn\u2026 <a href=\"https://tantek.com/2020/021/t1/first-flights-changes-make\">tantek.com/2020/021/t1/fi\u2026</a>"
},
"author": {
"type": "card",
"name": "Tantek \u00c7elik",
"url": "https://twitter.com/t",
"photo": "https://pbs.twimg.com/profile_images/423350922408767488/nlA_m2WH.jpeg"
},
"post-type": "photo",
"_id": "8161208",
"_source": "2773"
}
Yeah y’all, I will literally hand out all of my secrets and resources I’ve received from my MFA. Idgaf. Steal from ivory temples of knowledge and feed the streets.
{
"type": "entry",
"published": "2020-01-21T22:35:16+00:00",
"url": "https://twitter.com/jackyalcine/status/1219750337092866050",
"quotation-of": "https://twitter.com/blaqueword/status/1219750010520252416",
"content": {
"text": "A vibe"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/blaqueword/status/1219750010520252416": {
"type": "entry",
"published": "2020-01-21T22:33:59+00:00",
"url": "https://twitter.com/blaqueword/status/1219750010520252416",
"content": {
"text": "Yeah y\u2019all, I will literally hand out all of my secrets and resources I\u2019ve received from my MFA. Idgaf. Steal from ivory temples of knowledge and feed the streets."
},
"author": {
"type": "card",
"name": "Steven Underwood",
"url": "https://twitter.com/blaqueword",
"photo": "https://pbs.twimg.com/profile_images/1216525821327945728/ns3R2DTc.jpg"
},
"post-type": "note"
}
},
"_id": "8159456",
"_source": "2773"
}
Hive mind: thoughts on getting disability insurance when my main condition (RA) would be excluded? It's quite a lot of money (~$3000 a year) even when I lower the payout and increase the waiting period to 9 months. No dependents or debt.
{
"type": "entry",
"published": "2020-01-21T21:08:47+00:00",
"url": "https://twitter.com/anomalily/status/1219728569657511936",
"content": {
"text": "Hive mind: thoughts on getting disability insurance when my main condition (RA) would be excluded? It's quite a lot of money (~$3000 a year) even when I lower the payout and increase the waiting period to 9 months. No dependents or debt."
},
"author": {
"type": "card",
"name": "Lillian Karabaic",
"url": "https://twitter.com/anomalily",
"photo": "https://pbs.twimg.com/profile_images/1123802400731664385/dsHQG1nZ.jpg"
},
"post-type": "note",
"_id": "8156938",
"_source": "2773"
}
YOOO you ain't shit for this lol
So because she went and reported me to my friend I also changed the code to send 2 SMSes, randomly between 6am and 6pm with four words and my name as sender: “you still...
{
"type": "entry",
"published": "2020-01-21T21:01:17+00:00",
"url": "https://twitter.com/jackyalcine/status/1219726684561084416",
"quotation-of": "https://twitter.com/trinisoftinc/status/1219676328074645506",
"content": {
"text": "YOOO you ain't shit for this lol"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/trinisoftinc/status/1219676328074645506": {
"type": "entry",
"published": "2020-01-21T17:41:11+00:00",
"url": "https://twitter.com/trinisoftinc/status/1219676328074645506",
"in-reply-to": [
"https://twitter.com/trinisoftinc/status/1219676325629386759"
],
"content": {
"text": "So because she went and reported me to my friend I also changed the code to send 2 SMSes, randomly between 6am and 6pm with four words and my name as sender: \u201cyou still owe me\u201d."
},
"author": {
"type": "card",
"name": "Segun",
"url": "https://twitter.com/trinisoftinc",
"photo": "https://pbs.twimg.com/profile_images/1190920766885416960/4c6BXjRl.jpg"
},
"post-type": "reply"
}
},
"_id": "8156617",
"_source": "2773"
}
Lol look
We was in different departments. Anything that happened, happened OUTSIDE of the workplace
Alyuh sleeping with your coworkers?
How that working out for you?
Wha you do when yall vex? Wha happen when the office admin keep tryna flirt with 'em? Dem ever drop all...
{
"type": "entry",
"published": "2020-01-21T20:56:37+00:00",
"url": "https://twitter.com/jackyalcine/status/1219725510290202624",
"quotation-of": "https://twitter.com/E4RudeGyals/status/1219647746656870406",
"content": {
"text": "Lol look\n\nWe was in different departments. Anything that happened, happened OUTSIDE of the workplace"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/E4RudeGyals/status/1219647746656870406": {
"type": "entry",
"published": "2020-01-21T15:47:37+00:00",
"url": "https://twitter.com/E4RudeGyals/status/1219647746656870406",
"video": [
"https://video.twimg.com/tweet_video/EO0PJuEXUAALDG9.mp4"
],
"content": {
"text": "Alyuh sleeping with your coworkers?\n\nHow that working out for you?\nWha you do when yall vex? Wha happen when the office admin keep tryna flirt with 'em? Dem ever drop all dem work pon you because they gotta step out early everyday?"
},
"author": {
"type": "card",
"name": "W.I. Rudey",
"url": "https://twitter.com/E4RudeGyals",
"photo": "https://pbs.twimg.com/profile_images/992146671680270336/WNIHGY8g.jpg"
},
"post-type": "video"
}
},
"_id": "8156624",
"_source": "2773"
}
{
"type": "entry",
"published": "2020-01-21T11:53:16-08:00",
"url": "https://boffosocko.com/2020/01/21/using-ifttt-to-syndicate-pesos-content-from-social-services-to-wordpress-using-micropub/",
"category": [
"indieweb",
"wordpress",
"crossposting",
"diigo",
"google-calendar",
"huffduffer",
"hypothes-is",
"ifttt",
"indieauth",
"indieauth-plugin",
"manual-until-it-hurts",
"meetup-com",
"micropub",
"own-your-data",
"pesos",
"pocket",
"post-kinds-plugin",
"reading-am",
"rss",
"syndication",
"syndication-links",
"webhooks",
"youtube",
"zapier",
"https://david.shanske.com/",
"https://snarfed.org/"
],
"name": "Using IFTTT to syndicate (PESOS) content from social services to WordPress using Micropub",
"content": {
"text": "Introduction\nWhat follows may tend toward the jargon-y end of programming, but I\u2019ll endeavor to explain it all and go step-by-step to allow those with little or no programming experience to follow along and use the tools I\u2019m describing in a very powerful way.\u00a0 I\u2019ll do my best to link the jargon to definitions and examples for those who haven\u2019t run across them before. Hopefully with a bit of explanation, the ability to cut and paste some code, or even make some basic modifications, you\u2019ll be able to do what I and others have done, but without having to puzzle it all out from scratch.\nMost readers are sure to be aware of the ubiquitous \u201cshare\u201d buttons that appear all over the web. Some of the most common are \u201cshare to Facebook\u201d or \u201cshare to Twitter\u201d. In my examples that follow, I\u2019m doing roughly the same thing, but I\u2019m using technology called webhooks and micropub to be able to share not just a URL or web address, but a variety of other very specific data in a specific way to my website.\nThis \u201cshare\u201d\u2013while a little more complicated\u2013gives me a lot more direct control over the data I\u2019m sending and how it will be seen on my website. I would hope that one day more social websites will have built in share buttons that allow for direct micropub integration so that instead of only sharing to corporate sites like Facebook, Twitter, et al. they\u2019ll let people share directly to their own personal websites where they can better control their online identity and data. What I\u2019m describing below is hopefully a temporary band-aid that allows me to keep using common social services like Pocket, YouTube, Meetup, Goodreads, Letterboxd, Diigo, Huffduffer, Reading.am, Hypothes.is, and hundreds of others but to also post the content to my site so that I own and control more of my own online data.\nAn example using Pocket\nFollowing in the footsteps of Charlotte Allen and Jan-Lukas Else, I\u2019ve been tinkering around with improving some of my syndication workflows for a number of social silos including Pocket, a social silo that focuses on bookmarking material to read later.\nI have long used IFTTT (aka If This, Then That), a free and relatively simple web service that allows one to create applets that tie a large number of web-based and social services together, to send data from my Pocket account to my WordPress-based website. I\u2019d done this using my Pocket RSS feed to create WordPress draft posts that I could then modify if necessary and publish publicly if I desired. Since I regularly use a number of Micropub clients in conjunction with the WordPress Micropub plugin and IFTTT supports webhooks, I thought I\u2019d try that out as a separate process to provide a bit less manual pain in mapping the data for posts to appear like I want them to on my website.\u00a0\nNow I can use my Pocket account data and map most of it directly to the appropriate data fields on my website. Because Pocket has direct integration into IFTTT, I can actually get more data (particularly tags) out of it than I could before from the simple RSS feed.\nBelow, you\u2019ll find what I\u2019ve done with a quick walk through and some example code snippets. I\u2019ll break some of it down into pieces as I go, and then provide a specific exemplar of some of the code properly strung together at the end. I\u2019ll also note that this general procedure can be used with a variety of other silos (and either their integrated data or RSS feeds) within IFTTT to post data to your website. Those running platforms other than WordPress may be able to use the basic recipe presented here with some small modifications, to send similar data from their accounts to their sites that support Micropub as well.\u00a0\nDirections for connecting IFTTT to publish to WordPress via Micropub\nPreliminaries\nInstall and activate the Micropub plugin for WordPress. This will give your website a server endpoint that IFTTT will use to authenticate and send data to your website on your behalf.\nIf you don\u2019t already have it, install the IndieAuth plugin for WordPress and activate it. This will allow you to generate an authorization token (think password) with the appropriate scopes (think permissions to do specific actions on your website) to allow IFTTT to securely post to your website.\u00a0\nWithin the WordPress administrative interface/dashboard go to Users >> Mange Tokens or go to the path /wp-admin/users.php?page=indieauth_user_token on your website.\u00a0\nAt the bottom of that page under the section \u201cAdd Token\u201d add a convenient name for your new token. You\u2019ll see in the following screencapture that I\u2019ve used \u201cIFTTT for Webhooks\u201d. Next click the check boxes to add scopes for \u201ccreate\u201d and \u201cmedia\u201d. Finally click the \u201cAdd New Token\u201d button.\n\nOn the resulting page, copy the entirety of the returned access token in a safe place. You\u2019ll need this token later in the process and once you\u2019ve navigated away from the page, there\u2019s no way to retrieve the token again later. The same token can be used for multiple different recipes within IFTTT,\u00a0 though one could create a different token for each different recipe if desired.\nSign up for an IFTTT account (if you don\u2019t already have one).\u00a0\nRegister Pocket as a service you can use within IFTTT.\nThe IFTTT Applet\nIn your IFTTT.com account, create a new applet.\n\nFor the \u201cif\u201d part of the applet, search for and choose the Pocket application.\n\nChoose the trigger \u201cAny new item\u201d (other triggers could be chosen for different combinations of actions).\nClick the \u201cthen\u201d part of the applet, and search for and chose the Webhooks application.\n\nChoose the \u201cMake a web request\u201d option (currently the only option on the page).\n\nNext we\u2019ll fill in the action fields.\n\n\u00a0\nFill in the four action fields with the following values, with the appropriate modifications as necessary:\nURL: https://www.example.com/wp-json/micropub/1.0/endpoint\nBe sure to change example.com to the appropriate URL for your website. If you\u2019re using a platform that isn\u2019t WordPress in combination with the Micropub plugin, you can quickly find your appropriate endpoint by looking at your homepage\u2019s source for a <link> element with a rel=\"micropub\" attribute.\nMethod: POST\nContent Type: application/x-www-form-urlencoded\nMore advanced users might experiment with other content types, but this will naturally require different data and formatting in the Body section.\nBody:\u00a0\nThe Body portion is one of the most complicated portions of the operation, because this is where you can get creative in how you fill this out and the end results you end up with on your website. You can use the available variables in the recipe to custom create almost anything you like and some services will give you a tremendous amount of flexibility. I\u2019ll walk through a handful of the most common options and then tie them all together at the end. Ultimately the Body will be a string of various commands that indicate the data you want to send to your website and all of those commands will be strung together with an ampersand character (\u201c&\u201c) between each of them.\nThere are some small differences you may want to experiment with in terms of what you put in the Body field based on whether or not you\u2019re using the Post Kinds plugin to create your posts and reply contexts or if you\u2019re not.\u00a0\nDepending on which pieces you choose, I recommend doing a few test runs for your applets to make sure that they work the way you expect them to. (The Micropub plugin has a setting to mark incoming posts automatically as drafts, so you\u2019re not spamming your readers while you\u2019re testing options if you\u2019re testing this on a live site.) Sometimes formatting issues (particularly with setting a publish time) may cause the post to fail. In these cases, experiment to find and excise the offending code and see if you can get things working with minimal examples before adding additional data/details.\nFor those who would like to get into more advanced territory with the programming and methods, I recommend looking at the W3C\u2019s Webmention specification.\u00a0\nThe first thing you\u2019ll want in the Body will be your access token. This is similar to a password that allows the webhook to publish from IFTTT to your website. You\u2019ll want a line that reads as follows with the AccessTokenHere\u00a0replaced with the access token from your token provider which you created earlier and saved. You\u2019ll want to keep this secret because it acts like a password for allowing remote applications to post to your website.\naccess_token=AcessTokenHere\nNext will come the content you want to be published to your site.\n&content=<<<{{EntryTitle}}\n{{EntryPublished}}>>>\nI\u2019ll mention that the content snippet can include almost anything you\u2019d like using the variables provided by IFTTT as well as a reasonable variety of HTML. I\u2019ve used it to add things like <blockquotes> for annotations and even <audio> tags for making listen posts or bookmarking audio with Huffduffer!\nThe following snippet tells your site what kind of content it\u2019s receiving. Unless you\u2019re doing something more exotic than bookmarks, likes, favorites, replies, or most post kinds\u00a0(except maybe events), you\u2019ll want to use the h-entry snippet as follows:\n&h=entry\nIf you\u2019d like your post to contain a formal title, then you\u2019ll want to include the following code snippet. Generally with shorter content like notes/status updates, bookmarks, reads, likes, etc., I follow the practice of publishing titleless posts when they\u2019re not required, so I personally skip this piece in most of my posts, but some may wish to include it.\n&name=<<<{{Title}}>>>\nTo have your website create or use the correct category or tag taxonomies on your posts, you\u2019ll want to have something similar to the following snippet. If you want to specify more than one category, just string them together with ampersands. If your category/tag has a blank space in it you can replace the spaces with %20. The Micropub server on your site should automatically check to see if you have categories or tags that match what is sent, otherwise it will create a new tag(s).\n&category[]=Bookmark&category[]=Social%20Stream\nI\u2019ve found that in practice, some silos that allow for multiple tags will actually publish them via micropub using something along the lines of the following if the\u00a0 appropriate variables on IFTTT exist. In these cases, I append this to the other categories and tags I want to specify.\n&category[]=<<<{{Tags}}>>>\nIf you\u2019re using your Pocket account to send your bookmarked articles to read later, you\u2019ll want to create a bookmark with the following line:\n&bookmark-of=<<<{{EntryUrl}}>>>\nAlternatively, if you were using your Pocket account to archive your articles once you\u2019ve actually read them, you could have IFTTT post these archived items as \u201creads\u201d to your site by choosing the \u201cNew Item Archived\u201d element in the Pocket portion of the IF set up process. Here you\u2019d replace the above bookmark-of line with the following:\n&read-of=<<<{{EntryUrl}}>>>\nIf you were creating different sorts of posts you might also use the appropriate alternate verbiage: like-of, watch-of, listen-of, rsvp, etc. (find details for the appropriate mark up on the IndieWeb wiki or the correct microformats v2 property within the code for the Post Kinds plugin). If you are using the Post Kinds plugin, this is the piece of data that it receives to specify the correct post kind and create the reply context for your post and will likely preclude you from needing to send any data in the content portion (above) unless the services applet will let you send additional commentary or notes that you want to appear in the body of your post.\nNext, if your site supports syndication links with a plugin like Syndication Links for WordPress, you would use the following line of code so that those are set and saved properly. (This presumes that the URL specified is the permalink of the content on the social silo. I\u2019ll note that Pocket doesn\u2019t provide these (easily) as most of their links are canonical ones for the original content, so I don\u2019t use this on my IFTTT recipe for my Pocket workflow, but I do use it for others like Huffduffer and Reading.am. It conveniently allows me to find copies of my content elsewhere on the web.)\n&syndication=<<<{{EntryUrl}}>>>\nIf you\u2019d like to have the timestamp on your post match the time when you actually bookmarked the item in Pocket, you\u2019ll need to add the following line of code. Without this line, the publication time will match the time of the Webhook action, which for most IFTTT things can be a delay of a minute or two up to an hour or more afterwards. In practice, I\u2019ve noticed that most content posts to my website within about 10-15 minutes of the original, and this is based on the polling lag within IFTTT checking your triggers. (Sadly, I\u2019ll report that I\u2019ve never gotten this code snippet to work for me in practice, and I suspect it may be because the time format from IFTTT doesn\u2019t match what is expected by the Micropub server on my website. Perhaps David Shanske or Ryan Barrett may have a more specific idea about what\u2019s causing this or suggest a fix? I\u2019ll try to dig into it shortly if I can. As a result, I generally have left this snippet of code off of my triggers and they\u2019ve worked fine as a result. Until this issue might be fixed, if you want to have the exact timestamp, you could alternately include the data, if provided, in the content section instead and then copy it over manually after-the-fact.)\n&published=<<<{{EntryPublished}}>>>\nIf you\u2019ve got syndication endpoints set up properly with something like the Syndication Links plugin, you can use the following sort of code snippet. I generally eschew this and prefer to save my posts as drafts for potential modification prior to publishing publicly, but others may have different needs, so I\u2019m including the option for relative completeness so people can experiment with it if they like.\n&mp-syndicate-to[]=twitter-bridgy\nThis concludes the list of things that might commonly be included in the Body portion of the IFTTT applet. Tying these all together for combination in the Post Kinds Plugin one would want something along the lines of :\nBody:\u00a0access_token=AccessTokenHere&content=<<<{{EntryTitle}}\n {{EntryPublished}}>>>&h=entry&category[]=Bookmark&category[]=Social%20Stream&bookmark-of=<<<{{EntryUrl}}>>>\nHere\u2019s another example of the code I use in conjunction with a similar applet for Diigo, a bookmarking service. The \u201cDescription\u201d portion allows me to add a note or comment on the bookmark when I make it and that note is transported over to the post on my website as well.\nBody: access_token=AccessTokenHere&content=<<<{{Description}}>>>&h=entry&category[]=Bookmark&category[]=Social%20Stream&category[]=<<<{{Tags}}>>>&bookmark-of=<<<{{Url}}>>>\nNote that when the string of commands is done, you do not need to have a trailing ampersand. Most of the examples I\u2019ve used are from the Pocket set up within IFTTT, but keep in mind that other services on the platform may use alternate variable names (the portion in the braces {{}}). The differences may be subtle, but they are important so be careful not to use {{EntryTitle}} if your specific recipe expects {{Title}}.\nTo finish off making your new applet, click on the \u201cCreate Action\u201d button. (If necessary, you can test the applet and come back to modify it later.)\nFinally, give your applet an appropriate tile and click the \u201cFinish\u201d button. For my Pocket applet I\u2019ve used the name \u201cPocket bookmark PESOS Micropub to WordPress\u201d.\n\nNow that your applet is finished, give it a whirl and see if it works the way you expect! Don\u2019t feel discouraged if you run into issues, but try experimenting a bit to see if you can get the results you\u2019d like to see on your website. You can always go back to your applet recipe and modify it if necessary.\nConclusion\nHopefully everyone has as much fun as I\u2019ve had using this workflow to post to their websites. It may take some patience and experimentation to get things the way you\u2019d like to have them, but you\u2019re likely to be able to post more easily in the future. This will also let you own your data as you create it while still interacting with your friends and colleagues online.\nI know that it may be possible to use other services like Zapier, Integromat, Automate.io, or other similar services instead of IFTTT though some of these may require paid accounts. I\u2019d love to see what sorts of things people come up with for using this method for owning their own data. Can you think of other services that provide webhooks for potential use in combination with Micropub? (Incidentally, if this is your first foray into the Micropub space, be sure to check out the wealth of free Micropub clients you can use to publish directly to your website without all of the set up and code I\u2019ve outlined above!)\nCurrently I\u2019m using similar workflows to own my data from social services including Pocket, Diigo, Huffduffer, Reading.am, YouTube, Meetup/Google Calendar, and Hypothes.is. I\u2019ve got several more planned shortly as well.\nThanks once again to Charlotte Allen and subsequently Jan-Lukas Else for the idea of using Micropub this way. Their initial documentation was invaluable to me and others are sure to find it useful. Charlotte has some examples for use with Facebook and Instagram and Jan-Lukas\u2019 example may be especially helpful for those not using WordPress-specific solutions.\nAnd as always, a big thank you to the entire IndieWeb community for continuing to hack away at making the web such a fun and vibrant space by making the small building blocks that make all of the above and so much more possible.\n\n\nSyndicated copies: WordPress icon\n Twitter icon\n Mastodon icon\n <?xml version=\"1.0\" encoding=\"utf-8\">\n\nIndieWebCamp Icon",
"html": "<h2>Introduction</h2>\n<p>What follows may tend toward the jargon-y end of programming, but I\u2019ll endeavor to explain it all and go step-by-step to allow those with little or no programming experience to follow along and use the tools I\u2019m describing in a very powerful way.\u00a0 I\u2019ll do my best to link the jargon to definitions and examples for those who haven\u2019t run across them before. Hopefully with a bit of explanation, the ability to cut and paste some code, or even make some basic modifications, you\u2019ll be able to do what I and others have done, but without having to puzzle it all out from scratch.</p>\n<p>Most readers are sure to be aware of the ubiquitous \u201cshare\u201d buttons that appear all over the web. Some of the most common are \u201cshare to Facebook\u201d or \u201cshare to Twitter\u201d. In my examples that follow, I\u2019m doing roughly the same thing, but I\u2019m using technology called webhooks and micropub to be able to share not just a URL or web address, but a variety of other very specific data in a specific way to my website.</p>\n<p>This \u201cshare\u201d\u2013while a little more complicated\u2013gives me a lot more direct control over the data I\u2019m sending and how it will be seen on my website. I would hope that one day more social websites will have built in share buttons that allow for direct micropub integration so that instead of only sharing to corporate sites like Facebook, Twitter, et al. they\u2019ll let people share directly to their own personal websites where they can better control their online identity and data. What I\u2019m describing below is hopefully a temporary band-aid that allows me to keep using common social services like Pocket, YouTube, Meetup, Goodreads, Letterboxd, Diigo, Huffduffer, Reading.am, Hypothes.is, and hundreds of others but to also post the content to my site so that I own and control more of my own online data.</p>\n<h3>An example using Pocket</h3>\n<p>Following in the footsteps of <a href=\"https://charlotteallen.info/2019/12/23/pesos-for-pocket/\">Charlotte Allen</a> and <a href=\"https://jlelse.blog/dev/pesos-pocket/\">Jan-Lukas Else</a>, I\u2019ve been tinkering around with improving some of my syndication workflows for a number of social silos including <a href=\"https://app.getpocket.com/\">Pocket</a>, a social <a href=\"https://indieweb.org/silo\">silo</a> that focuses on bookmarking material to read later.</p>\n<p>I have long used <a href=\"https://ifttt.com/\">IFTTT</a> (aka If This, Then That), a free and relatively simple web service that allows one to create applets that tie a large number of web-based and social services together, to send data from my Pocket account to my WordPress-based website. I\u2019d done this using my Pocket RSS feed to create WordPress draft posts that I could then modify if necessary and publish publicly if I desired. Since I regularly use a number of <a href=\"https://indieweb.org/Micropub/Clients\">Micropub clients</a> in conjunction with the WordPress <a href=\"https://wordpress.org/plugins/micropub/\">Micropub plugin</a> and IFTTT supports <a href=\"https://indieweb.org/webhook\">webhooks</a>, I thought I\u2019d try that out as a separate process to provide a bit less <a href=\"https://indieweb.org/manual_until_it_hurts\">manual pain</a> in mapping the data for posts to appear like I want them to on my website.\u00a0</p>\n<p>Now I can use my Pocket account data and map most of it directly to the appropriate data fields on my website. Because Pocket has direct integration into IFTTT, I can actually get more data (particularly tags) out of it than I could before from the simple RSS feed.</p>\n<p>Below, you\u2019ll find what I\u2019ve done with a quick walk through and some example code snippets. I\u2019ll break some of it down into pieces as I go, and then provide a specific exemplar of some of the code properly strung together at the end. I\u2019ll also note that this general procedure can be used with a variety of other silos (and either their integrated data or RSS feeds) within IFTTT to post data to your website. Those running platforms other than WordPress may be able to use the basic recipe presented here with some small modifications, to send similar data from their accounts to their <a href=\"https://indieweb.org/Micropub/Servers#CMS_Software\">sites that support Micropub</a> as well.\u00a0</p>\n<h2>Directions for connecting IFTTT to publish to WordPress via Micropub</h2>\n<h3>Preliminaries</h3>\n<p>Install and activate the <a href=\"https://wordpress.org/plugins/micropub/\">Micropub plugin for WordPress</a>. This will give your website a server endpoint that IFTTT will use to authenticate and send data to your website on your behalf.</p>\n<p>If you don\u2019t already have it, install the <a href=\"https://wordpress.org/plugins/indieauth/\">IndieAuth plugin for WordPress</a> and activate it. This will allow you to generate an authorization token (think password) with the appropriate scopes (think permissions to do specific actions on your website) to allow IFTTT to securely post to your website.\u00a0</p>\n<p>Within the WordPress administrative interface/dashboard go to <code>Users >> Mange Tokens</code> or go to the path <code>/wp-admin/users.php?page=indieauth_user_token</code> on your website.\u00a0</p>\n<p>At the bottom of that page under the section \u201cAdd Token\u201d add a convenient name for your new token. You\u2019ll see in the following screencapture that I\u2019ve used \u201cIFTTT for Webhooks\u201d. Next click the check boxes to add scopes for \u201ccreate\u201d and \u201cmedia\u201d. Finally click the \u201cAdd New Token\u201d button.</p>\n<p><img src=\"https://i2.wp.com/boffosocko.com/wp-content/uploads/2020/01/add-token.png?resize=660%2C472&ssl=1\" alt=\"Screencapture from the Add Token section of the User >> Manage Tokens page\" width=\"660\" height=\"472\" /></p>\n<img src=\"https://i2.wp.com/boffosocko.com/wp-content/uploads/2020/01/add-token.png?resize=660%2C472&ssl=1\" alt=\"Screencapture from the Add Token section of the User >> Manage Tokens page\" width=\"660\" height=\"472\" />\n<p>On the resulting page, copy the entirety of the returned access token in a safe place. You\u2019ll need this token later in the process and once you\u2019ve navigated away from the page, there\u2019s no way to retrieve the token again later. The same token can be used for multiple different recipes within IFTTT,\u00a0 though one could create a different token for each different recipe if desired.</p>\n<p>Sign up for an <a href=\"https://ifttt.com/\">IFTTT</a> account (if you don\u2019t already have one).\u00a0</p>\n<p><a href=\"https://ifttt.com/pocket\">Register Pocket</a> as a service you can use within IFTTT.</p>\n<h3>The IFTTT Applet</h3>\n<p>In your IFTTT.com account, <a href=\"https://ifttt.com/create\">create a new applet</a>.</p>\n<p><img src=\"https://i0.wp.com/boffosocko.com/wp-content/uploads/2020/01/Create-your-own.png?resize=660%2C238&ssl=1\" alt=\"Screenshot of the "If This Then That" recipe start with "This" highlighted\" width=\"660\" height=\"238\" /></p>\n<img src=\"https://i0.wp.com/boffosocko.com/wp-content/uploads/2020/01/Create-your-own.png?resize=660%2C238&ssl=1\" alt=\"Screenshot of the "If This Then That" recipe start with "This" highlighted\" width=\"660\" height=\"238\" />\n<p>For the \u201cif\u201d part of the applet, search for and choose the Pocket application.</p>\n<p><img src=\"https://i0.wp.com/boffosocko.com/wp-content/uploads/2020/01/Choose-Pocket.png?resize=660%2C537&ssl=1\" alt=\"Screenshot of a search for "Pocket"\" width=\"660\" height=\"537\" /></p>\n<img src=\"https://i0.wp.com/boffosocko.com/wp-content/uploads/2020/01/Choose-Pocket.png?resize=660%2C537&ssl=1\" alt=\"Screenshot of a search for "Pocket"\" width=\"660\" height=\"537\" />\n<p>Choose the trigger \u201cAny new item\u201d (other triggers could be chosen for different combinations of actions).</p>\n<p>Click the \u201cthen\u201d part of the applet, and search for and chose the Webhooks application.</p>\n<p><img src=\"https://i1.wp.com/boffosocko.com/wp-content/uploads/2020/01/Choose-Webhooks.png?resize=660%2C506&ssl=1\" alt=\"Screenshot of the "That" portion with a search for Webhooks\" width=\"660\" height=\"506\" /></p>\n<img src=\"https://i1.wp.com/boffosocko.com/wp-content/uploads/2020/01/Choose-Webhooks.png?resize=660%2C506&ssl=1\" alt=\"Screenshot of the "That" portion with a search for Webhooks\" width=\"660\" height=\"506\" />\n<p>Choose the \u201cMake a web request\u201d option (currently the only option on the page).</p>\n<p><img src=\"https://i2.wp.com/boffosocko.com/wp-content/uploads/2020/01/Make-a-web-request.png?resize=660%2C635&ssl=1\" alt=\"\" width=\"660\" height=\"635\" /></p>\n<img src=\"https://i2.wp.com/boffosocko.com/wp-content/uploads/2020/01/Make-a-web-request.png?resize=660%2C635&ssl=1\" alt=\"\" width=\"660\" height=\"635\" />\n<p>Next we\u2019ll fill in the action fields.</p>\n<p><img src=\"https://i1.wp.com/boffosocko.com/wp-content/uploads/2020/01/IFTTT-Complete-action-fields.png?resize=576%2C833&ssl=1\" alt=\"Screencapture of the Complete Action Fields step\" width=\"576\" height=\"833\" /></p>\n<img src=\"https://i1.wp.com/boffosocko.com/wp-content/uploads/2020/01/IFTTT-Complete-action-fields.png?resize=576%2C833&ssl=1\" alt=\"Screencapture of the Complete Action Fields step\" width=\"576\" height=\"833\" />\n<p>\u00a0</p>\n<p>Fill in the four action fields with the following values, with the appropriate modifications as necessary:</p>\n<pre><strong>URL:</strong> <code>https://www.example.com/wp-json/micropub/1.0/endpoint</code></pre>\n<p>Be sure to change <code>example.com</code> to the appropriate URL for <em>your</em> website. If you\u2019re using a platform that isn\u2019t WordPress in combination with the Micropub plugin, you can quickly find your appropriate endpoint by looking at your homepage\u2019s source for a <code><link></code> element with a <code>rel=\"micropub\"</code> attribute.</p>\n<pre><strong>Method:</strong> <code>POST</code></pre>\n<pre><strong>Content Type:</strong> <code>application/x-www-form-urlencoded</code></pre>\n<p>More advanced users might experiment with other content types, but this will naturally require different data and formatting in the <code>Body</code> section.</p>\n<pre><strong>Body:\u00a0</strong></pre>\n<p>The <code>Body</code> portion is one of the most complicated portions of the operation, because this is where you can get creative in how you fill this out and the end results you end up with on your website. You can use the available variables in the recipe to custom create almost anything you like and some services will give you a tremendous amount of flexibility. I\u2019ll walk through a handful of the most common options and then tie them all together at the end. Ultimately the <code>Body</code> will be a string of various commands that indicate the data you want to send to your website and all of those commands will be strung together with an ampersand character (\u201c<code>&</code>\u201c) between each of them.</p>\n<p>There are some small differences you may want to experiment with in terms of what you put in the <code>Body</code> field based on whether or not you\u2019re using the <a href=\"https://wordpress.org/plugins/indieweb-post-kinds/\">Post Kinds plugin</a> to create your posts and <a href=\"https://indieweb.org/reply-context\">reply contexts</a> or if you\u2019re not.\u00a0</p>\n<p>Depending on which pieces you choose, I recommend doing a few test runs for your applets to make sure that they work the way you expect them to. (The Micropub plugin has a setting to mark incoming posts automatically as drafts, so you\u2019re not spamming your readers while you\u2019re testing options if you\u2019re testing this on a live site.) Sometimes formatting issues (particularly with setting a publish time) may cause the post to fail. In these cases, experiment to find and excise the offending code and see if you can get things working with minimal examples before adding additional data/details.</p>\n<p>For those who would like to get into more advanced territory with the programming and methods, I recommend looking at the <a href=\"https://www.w3.org/TR/micropub/#vocabulary\">W3C\u2019s Webmention specification</a>.\u00a0</p>\n<p>The first thing you\u2019ll want in the <code>Body</code> will be your access token. This is similar to a password that allows the webhook to publish from IFTTT to your website. You\u2019ll want a line that reads as follows with the <code>AccessTokenHere</code>\u00a0replaced with the access token from your token provider which you created earlier and saved. You\u2019ll want to keep this secret because it acts like a password for allowing remote applications to post to your website.</p>\n<pre><code>access_token=AcessTokenHere</code></pre>\n<p>Next will come the content you want to be published to your site.</p>\n<pre><code>&content=<<<{{EntryTitle}}<br></code><code>{{EntryPublished}}>>></code></pre>\n<p>I\u2019ll mention that the content snippet can include almost anything you\u2019d like using the variables provided by IFTTT as well as a reasonable variety of HTML. I\u2019ve used it to add things like <code><blockquotes></code> for annotations and even <code><audio></code> tags for making listen posts or bookmarking audio with Huffduffer!</p>\n<p>The following snippet tells your site what kind of content it\u2019s receiving. Unless you\u2019re doing something more exotic than bookmarks, likes, favorites, replies, or most <a href=\"https://indieweb.org/posts#Types_of_Posts\">post kinds</a>\u00a0(except maybe events), you\u2019ll want to use the <code>h-entry</code> snippet as follows:</p>\n<pre><code>&h=entry</code></pre>\n<p>If you\u2019d like your post to contain a formal title, then you\u2019ll want to include the following code snippet. Generally with shorter content like notes/status updates, bookmarks, reads, likes, etc., I follow the practice of publishing titleless posts when they\u2019re not required, so I personally skip this piece in most of my posts, but some may wish to include it.</p>\n<pre><code>&name=<<<{{Title}}>>></code></pre>\n<p>To have your website create or use the correct category or tag taxonomies on your posts, you\u2019ll want to have something similar to the following snippet. If you want to specify more than one category, just string them together with ampersands. If your category/tag has a blank space in it you can replace the spaces with <code>%20</code>. The Micropub server on your site should automatically check to see if you have categories or tags that match what is sent, otherwise it will create a new tag(s).</p>\n<pre><code>&category[]=Bookmark&category[]=Social%20Stream</code></pre>\n<p>I\u2019ve found that in practice, some silos that allow for multiple tags will actually publish them via micropub using something along the lines of the following if the\u00a0 appropriate variables on IFTTT exist. In these cases, I append this to the other categories and tags I want to specify.</p>\n<pre><code>&category[]=<<<{{Tags}}>>></code></pre>\n<p>If you\u2019re using your Pocket account to send your bookmarked articles to read later, you\u2019ll want to create a bookmark with the following line:</p>\n<pre><code>&bookmark-of=<<<{{EntryUrl}}>>></code></pre>\n<p>Alternatively, if you were using your Pocket account to archive your articles once you\u2019ve actually read them, you could have IFTTT post these archived items as \u201creads\u201d to your site by choosing the \u201cNew Item Archived\u201d element in the Pocket portion of the IF set up process. Here you\u2019d replace the above <code>bookmark-of</code> line with the following:</p>\n<pre><code>&read-of=<<<{{EntryUrl}}>>></code></pre>\n<p>If you were creating different sorts of posts you might also use the appropriate alternate verbiage: <code>like-of</code>, <code>watch-of</code>, <code>listen-of</code>, <code>rsvp</code>, etc. (find details for the <a href=\"https://indieweb.org/posts#Types_of_Posts\">appropriate mark up on the IndieWeb wiki</a> or the correct microformats v2 property <a href=\"https://github.com/dshanske/indieweb-post-kinds/blob/6747df2434d6718134ac3726a7126cd5d0524b01/includes/class-kind-taxonomy.php#L693\">within the code for the Post Kinds plugin</a>). If you are using the Post Kinds plugin, this is the piece of data that it receives to specify the correct post kind and create the reply context for your post and will likely preclude you from needing to send any data in the content portion (above) unless the services applet will let you send additional commentary or notes that you want to appear in the body of your post.</p>\n<p>Next, if your site supports syndication links with a plugin like <a href=\"https://wordpress.org/plugins/syndication-links/\">Syndication Links for WordPress</a>, you would use the following line of code so that those are set and saved properly. (This presumes that the URL specified is the permalink of the content on the social silo. I\u2019ll note that Pocket doesn\u2019t provide these (easily) as most of their links are canonical ones for the original content, so I don\u2019t use this on my IFTTT recipe for my Pocket workflow, but I do use it for others like Huffduffer and Reading.am. It conveniently allows me to find copies of my content elsewhere on the web.)</p>\n<pre><code>&syndication=<<<{{EntryUrl}}>>></code></pre>\n<p>If you\u2019d like to have the timestamp on your post match the time when you actually bookmarked the item in Pocket, you\u2019ll need to add the following line of code. Without this line, the publication time will match the time of the Webhook action, which for most IFTTT things can be a delay of a minute or two up to an hour or more afterwards. In practice, I\u2019ve noticed that most content posts to my website within about 10-15 minutes of the original, and this is based on the polling lag within IFTTT checking your triggers. (Sadly, I\u2019ll report that I\u2019ve never gotten this code snippet to work for me in practice, and I suspect it may be because the time format from IFTTT doesn\u2019t match what is expected by the Micropub server on my website. Perhaps <a class=\"h-card u-category\" href=\"https://david.shanske.com/\">David Shanske</a> or <a class=\"h-card u-category\" href=\"https://snarfed.org/\">Ryan Barrett</a> may have a more specific idea about what\u2019s causing this or suggest a fix? I\u2019ll try to dig into it shortly if I can. As a result, I generally have left this snippet of code off of my triggers and they\u2019ve worked fine as a result. Until this issue might be fixed, if you want to have the exact timestamp, you could alternately include the data, if provided, in the content section instead and then copy it over manually after-the-fact.)</p>\n<pre><code>&published=<<<{{EntryPublished}}>>></code></pre>\n<p>If you\u2019ve got syndication endpoints set up properly with something like the Syndication Links plugin, you can use the following sort of code snippet. I generally eschew this and prefer to save my posts as drafts for potential modification prior to publishing publicly, but others may have different needs, so I\u2019m including the option for relative completeness so people can experiment with it if they like.</p>\n<pre><code>&mp-syndicate-to[]=twitter-bridgy</code></pre>\n<p>This concludes the list of things that might commonly be included in the <code>Body</code> portion of the IFTTT applet. Tying these all together for combination in the Post Kinds Plugin one would want something along the lines of :</p>\n<pre><strong>Body:\u00a0</strong><code>access_token=AccessTokenHere&content=<<<{{EntryTitle}}<br></code> <code>{{EntryPublished}}>>>&h=entry&category[]=Bookmark&category[]=Social%20Stream&bookmark-of=<<<{{EntryUrl}}>>></code></pre>\n<p>Here\u2019s another example of the code I use in conjunction with a similar applet for Diigo, a bookmarking service. The \u201cDescription\u201d portion allows me to add a note or comment on the bookmark when I make it and that note is transported over to the post on my website as well.</p>\n<pre><strong>Body:</strong> <code>access_token=AccessTokenHere&content=<<<{{Description}}>>>&h=entry&category[]=Bookmark&category[]=Social%20Stream&category[]=<<<{{Tags}}>>>&bookmark-of=<<<{{Url}}>>></code></pre>\n<p>Note that when the string of commands is done, you do not need to have a trailing ampersand. Most of the examples I\u2019ve used are from the Pocket set up within IFTTT, but keep in mind that other services on the platform may use alternate variable names (the portion in the braces <code>{{}}</code>). The differences may be subtle, but they are important so be careful not to use <code>{{EntryTitle}}</code> if your specific recipe expects <code>{{Title}}</code>.</p>\n<p>To finish off making your new applet, click on the \u201cCreate Action\u201d button. (If necessary, you can test the applet and come back to modify it later.)</p>\n<p>Finally, give your applet an appropriate tile and click the \u201cFinish\u201d button. For my Pocket applet I\u2019ve used the name \u201cPocket bookmark PESOS Micropub to WordPress\u201d.</p>\n<p><img src=\"https://i0.wp.com/boffosocko.com/wp-content/uploads/2020/01/IFTTT-Review-and-Finish.png?resize=568%2C829&ssl=1\" alt=\"Screencapture of the Review and Finish page on IFTTT\" width=\"568\" height=\"829\" /></p>\n<img src=\"https://i0.wp.com/boffosocko.com/wp-content/uploads/2020/01/IFTTT-Review-and-Finish.png?resize=568%2C829&ssl=1\" alt=\"Screencapture of the Review and Finish page on IFTTT\" width=\"568\" height=\"829\" />\n<p>Now that your applet is finished, give it a whirl and see if it works the way you expect! Don\u2019t feel discouraged if you run into issues, but try experimenting a bit to see if you can get the results you\u2019d like to see on your website. You can always go back to your applet recipe and modify it if necessary.</p>\n<h2>Conclusion</h2>\n<p>Hopefully everyone has as much fun as I\u2019ve had using this workflow to post to their websites. It may take some patience and experimentation to get things the way you\u2019d like to have them, but you\u2019re likely to be able to post more easily in the future. This will also let you own your data as you create it while still interacting with your friends and colleagues online.</p>\n<p>I know that it may be possible to use other services like Zapier, Integromat, Automate.io, or other similar services instead of IFTTT though some of these may require paid accounts. I\u2019d love to see what sorts of things people come up with for using this method for owning their own data. Can you think of other services that provide webhooks for potential use in combination with Micropub? (Incidentally, if this is your first foray into the Micropub space, be sure to check out the wealth of free <a href=\"https://indieweb.org/Micropub/Clients\">Micropub clients</a> you can use to publish directly to your website without all of the set up and code I\u2019ve outlined above!)</p>\n<p>Currently I\u2019m using similar workflows to own my data from social services including Pocket, Diigo, Huffduffer, Reading.am, YouTube, Meetup/Google Calendar, and Hypothes.is. I\u2019ve got several more planned shortly as well.</p>\n<p>Thanks once again to Charlotte Allen and subsequently Jan-Lukas Else for the idea of using Micropub this way. Their initial documentation was invaluable to me and others are sure to find it useful. Charlotte has some examples for use with Facebook and Instagram and Jan-Lukas\u2019 example may be especially helpful for those not using WordPress-specific solutions.</p>\n<p>And as always, a big thank you to the entire <a href=\"https://indieweb.org/\">IndieWeb community</a> for continuing to hack away at making the web such a fun and vibrant space by making the small building blocks that make all of the above and so much more possible.</p>\n\n\n<span>Syndicated copies:</span><ul><li><a class=\"u-syndication\" href=\"https://chrisaldrich.wordpress.com/?p=55687499\"> <span style=\"max-width:1rem;margin:2px;\" title=\"WordPress\">WordPress icon</span></a></li>\n<li><a class=\"u-syndication\" href=\"https://twitter.com/ChrisAldrich/status/1219710303128080384\"> <span style=\"max-width:1rem;margin:2px;\" title=\"Twitter\">Twitter icon</span></a></li>\n<li><a class=\"u-syndication\" href=\"https://mastodon.social/@chrisaldrich/103523076022159428\"> <span style=\"max-width:1rem;margin:2px;\" title=\"Mastodon\">Mastodon icon</span></a></li>\n<li><a class=\"u-syndication\" href=\"https://news.indieweb.org/en\"> <span style=\"max-width:1rem;margin:2px;\" title=\"indieweb\"><?xml version=\"1.0\" encoding=\"utf-8\">\n\nIndieWebCamp Icon</span></a></li>\n<li><a class=\"u-syndication\" href=\"https://indieweb.xyz/en/indieweb\"> <span style=\"max-width:1rem;margin:2px;\" title=\"info\"></span></a></li>\n</ul>"
},
"author": {
"type": "card",
"name": "Chris Aldrich",
"url": "https://boffosocko.com/author/chrisaldrich/",
"photo": "https://secure.gravatar.com/avatar/d5fb4e498fe609cc29b04e5b7ad688c4?s=96&d=identicon&r=pg"
},
"post-type": "article",
"refs": {
"https://david.shanske.com/": {
"type": "card",
"name": "David Shanske",
"url": "https://david.shanske.com/",
"photo": null
},
"https://snarfed.org/": {
"type": "card",
"name": "Ryan Barrett",
"url": "https://snarfed.org/",
"photo": null
}
},
"_id": "8155426",
"_source": "2785"
}
it's almost as if you don't own any IoT in your homes; you're renting it and the license to use and contributing to mass waste.
it'd be amazing if you actually owned it and were able to use it as intended and get repairs on it
what a world
{
"type": "entry",
"published": "2020-01-21T19:59:59+00:00",
"url": "https://twitter.com/jackyalcine/status/1219711259186057216",
"content": {
"text": "it's almost as if you don't own any IoT in your homes; you're renting it and the license to use and contributing to mass waste.\n\nit'd be amazing if you actually owned it and were able to use it as intended and get repairs on it\n\nwhat a world"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"_id": "8154825",
"_source": "2773"
}
Using @IFTTT to syndicate (PESOS) content from social services to WordPress using Micropub
#IndieWeb #DoOO #WordPress
boffosocko.com/2020/01/21/usi…
{
"type": "entry",
"published": "2020-01-21T19:56:12+00:00",
"url": "https://twitter.com/ChrisAldrich/status/1219710303128080384",
"content": {
"text": "Using @IFTTT to syndicate (PESOS) content from social services to WordPress using Micropub\n#IndieWeb #DoOO #WordPress\nboffosocko.com/2020/01/21/usi\u2026",
"html": "Using <a href=\"https://twitter.com/IFTTT\">@IFTTT</a> to syndicate (PESOS) content from social services to WordPress using Micropub\n<a href=\"https://twitter.com/search?q=%23IndieWeb\">#IndieWeb</a> <a href=\"https://twitter.com/search?q=%23DoOO\">#DoOO</a> <a href=\"https://twitter.com/search?q=%23WordPress\">#WordPress</a>\n<a href=\"https://boffosocko.com/2020/01/21/using-ifttt-to-syndicate-pesos-content-from-social-services-to-wordpress-using-micropub/\">boffosocko.com/2020/01/21/usi\u2026</a>"
},
"author": {
"type": "card",
"name": "Chris Aldrich",
"url": "https://twitter.com/ChrisAldrich",
"photo": "https://pbs.twimg.com/profile_images/890299009381916672/CafdvvxN.jpg"
},
"post-type": "note",
"_id": "8154827",
"_source": "2773"
}
10 hours left but also Tamaki might end up being the winner if there's a tie b/c twitter.com/leyleydaboss/s…
Named my laptop `mkultra`. What should my primary user account name be?
{
"type": "entry",
"published": "2020-01-21T19:02:56+00:00",
"url": "https://twitter.com/jackyalcine/status/1219696899143286785",
"quotation-of": "https://twitter.com/jackyalcine/status/1219496852229246976",
"content": {
"text": "10 hours left but also Tamaki might end up being the winner if there's a tie b/c twitter.com/leyleydaboss/s\u2026",
"html": "10 hours left but also Tamaki might end up being the winner if there's a tie b/c <a href=\"https://twitter.com/leyleydaboss/status/1219616078080413697\">twitter.com/leyleydaboss/s\u2026</a>"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/jackyalcine/status/1219496852229246976": {
"type": "entry",
"published": "2020-01-21T05:48:01+00:00",
"url": "https://twitter.com/jackyalcine/status/1219496852229246976",
"content": {
"text": "Named my laptop `mkultra`. What should my primary user account name be?"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note"
}
},
"_id": "8153185",
"_source": "2773"
}
Lambda School is turning into a cult from the looks of it.
{
"type": "entry",
"published": "2020-01-21T18:43:48+00:00",
"url": "https://twitter.com/jackyalcine/status/1219692084732387328",
"content": {
"text": "Lambda School is turning into a cult from the looks of it."
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"_id": "8152679",
"_source": "2773"
}
OOMF: you're not as cute as I thought you'd be
Me:
{
"type": "entry",
"published": "2020-01-21T18:38:06+00:00",
"url": "https://twitter.com/jackyalcine/status/1219690649756110848",
"video": [
"https://video.twimg.com/tweet_video/EO02LbbU8AELlaA.mp4"
],
"content": {
"text": "OOMF: you're not as cute as I thought you'd be\nMe:"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "video",
"_id": "8152510",
"_source": "2773"
}
Yesterday my colleague called me a 'book murderer' because I cut long books in half to make them more portable. Does anyone else do this? Is it just me?
{
"type": "entry",
"published": "2020-01-21T18:37:00+00:00",
"url": "https://twitter.com/jackyalcine/status/1219690375155085312",
"quotation-of": "https://twitter.com/alex_christofi/status/1219564301029138432",
"content": {
"text": "smh"
},
"author": {
"type": "card",
"name": "have you seen what you liked, Jacky?",
"url": "https://twitter.com/jackyalcine",
"photo": "https://pbs.twimg.com/profile_images/1217457758863286273/jOe5WIo4.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/alex_christofi/status/1219564301029138432": {
"type": "entry",
"published": "2020-01-21T10:16:02+00:00",
"url": "https://twitter.com/alex_christofi/status/1219564301029138432",
"photo": [
"https://pbs.twimg.com/media/EOzDQnBXUAUtY4L.jpg"
],
"content": {
"text": "Yesterday my colleague called me a 'book murderer' because I cut long books in half to make them more portable. Does anyone else do this? Is it just me?"
},
"author": {
"type": "card",
"name": "Alex Christofi",
"url": "https://twitter.com/alex_christofi",
"photo": "https://pbs.twimg.com/profile_images/878283823817121792/67eBmLid.jpg"
},
"post-type": "photo"
}
},
"_id": "8152511",
"_source": "2773"
}