I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
I don't know of a PHP library for that. All this code does is take an
array (hard-coded just now) of service => username pairs, and extract
the data. Then it iterpolates it using the HTML template from the
YAML. Small piece of code suddenly has lots of services it can handle!
> I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since > I don't know of a PHP library for that. All this code does is take an > array (hard-coded just now) of service => username pairs, and extract > the data. Then it iterpolates it using the HTML template from the > YAML. Small piece of code suddenly has lots of services it can handle!
> > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since > > I don't know of a PHP library for that. All this code does is take an > > array (hard-coded just now) of service => username pairs, and extract > > the data. Then it iterpolates it using the HTML template from the > > YAML. Small piece of code suddenly has lots of services it can handle!
Big thanks to MT guys for most of the YAML (added last.fm stream,
edited flickr and youtube to display thumbnails) and all of the CSS/
icons and inspiration!
I hereby dual-license this plugin MIT and BSD (or compatible).
And, fancy de-duping!
Any scrapers that use HTML will not work. These seem to be for more
obscure sites.
Digg seems to block the wp_remote_fopen user agent. Blah.
To install, just untar in plugins/
Go to Users > Action Stream
If you have a url(s) (from standard or diso-profile enhanced profile)
that match a supported service, they are added automagically. You can
add more.
A preview of you actionstream is shown right on the page.
To add elsewhere the template tag is actionstream_render(); (you
can pass an optional userid or user name, and number of items to
display, default 10)
Enjoy!
On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > I don't know of a PHP library for that. All this code does is take an
> > > array (hard-coded just now) of service => username pairs, and extract
> > > the data. Then it iterpolates it using the HTML template from the
> > > YAML. Small piece of code suddenly has lots of services it can handle!
> Big thanks to MT guys for most of the YAML (added last.fm stream, > edited flickr and youtube to display thumbnails) and all of the CSS/ > icons and inspiration!
> I hereby dual-license this plugin MIT and BSD (or compatible).
> And, fancy de-duping!
> Any scrapers that use HTML will not work. These seem to be for more > obscure sites. > Digg seems to block the wp_remote_fopen user agent. Blah.
> To install, just untar in plugins/ > Go to Users > Action Stream
> If you have a url(s) (from standard or diso-profile enhanced profile) > that match a supported service, they are added automagically. You can > add more.
> A preview of you actionstream is shown right on the page.
> To add elsewhere the template tag is actionstream_render(); (you > can pass an optional userid or user name, and number of items to > display, default 10)
> Enjoy!
> On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote: >> Not yet -- right now it doesn't even cache the data -- WP integration >> is the next step
>> On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
>>> Wow, Stephen, this is great! I wish I had half your time for this >>> stuff. :-) Good work. Is this a WP plugin yet?
>>> On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> >>> wrote:
>>>> I've knocked up a basic implementation of action streams based on >>>> the >>>> MT YAML file and a PHP YAML parser.
>>>> I supports the XPATH and ATOM stuff, but not CSS selectors, etc, >>>> since >>>> I don't know of a PHP library for that. All this code does is >>>> take an >>>> array (hard-coded just now) of service => username pairs, and >>>> extract >>>> the data. Then it iterpolates it using the HTML template from the >>>> YAML. Small piece of code suddenly has lots of services it can >>>> handle!
> Big thanks to MT guys for most of the YAML (added last.fm stream,
> edited flickr and youtube to display thumbnails) and all of the CSS/
> icons and inspiration!
> I hereby dual-license this plugin MIT and BSD (or compatible).
> And, fancy de-duping!
> Any scrapers that use HTML will not work. These seem to be for more
> obscure sites.
> Digg seems to block the wp_remote_fopen user agent. Blah.
> To install, just untar in plugins/
> Go to Users > Action Stream
> If you have a url(s) (from standard or diso-profile enhanced profile)
> that match a supported service, they are added automagically. You can
> add more.
> A preview of you actionstream is shown right on the page.
> To add elsewhere the template tag is actionstream_render(); (you
> can pass an optional userid or user name, and number of items to
> display, default 10)
> Enjoy!
> On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > Not yet -- right now it doesn't even cache the data -- WP integration
> > is the next step
> > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > Wow, Stephen, this is great! I wish I had half your time for this
> > > stuff. :-) Good work. Is this a WP plugin yet?
> > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > I've knocked up a basic implementation of action streams based on the
> > > > MT YAML file and a PHP YAML parser.
> > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > I don't know of a PHP library for that. All this code does is take an
> > > > array (hard-coded just now) of service => username pairs, and extract
> > > > the data. Then it iterpolates it using the HTML template from the
> > > > YAML. Small piece of code suddenly has lots of services it can handle!
Thoughts on more de-duping. Right now it just de-dupes /inside/ a
service... but if someone adds their tumblr or something and has
twitter in tumblr, etc, you don't want the same update displaying
twice.
Can we safely just do something like:
$done = array();
foreach($items as $item)
if(in_array($item, $done)) continue;
? or do the other services often change it a fair bit? Should that
be handled by cleanup inline (ie, facebook adds 'is twittering' - but
twitter adds 'username: ' and that gets detected and removed, so the
other could be as well...)
I think either way, detected dupes should be handled as current
"dupes" are - output the node anyway, but hide it (for scrapers, they
see the whole lifestream with all nodes)
On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > Big thanks to MT guys for most of the YAML (added last.fm stream,
> > edited flickr and youtube to display thumbnails) and all of the CSS/
> > icons and inspiration!
> > I hereby dual-license this plugin MIT and BSD (or compatible).
> > And, fancy de-duping!
> > Any scrapers that use HTML will not work. These seem to be for more
> > obscure sites.
> > Digg seems to block the wp_remote_fopen user agent. Blah.
> > To install, just untar in plugins/
> > Go to Users > Action Stream
> > If you have a url(s) (from standard or diso-profile enhanced profile)
> > that match a supported service, they are added automagically. You can
> > add more.
> > A preview of you actionstream is shown right on the page.
> > To add elsewhere the template tag is actionstream_render(); (you
> > can pass an optional userid or user name, and number of items to
> > display, default 10)
> > Enjoy!
> > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > Not yet -- right now it doesn't even cache the data -- WP integration
> > > is the next step
> > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > Wow, Stephen, this is great! I wish I had half your time for this
> > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > I've knocked up a basic implementation of action streams based on the
> > > > > MT YAML file and a PHP YAML parser.
> > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > > I don't know of a PHP library for that. All this code does is take an
> > > > > array (hard-coded just now) of service => username pairs, and extract
> > > > > the data. Then it iterpolates it using the HTML template from the
> > > > > YAML. Small piece of code suddenly has lots of services it can handle!
I think de-duping will have to be more involved - prolly need to start
with the guid (in ATOM and some variants of RSS) as a basis, then
getting more esoteric from there.
On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> Thoughts on more de-duping. Right now it just de-dupes /inside/ a
> service... but if someone adds their tumblr or something and has
> twitter in tumblr, etc, you don't want the same update displaying
> twice.
> Can we safely just do something like:
> $done = array();
> foreach($items as $item)
> if(in_array($item, $done)) continue;
> ? or do the other services often change it a fair bit? Should that
> be handled by cleanup inline (ie, facebook adds 'is twittering' - but
> twitter adds 'username: ' and that gets detected and removed, so the
> other could be as well...)
> I think either way, detected dupes should be handled as current
> "dupes" are - output the node anyway, but hide it (for scrapers, they
> see the whole lifestream with all nodes)
> On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > I'd like to help out. You mentioned something about de-duping? Are you
> > already working on that?
> > Thanks,
> > Pras.
> > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > Big thanks to MT guys for most of the YAML (added last.fm stream,
> > > edited flickr and youtube to display thumbnails) and all of the CSS/
> > > icons and inspiration!
> > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > And, fancy de-duping!
> > > Any scrapers that use HTML will not work. These seem to be for more
> > > obscure sites.
> > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > To install, just untar in plugins/
> > > Go to Users > Action Stream
> > > If you have a url(s) (from standard or diso-profile enhanced profile)
> > > that match a supported service, they are added automagically. You can
> > > add more.
> > > A preview of you actionstream is shown right on the page.
> > > To add elsewhere the template tag is actionstream_render(); (you
> > > can pass an optional userid or user name, and number of items to
> > > display, default 10)
> > > Enjoy!
> > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > Not yet -- right now it doesn't even cache the data -- WP integration
> > > > is the next step
> > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > Wow, Stephen, this is great! I wish I had half your time for this
> > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > I've knocked up a basic implementation of action streams based on the
> > > > > > MT YAML file and a PHP YAML parser.
> > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > > > I don't know of a PHP library for that. All this code does is take an
> > > > > > array (hard-coded just now) of service => username pairs, and extract
> > > > > > the data. Then it iterpolates it using the HTML template from the
> > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
> Big thanks to MT guys for most of the YAML (added last.fm stream,
> edited flickr and youtube to display thumbnails) and all of the CSS/
> icons and inspiration!
> I hereby dual-license this plugin MIT and BSD (or compatible).
> And, fancy de-duping!
> Any scrapers that use HTML will not work. These seem to be for more
> obscure sites.
> Digg seems to block the wp_remote_fopen user agent. Blah.
> To install, just untar in plugins/
> Go to Users > Action Stream
> If you have a url(s) (from standard or diso-profile enhanced profile)
> that match a supported service, they are added automagically. You can
> add more.
> A preview of you actionstream is shown right on the page.
> To add elsewhere the template tag is actionstream_render(); (you
> can pass an optional userid or user name, and number of items to
> display, default 10)
> Enjoy!
> On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > Not yet -- right now it doesn't even cache the data -- WP integration
> > is the next step
> > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > Wow, Stephen, this is great! I wish I had half your time for this
> > > stuff. :-) Good work. Is this a WP plugin yet?
> > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > I've knocked up a basic implementation of action streams based on the
> > > > MT YAML file and a PHP YAML parser.
> > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > I don't know of a PHP library for that. All this code does is take an
> > > > array (hard-coded just now) of service => username pairs, and extract
> > > > the data. Then it iterpolates it using the HTML template from the
> > > > YAML. Small piece of code suddenly has lots of services it can handle!
I agree with Steve. It probably needs to start with some basic level
of guid matching (where available), but in a lot of cases where guid
is not available, or simply not preserved/changed, the deduping code
needs some form of similarity matching. Using some basic distance
calculation algos, deduping can be fairly accurate as the time-to-scan
is short (most aggregators will have sourced and syndicated the
content within hours of the original service).
-Pras
On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote:
> I think de-duping will have to be more involved - prolly need to start
> with the guid (in ATOM and some variants of RSS) as a basis, then
> getting more esoteric from there.
> On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > Thoughts on more de-duping. Right now it just de-dupes /inside/ a
> > service... but if someone adds their tumblr or something and has
> > twitter in tumblr, etc, you don't want the same update displaying
> > twice.
> > Can we safely just do something like:
> > $done = array();
> > foreach($items as $item)
> > if(in_array($item, $done)) continue;
> > ? or do the other services often change it a fair bit? Should that
> > be handled by cleanup inline (ie, facebook adds 'is twittering' - but
> > twitter adds 'username: ' and that gets detected and removed, so the
> > other could be as well...)
> > I think either way, detected dupes should be handled as current
> > "dupes" are - output the node anyway, but hide it (for scrapers, they
> > see the whole lifestream with all nodes)
> > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > I'd like to help out. You mentioned something about de-duping? Are you
> > > already working on that?
> > > Thanks,
> > > Pras.
> > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > Big thanks to MT guys for most of the YAML (added last.fm stream,
> > > > edited flickr and youtube to display thumbnails) and all of the CSS/
> > > > icons and inspiration!
> > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > And, fancy de-duping!
> > > > Any scrapers that use HTML will not work. These seem to be for more
> > > > obscure sites.
> > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > To install, just untar in plugins/
> > > > Go to Users > Action Stream
> > > > If you have a url(s) (from standard or diso-profile enhanced profile)
> > > > that match a supported service, they are added automagically. You can
> > > > add more.
> > > > A preview of you actionstream is shown right on the page.
> > > > To add elsewhere the template tag is actionstream_render(); (you
> > > > can pass an optional userid or user name, and number of items to
> > > > display, default 10)
> > > > Enjoy!
> > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > Not yet -- right now it doesn't even cache the data -- WP integration
> > > > > is the next step
> > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > Wow, Stephen, this is great! I wish I had half your time for this
> > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > I've knocked up a basic implementation of action streams based on the
> > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > > > > I don't know of a PHP library for that. All this code does is take an
> > > > > > > array (hard-coded just now) of service => username pairs, and extract
> > > > > > > the data. Then it iterpolates it using the HTML template from the
> > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
> > Big thanks to MT guys for most of the YAML (added last.fm stream,
> > edited flickr and youtube to display thumbnails) and all of the CSS/
> > icons and inspiration!
> > I hereby dual-license this plugin MIT and BSD (or compatible).
> > And, fancy de-duping!
> > Any scrapers that use HTML will not work. These seem to be for more
> > obscure sites.
> > Digg seems to block the wp_remote_fopen user agent. Blah.
> > To install, just untar in plugins/
> > Go to Users > Action Stream
> > If you have a url(s) (from standard or diso-profile enhanced profile)
> > that match a supported service, they are added automagically. You can
> > add more.
> > A preview of you actionstream is shown right on the page.
> > To add elsewhere the template tag is actionstream_render(); (you
> > can pass an optional userid or user name, and number of items to
> > display, default 10)
> > Enjoy!
> > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > Not yet -- right now it doesn't even cache the data -- WP integration
> > > is the next step
> > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > Wow, Stephen, this is great! I wish I had half your time for this
> > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > I've knocked up a basic implementation of action streams based on the
> > > > > MT YAML file and a PHP YAML parser.
> > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > > I don't know of a PHP library for that. All this code does is take an
> > > > > array (hard-coded just now) of service => username pairs, and extract
> > > > > the data. Then it iterpolates it using the HTML template from the
> > > > > YAML. Small piece of code suddenly has lots of services it can handle!
GUID done and done. the YAML has a field to specify 'identifier' (usually url, id on atom, guid on rss2, depends on the service) - this is hashed (sha1) and used as the database key. So if you bookmark the same thing in delicious and magnolia (for example) they wouldn't both show up.
Twitter settings just now use the atom ID - which is not likely to be the same as any id on tumblr or similar. That's where my pattern matching thought came in. Thoughts?
Pras has confirmed the polling bug. Fixed on my version, should be posted this evening.
A note about the YAML - if no URL is given in the action_streams section, the URL from the profile_services section is used and we autodetect RSS/ATOM with <link>s. My implementation supports rss2: similar to the atom: from the original (which I also support).
"What about editing that list of URLs? Where should one go to do that?" - Steve
Which list? You mean to remove a service, what do you do? Right now there is no way to do that (lazy me) - to change your username on a service just 'add' it again and it will overwrite.
On Mon, Mar 10, 2008 at 12:53 PM, Pras Sarkar <pras.sar...@gmail.com> wrote:
> I agree with Steve. It probably needs to start with some basic level > of guid matching (where available), but in a lot of cases where guid > is not available, or simply not preserved/changed, the deduping code > needs some form of similarity matching. Using some basic distance > calculation algos, deduping can be fairly accurate as the time-to-scan > is short (most aggregators will have sourced and syndicated the > content within hours of the original service).
> -Pras
> On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote: > > I think de-duping will have to be more involved - prolly need to start > > with the guid (in ATOM and some variants of RSS) as a basis, then > > getting more esoteric from there.
> > On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > > Thoughts on more de-duping. Right now it just de-dupes /inside/ a > > > service... but if someone adds their tumblr or something and has > > > twitter in tumblr, etc, you don't want the same update displaying > > > twice.
> > > ? or do the other services often change it a fair bit? Should that > > > be handled by cleanup inline (ie, facebook adds 'is twittering' - but > > > twitter adds 'username: ' and that gets detected and removed, so the > > > other could be as well...)
> > > I think either way, detected dupes should be handled as current > > > "dupes" are - output the node anyway, but hide it (for scrapers, they > > > see the whole lifestream with all nodes)
> > > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > > I'd like to help out. You mentioned something about de-duping? Are you > > > > already working on that?
> > > > Thanks,
> > > > Pras.
> > > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > > Big thanks to MT guys for most of the YAML (added last.fm stream, > > > > > edited flickr and youtube to display thumbnails) and all of the CSS/ > > > > > icons and inspiration!
> > > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > > And, fancy de-duping!
> > > > > Any scrapers that use HTML will not work. These seem to be for more > > > > > obscure sites. > > > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > > To install, just untar in plugins/ > > > > > Go to Users > Action Stream
> > > > > If you have a url(s) (from standard or diso-profile enhanced profile) > > > > > that match a supported service, they are added automagically. You can > > > > > add more.
> > > > > A preview of you actionstream is shown right on the page.
> > > > > To add elsewhere the template tag is actionstream_render(); (you > > > > > can pass an optional userid or user name, and number of items to > > > > > display, default 10)
> > > > > Enjoy!
> > > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > Not yet -- right now it doesn't even cache the data -- WP integration > > > > > > is the next step
> > > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > Wow, Stephen, this is great! I wish I had half your time for this > > > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > I've knocked up a basic implementation of action streams based on the > > > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since > > > > > > > > I don't know of a PHP library for that. All this code does is take an > > > > > > > > array (hard-coded just now) of service => username pairs, and extract > > > > > > > > the data. Then it iterpolates it using the HTML template from the > > > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
On Mar 10, 10:12 am, "Stephen Paul Weber" <singpol...@gmail.com>
wrote:
> section, the URL from the profile_services section is used and we
> autodetect RSS/ATOM with <link>s. My implementation supports rss2:
> similar to the atom: from the original (which I also support).
> "What about editing that list of URLs? Where should one go to do that?" - Steve
> Which list? You mean to remove a service, what do you do? Right now
> there is no way to do that (lazy me) - to change your username on a
> service just 'add' it again and it will overwrite.
What about using the XHTML Friends Network 'me' attribute to detect
the list of activitystream feeds? Give the plugin a single URL, and
that url can be spidered for 'me' links which describe my other
services. For instance if you use friendfeed, the services listed on
your home page have the 'me' attribute. Changes to the list of
services wouldn't be as immediate as managing a list in the plugin
since the plugin would have to check the given URL occasionally for
changes.
I've been playing with this idea and making graphs at:
http://donpark.org:3301/?url=http://donpark.org (its not accepting new URLs as the spider was going crazy but there is
enough data already to get the idea)
The graphs are inline SVG and Im using FF3b3, other browsers may have
trouble.
I currently support the diso-profile plugin and any services listed there. I could auto-spider the current user's profile url with sgapi -- not sure about the user experience of getting them to enter a URL to their profile when they are (presumably) on their own site. If people want it, it wouldn't be hard to do though :)
On Mon, Mar 10, 2008 at 1:41 PM, Don Park <don.p...@gmail.com> wrote:
> On Mar 10, 10:12 am, "Stephen Paul Weber" <singpol...@gmail.com> > wrote:
> > section, the URL from the profile_services section is used and we > > autodetect RSS/ATOM with <link>s. My implementation supports rss2: > > similar to the atom: from the original (which I also support).
> > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > Which list? You mean to remove a service, what do you do? Right now > > there is no way to do that (lazy me) - to change your username on a > > service just 'add' it again and it will overwrite.
> What about using the XHTML Friends Network 'me' attribute to detect > the list of activitystream feeds? Give the plugin a single URL, and > that url can be spidered for 'me' links which describe my other > services. For instance if you use friendfeed, the services listed on > your home page have the 'me' attribute. Changes to the list of > services wouldn't be as immediate as managing a list in the plugin > since the plugin would have to check the given URL occasionally for > changes.
> I've been playing with this idea and making graphs at: > http://donpark.org:3301/?url=http://donpark.org > (its not accepting new URLs as the spider was going crazy but there is > enough data already to get the idea) > The graphs are inline SVG and Im using FF3b3, other browsers may have > trouble.
I've been thinking about the profile and action streams plugins...
Both make use of "me" links and have different ways of storing them.
Why don't we change them both to use a new category of blogroll Link -
"My Sites" - all marked as "me" (or just filter on "me" links from the
blogroll, though i like the idea of making it explicit. Then the user
either uses the default link editor, or we hook into the links from a
new editor...
Thoughts?
On Mar 10, 10:50 am, "Stephen Paul Weber" <singpol...@gmail.com>
wrote:
> I currently support the diso-profile plugin and any services listed
> there. I could auto-spider the current user's profile url with sgapi
> -- not sure about the user experience of getting them to enter a URL
> to their profile when they are (presumably) on their own site. If
> people want it, it wouldn't be hard to do though :)
> On Mon, Mar 10, 2008 at 1:41 PM, Don Park <don.p...@gmail.com> wrote:
> > On Mar 10, 10:12 am, "Stephen Paul Weber" <singpol...@gmail.com>
> > wrote:
> > > section, the URL from the profile_services section is used and we
> > > autodetect RSS/ATOM with <link>s. My implementation supports rss2:
> > > similar to the atom: from the original (which I also support).
> > > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > > Which list? You mean to remove a service, what do you do? Right now
> > > there is no way to do that (lazy me) - to change your username on a
> > > service just 'add' it again and it will overwrite.
> > What about using the XHTML Friends Network 'me' attribute to detect
> > the list of activitystream feeds? Give the plugin a single URL, and
> > that url can be spidered for 'me' links which describe my other
> > services. For instance if you use friendfeed, the services listed on
> > your home page have the 'me' attribute. Changes to the list of
> > services wouldn't be as immediate as managing a list in the plugin
> > since the plugin would have to check the given URL occasionally for
> > changes.
> > I've been playing with this idea and making graphs at:
> > http://donpark.org:3301/?url=http://donpark.org > > (its not accepting new URLs as the spider was going crazy but there is
> > enough data already to get the idea)
> > The graphs are inline SVG and Im using FF3b3, other browsers may have
> > trouble.
The profile plugin (permissions) acutally supports this. The issue is that we need this data for more than one user. For actionstreams we could arguably limit it to just one user, but I haven't done that yet. for profiles we need rel=me data for /contacts/, not really for the blog owner at all, so we definitely need the data for more than one user.
Although caching this data is not a bad idea. At all. (Depending on WP-caching is not smart, even if sgapi requests are lightning-fast).
On Mon, Mar 10, 2008 at 4:01 PM, Steve Ivy <steve...@gmail.com> wrote:
> I've been thinking about the profile and action streams plugins... > Both make use of "me" links and have different ways of storing them. > Why don't we change them both to use a new category of blogroll Link - > "My Sites" - all marked as "me" (or just filter on "me" links from the > blogroll, though i like the idea of making it explicit. Then the user > either uses the default link editor, or we hook into the links from a > new editor...
> Thoughts?
> On Mar 10, 10:50 am, "Stephen Paul Weber" <singpol...@gmail.com> > wrote:
> > I currently support the diso-profile plugin and any services listed > > there. I could auto-spider the current user's profile url with sgapi > > -- not sure about the user experience of getting them to enter a URL > > to their profile when they are (presumably) on their own site. If > > people want it, it wouldn't be hard to do though :)
> > On Mon, Mar 10, 2008 at 1:41 PM, Don Park <don.p...@gmail.com> wrote:
> > > On Mar 10, 10:12 am, "Stephen Paul Weber" <singpol...@gmail.com> > > > wrote:
> > > > section, the URL from the profile_services section is used and we > > > > autodetect RSS/ATOM with <link>s. My implementation supports rss2: > > > > similar to the atom: from the original (which I also support).
> > > > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > > > Which list? You mean to remove a service, what do you do? Right now > > > > there is no way to do that (lazy me) - to change your username on a > > > > service just 'add' it again and it will overwrite.
> > > What about using the XHTML Friends Network 'me' attribute to detect > > > the list of activitystream feeds? Give the plugin a single URL, and > > > that url can be spidered for 'me' links which describe my other > > > services. For instance if you use friendfeed, the services listed on > > > your home page have the 'me' attribute. Changes to the list of > > > services wouldn't be as immediate as managing a list in the plugin > > > since the plugin would have to check the given URL occasionally for > > > changes.
> > > I've been playing with this idea and making graphs at: > > > http://donpark.org:3301/?url=http://donpark.org > > > (its not accepting new URLs as the spider was going crazy but there is > > > enough data already to get the idea) > > > The graphs are inline SVG and Im using FF3b3, other browsers may have > > > trouble.
> The profile plugin (permissions) acutally supports this. The issue is
> that we need this data for more than one user. For actionstreams we
> could arguably limit it to just one user, but I haven't done that yet.
> for profiles we need rel=me data for /contacts/, not really for the
> blog owner at all, so we definitely need the data for more than one
> user.
> Although caching this data is not a bad idea. At all. (Depending on
> WP-caching is not smart, even if sgapi requests are lightning-fast).
> On Mon, Mar 10, 2008 at 4:01 PM, Steve Ivy <steve...@gmail.com> wrote:
> > I've been thinking about the profile and action streams plugins...
> > Both make use of "me" links and have different ways of storing them.
> > Why don't we change them both to use a new category of blogroll Link -
> > "My Sites" - all marked as "me" (or just filter on "me" links from the
> > blogroll, though i like the idea of making it explicit. Then the user
> > either uses the default link editor, or we hook into the links from a
> > new editor...
> > Thoughts?
> > On Mar 10, 10:50 am, "Stephen Paul Weber" <singpol...@gmail.com>
> > wrote:
> > > I currently support the diso-profile plugin and any services listed
> > > there. I could auto-spider the current user's profile url with sgapi
> > > -- not sure about the user experience of getting them to enter a URL
> > > to their profile when they are (presumably) on their own site. If
> > > people want it, it wouldn't be hard to do though :)
> > > On Mon, Mar 10, 2008 at 1:41 PM, Don Park <don.p...@gmail.com> wrote:
> > > > On Mar 10, 10:12 am, "Stephen Paul Weber" <singpol...@gmail.com>
> > > > wrote:
> > > > > section, the URL from the profile_services section is used and we
> > > > > autodetect RSS/ATOM with <link>s. My implementation supports rss2:
> > > > > similar to the atom: from the original (which I also support).
> > > > > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > > > > Which list? You mean to remove a service, what do you do? Right now
> > > > > there is no way to do that (lazy me) - to change your username on a
> > > > > service just 'add' it again and it will overwrite.
> > > > What about using the XHTML Friends Network 'me' attribute to detect
> > > > the list of activitystream feeds? Give the plugin a single URL, and
> > > > that url can be spidered for 'me' links which describe my other
> > > > services. For instance if you use friendfeed, the services listed on
> > > > your home page have the 'me' attribute. Changes to the list of
> > > > services wouldn't be as immediate as managing a list in the plugin
> > > > since the plugin would have to check the given URL occasionally for
> > > > changes.
> > > > I've been playing with this idea and making graphs at:
> > > > http://donpark.org:3301/?url=http://donpark.org > > > > (its not accepting new URLs as the spider was going crazy but there is
> > > > enough data already to get the idea)
> > > > The graphs are inline SVG and Im using FF3b3, other browsers may have
> > > > trouble.
Tumblr support added (thanx Pras!) - polling bug fixed. I've uploaded 0.11 to the same URL as before. I should post about this on my blog, since so many others seem to be... heh
On Mon, Mar 10, 2008 at 1:12 PM, Stephen Paul Weber
<singpol...@gmail.com> wrote: > GUID done and done. the YAML has a field to specify 'identifier' > (usually url, id on atom, guid on rss2, depends on the service) - this > is hashed (sha1) and used as the database key. So if you bookmark the > same thing in delicious and magnolia (for example) they wouldn't both > show up.
> Twitter settings just now use the atom ID - which is not likely to be > the same as any id on tumblr or similar. That's where my pattern > matching thought came in. Thoughts?
> Pras has confirmed the polling bug. Fixed on my version, should be > posted this evening.
> A note about the YAML - if no URL is given in the action_streams > section, the URL from the profile_services section is used and we > autodetect RSS/ATOM with <link>s. My implementation supports rss2: > similar to the atom: from the original (which I also support).
> "What about editing that list of URLs? Where should one go to do that?" - Steve
> Which list? You mean to remove a service, what do you do? Right now > there is no way to do that (lazy me) - to change your username on a > service just 'add' it again and it will overwrite.
> List of available services? config.yaml
> Or something else?
> On Mon, Mar 10, 2008 at 12:53 PM, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > I agree with Steve. It probably needs to start with some basic level > > of guid matching (where available), but in a lot of cases where guid > > is not available, or simply not preserved/changed, the deduping code > > needs some form of similarity matching. Using some basic distance > > calculation algos, deduping can be fairly accurate as the time-to-scan > > is short (most aggregators will have sourced and syndicated the > > content within hours of the original service).
> > -Pras
> > On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote: > > > I think de-duping will have to be more involved - prolly need to start > > > with the guid (in ATOM and some variants of RSS) as a basis, then > > > getting more esoteric from there.
> > > On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > > > Thoughts on more de-duping. Right now it just de-dupes /inside/ a > > > > service... but if someone adds their tumblr or something and has > > > > twitter in tumblr, etc, you don't want the same update displaying > > > > twice.
> > > > ? or do the other services often change it a fair bit? Should that > > > > be handled by cleanup inline (ie, facebook adds 'is twittering' - but > > > > twitter adds 'username: ' and that gets detected and removed, so the > > > > other could be as well...)
> > > > I think either way, detected dupes should be handled as current > > > > "dupes" are - output the node anyway, but hide it (for scrapers, they > > > > see the whole lifestream with all nodes)
> > > > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > > > I'd like to help out. You mentioned something about de-duping? Are you > > > > > already working on that?
> > > > > Thanks,
> > > > > Pras.
> > > > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > Big thanks to MT guys for most of the YAML (added last.fm stream, > > > > > > edited flickr and youtube to display thumbnails) and all of the CSS/ > > > > > > icons and inspiration!
> > > > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > > > And, fancy de-duping!
> > > > > > Any scrapers that use HTML will not work. These seem to be for more > > > > > > obscure sites. > > > > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > > > To install, just untar in plugins/ > > > > > > Go to Users > Action Stream
> > > > > > If you have a url(s) (from standard or diso-profile enhanced profile) > > > > > > that match a supported service, they are added automagically. You can > > > > > > add more.
> > > > > > A preview of you actionstream is shown right on the page.
> > > > > > To add elsewhere the template tag is actionstream_render(); (you > > > > > > can pass an optional userid or user name, and number of items to > > > > > > display, default 10)
> > > > > > Enjoy!
> > > > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > > Not yet -- right now it doesn't even cache the data -- WP integration > > > > > > > is the next step
> > > > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > > Wow, Stephen, this is great! I wish I had half your time for this > > > > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > I've knocked up a basic implementation of action streams based on the > > > > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since > > > > > > > > > I don't know of a PHP library for that. All this code does is take an > > > > > > > > > array (hard-coded just now) of service => username pairs, and extract > > > > > > > > > the data. Then it iterpolates it using the HTML template from the > > > > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
> Tumblr support added (thanx Pras!) - polling bug fixed. I've uploaded
> 0.11 to the same URL as before. I should post about this on my blog,
> since so many others seem to be... heh
> On Mon, Mar 10, 2008 at 1:12 PM, Stephen Paul Weber
> <singpol...@gmail.com> wrote:
> > GUID done and done. the YAML has a field to specify 'identifier'
> > (usually url, id on atom, guid on rss2, depends on the service) - this
> > is hashed (sha1) and used as the database key. So if you bookmark the
> > same thing in delicious and magnolia (for example) they wouldn't both
> > show up.
> > Twitter settings just now use the atom ID - which is not likely to be
> > the same as any id on tumblr or similar. That's where my pattern
> > matching thought came in. Thoughts?
> > Pras has confirmed the polling bug. Fixed on my version, should be
> > posted this evening.
> > A note about the YAML - if no URL is given in the action_streams
> > section, the URL from the profile_services section is used and we
> > autodetect RSS/ATOM with <link>s. My implementation supports rss2:
> > similar to the atom: from the original (which I also support).
> > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > Which list? You mean to remove a service, what do you do? Right now
> > there is no way to do that (lazy me) - to change your username on a
> > service just 'add' it again and it will overwrite.
> > List of available services? config.yaml
> > Or something else?
> > On Mon, Mar 10, 2008 at 12:53 PM, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > I agree with Steve. It probably needs to start with some basic level
> > > of guid matching (where available), but in a lot of cases where guid
> > > is not available, or simply not preserved/changed, the deduping code
> > > needs some form of similarity matching. Using some basic distance
> > > calculation algos, deduping can be fairly accurate as the time-to-scan
> > > is short (most aggregators will have sourced and syndicated the
> > > content within hours of the original service).
> > > -Pras
> > > On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote:
> > > > I think de-duping will have to be more involved - prolly need to start
> > > > with the guid (in ATOM and some variants of RSS) as a basis, then
> > > > getting more esoteric from there.
> > > > On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > > > > Thoughts on more de-duping. Right now it just de-dupes /inside/ a
> > > > > service... but if someone adds their tumblr or something and has
> > > > > twitter in tumblr, etc, you don't want the same update displaying
> > > > > twice.
> > > > > ? or do the other services often change it a fair bit? Should that
> > > > > be handled by cleanup inline (ie, facebook adds 'is twittering' - but
> > > > > twitter adds 'username: ' and that gets detected and removed, so the
> > > > > other could be as well...)
> > > > > I think either way, detected dupes should be handled as current
> > > > > "dupes" are - output the node anyway, but hide it (for scrapers, they
> > > > > see the whole lifestream with all nodes)
> > > > > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > > > > I'd like to help out. You mentioned something about de-duping? Are you
> > > > > > already working on that?
> > > > > > Thanks,
> > > > > > Pras.
> > > > > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > Big thanks to MT guys for most of the YAML (added last.fm stream,
> > > > > > > edited flickr and youtube to display thumbnails) and all of the CSS/
> > > > > > > icons and inspiration!
> > > > > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > > > > And, fancy de-duping!
> > > > > > > Any scrapers that use HTML will not work. These seem to be for more
> > > > > > > obscure sites.
> > > > > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > > > > To install, just untar in plugins/
> > > > > > > Go to Users > Action Stream
> > > > > > > If you have a url(s) (from standard or diso-profile enhanced profile)
> > > > > > > that match a supported service, they are added automagically. You can
> > > > > > > add more.
> > > > > > > A preview of you actionstream is shown right on the page.
> > > > > > > To add elsewhere the template tag is actionstream_render(); (you
> > > > > > > can pass an optional userid or user name, and number of items to
> > > > > > > display, default 10)
> > > > > > > Enjoy!
> > > > > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > > > Not yet -- right now it doesn't even cache the data -- WP integration
> > > > > > > > is the next step
> > > > > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > > > Wow, Stephen, this is great! I wish I had half your time for this
> > > > > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > I've knocked up a basic implementation of action streams based on the
> > > > > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > > > > > > > I don't know of a PHP library for that. All this code does is take an
> > > > > > > > > > array (hard-coded just now) of service => username pairs, and extract
> > > > > > > > > > the data. Then it iterpolates it using the HTML template from the
> > > > > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
On Tue, Mar 11, 2008 at 11:02 AM, cesar dubo <cesard...@gmail.com> wrote:
> I get this error when entering to the actionstream under the users > menu:
> Warning: Invalid argument supplied for foreach() in /home/.filofax/ > newdisco/dubo.cl/wp-content/plugins/diso-actionstream/actionstream.php > on line 283
> On Mar 11, 1:13 am, "Stephen Paul Weber" <singpol...@gmail.com> wrote: > > Tumblr support added (thanx Pras!) - polling bug fixed. I've uploaded > > 0.11 to the same URL as before. I should post about this on my blog, > > since so many others seem to be... heh
> > On Mon, Mar 10, 2008 at 1:12 PM, Stephen Paul Weber
> > <singpol...@gmail.com> wrote: > > > GUID done and done. the YAML has a field to specify 'identifier' > > > (usually url, id on atom, guid on rss2, depends on the service) - this > > > is hashed (sha1) and used as the database key. So if you bookmark the > > > same thing in delicious and magnolia (for example) they wouldn't both > > > show up.
> > > Twitter settings just now use the atom ID - which is not likely to be > > > the same as any id on tumblr or similar. That's where my pattern > > > matching thought came in. Thoughts?
> > > Pras has confirmed the polling bug. Fixed on my version, should be > > > posted this evening.
> > > A note about the YAML - if no URL is given in the action_streams > > > section, the URL from the profile_services section is used and we > > > autodetect RSS/ATOM with <link>s. My implementation supports rss2: > > > similar to the atom: from the original (which I also support).
> > > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > > Which list? You mean to remove a service, what do you do? Right now > > > there is no way to do that (lazy me) - to change your username on a > > > service just 'add' it again and it will overwrite.
> > > List of available services? config.yaml
> > > Or something else?
> > > On Mon, Mar 10, 2008 at 12:53 PM, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > I agree with Steve. It probably needs to start with some basic level > > > > of guid matching (where available), but in a lot of cases where guid > > > > is not available, or simply not preserved/changed, the deduping code > > > > needs some form of similarity matching. Using some basic distance > > > > calculation algos, deduping can be fairly accurate as the time-to-scan > > > > is short (most aggregators will have sourced and syndicated the > > > > content within hours of the original service).
> > > > -Pras
> > > > On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote: > > > > > I think de-duping will have to be more involved - prolly need to start > > > > > with the guid (in ATOM and some variants of RSS) as a basis, then > > > > > getting more esoteric from there.
> > > > > On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > Thoughts on more de-duping. Right now it just de-dupes /inside/ a > > > > > > service... but if someone adds their tumblr or something and has > > > > > > twitter in tumblr, etc, you don't want the same update displaying > > > > > > twice.
> > > > > > ? or do the other services often change it a fair bit? Should that > > > > > > be handled by cleanup inline (ie, facebook adds 'is twittering' - but > > > > > > twitter adds 'username: ' and that gets detected and removed, so the > > > > > > other could be as well...)
> > > > > > I think either way, detected dupes should be handled as current > > > > > > "dupes" are - output the node anyway, but hide it (for scrapers, they > > > > > > see the whole lifestream with all nodes)
> > > > > > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > > > > > I'd like to help out. You mentioned something about de-duping? Are you > > > > > > > already working on that?
> > > > > > > Thanks,
> > > > > > > Pras.
> > > > > > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > Big thanks to MT guys for most of the YAML (added last.fm stream, > > > > > > > > edited flickr and youtube to display thumbnails) and all of the CSS/ > > > > > > > > icons and inspiration!
> > > > > > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > > > > > And, fancy de-duping!
> > > > > > > > Any scrapers that use HTML will not work. These seem to be for more > > > > > > > > obscure sites. > > > > > > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > > > > > To install, just untar in plugins/ > > > > > > > > Go to Users > Action Stream
> > > > > > > > If you have a url(s) (from standard or diso-profile enhanced profile) > > > > > > > > that match a supported service, they are added automagically. You can > > > > > > > > add more.
> > > > > > > > A preview of you actionstream is shown right on the page.
> > > > > > > > To add elsewhere the template tag is actionstream_render(); (you > > > > > > > > can pass an optional userid or user name, and number of items to > > > > > > > > display, default 10)
> > > > > > > > Enjoy!
> > > > > > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > > > > Not yet -- right now it doesn't even cache the data -- WP integration > > > > > > > > > is the next step
> > > > > > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > > > > Wow, Stephen, this is great! I wish I had half your time for this > > > > > > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > > I've knocked up a basic implementation of action streams based on the > > > > > > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since > > > > > > > > > > > I don't know of a PHP library for that. All this code does is take an > > > > > > > > > > > array (hard-coded just now) of service => username pairs, and extract > > > > > > > > > > > the data. Then it iterpolates it using the HTML template from the > > > > > > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
> Ah, my plugin assumes there is content to preview :) Add a source and
> that will go away. I should add a sanity check there :) thx!
> On Tue, Mar 11, 2008 at 11:02 AM, cesar dubo <cesard...@gmail.com> wrote:
> > I get this error when entering to the actionstream under the users
> > menu:
> > Warning: Invalid argument supplied for foreach() in /home/.filofax/
> > newdisco/dubo.cl/wp-content/plugins/diso-actionstream/actionstream.php
> > on line 283
> > On Mar 11, 1:13 am, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > Tumblr support added (thanx Pras!) - polling bug fixed. I've uploaded
> > > 0.11 to the same URL as before. I should post about this on my blog,
> > > since so many others seem to be... heh
> > > On Mon, Mar 10, 2008 at 1:12 PM, Stephen Paul Weber
> > > <singpol...@gmail.com> wrote:
> > > > GUID done and done. the YAML has a field to specify 'identifier'
> > > > (usually url, id on atom, guid on rss2, depends on the service) - this
> > > > is hashed (sha1) and used as the database key. So if you bookmark the
> > > > same thing in delicious and magnolia (for example) they wouldn't both
> > > > show up.
> > > > Twitter settings just now use the atom ID - which is not likely to be
> > > > the same as any id on tumblr or similar. That's where my pattern
> > > > matching thought came in. Thoughts?
> > > > Pras has confirmed the polling bug. Fixed on my version, should be
> > > > posted this evening.
> > > > A note about the YAML - if no URL is given in the action_streams
> > > > section, the URL from the profile_services section is used and we
> > > > autodetect RSS/ATOM with <link>s. My implementation supports rss2:
> > > > similar to the atom: from the original (which I also support).
> > > > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > > > Which list? You mean to remove a service, what do you do? Right now
> > > > there is no way to do that (lazy me) - to change your username on a
> > > > service just 'add' it again and it will overwrite.
> > > > List of available services? config.yaml
> > > > Or something else?
> > > > On Mon, Mar 10, 2008 at 12:53 PM, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > I agree with Steve. It probably needs to start with some basic level
> > > > > of guid matching (where available), but in a lot of cases where guid
> > > > > is not available, or simply not preserved/changed, the deduping code
> > > > > needs some form of similarity matching. Using some basic distance
> > > > > calculation algos, deduping can be fairly accurate as the time-to-scan
> > > > > is short (most aggregators will have sourced and syndicated the
> > > > > content within hours of the original service).
> > > > > -Pras
> > > > > On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > I think de-duping will have to be more involved - prolly need to start
> > > > > > with the guid (in ATOM and some variants of RSS) as a basis, then
> > > > > > getting more esoteric from there.
> > > > > > On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > Thoughts on more de-duping. Right now it just de-dupes /inside/ a
> > > > > > > service... but if someone adds their tumblr or something and has
> > > > > > > twitter in tumblr, etc, you don't want the same update displaying
> > > > > > > twice.
> > > > > > > Can we safely just do something like:
> > > > > > > ? or do the other services often change it a fair bit? Should that
> > > > > > > be handled by cleanup inline (ie, facebook adds 'is twittering' - but
> > > > > > > twitter adds 'username: ' and that gets detected and removed, so the
> > > > > > > other could be as well...)
> > > > > > > I think either way, detected dupes should be handled as current
> > > > > > > "dupes" are - output the node anyway, but hide it (for scrapers, they
> > > > > > > see the whole lifestream with all nodes)
> > > > > > > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > > > > > > I'd like to help out. You mentioned something about de-duping? Are you
> > > > > > > > already working on that?
> > > > > > > > Thanks,
> > > > > > > > Pras.
> > > > > > > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > Big thanks to MT guys for most of the YAML (added last.fm stream,
> > > > > > > > > edited flickr and youtube to display thumbnails) and all of the CSS/
> > > > > > > > > icons and inspiration!
> > > > > > > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > > > > > > And, fancy de-duping!
> > > > > > > > > Any scrapers that use HTML will not work. These seem to be for more
> > > > > > > > > obscure sites.
> > > > > > > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > > > > > > To install, just untar in plugins/
> > > > > > > > > Go to Users > Action Stream
> > > > > > > > > If you have a url(s) (from standard or diso-profile enhanced profile)
> > > > > > > > > that match a supported service, they are added automagically. You can
> > > > > > > > > add more.
> > > > > > > > > A preview of you actionstream is shown right on the page.
> > > > > > > > > To add elsewhere the template tag is actionstream_render(); (you
> > > > > > > > > can pass an optional userid or user name, and number of items to
> > > > > > > > > display, default 10)
> > > > > > > > > Enjoy!
> > > > > > > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > > > > > Not yet -- right now it doesn't even cache the data -- WP integration
> > > > > > > > > > is the next step
> > > > > > > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > > > > > Wow, Stephen, this is great! I wish I had half your time for this
> > > > > > > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > > > I've knocked up a basic implementation of action streams based on the
> > > > > > > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > > > > > > > > > I don't know of a PHP library for that. All this code does is take an
> > > > > > > > > > > > array (hard-coded just now) of service => username pairs, and extract
> > > > > > > > > > > > the data. Then it iterpolates it using the HTML template from the
> > > > > > > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
> i tried adding 3 sources through the wp panel, but no luck with
> that... should i edit some file manually?
> On Mar 11, 12:05 pm, "Stephen Paul Weber" <singpol...@gmail.com>
> wrote:
> > Ah, my plugin assumes there is content to preview :) Add a source and
> > that will go away. I should add a sanity check there :) thx!
> > On Tue, Mar 11, 2008 at 11:02 AM, cesar dubo <cesard...@gmail.com> wrote:
> > > I get this error when entering to the actionstream under the users
> > > menu:
> > > Warning: Invalid argument supplied for foreach() in /home/.filofax/
> > > newdisco/dubo.cl/wp-content/plugins/diso-actionstream/actionstream.php
> > > on line 283
> > > On Mar 11, 1:13 am, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > Tumblr support added (thanx Pras!) - polling bug fixed. I've uploaded
> > > > 0.11 to the same URL as before. I should post about this on my blog,
> > > > since so many others seem to be... heh
> > > > On Mon, Mar 10, 2008 at 1:12 PM, Stephen Paul Weber
> > > > <singpol...@gmail.com> wrote:
> > > > > GUID done and done. the YAML has a field to specify 'identifier'
> > > > > (usually url, id on atom, guid on rss2, depends on the service) - this
> > > > > is hashed (sha1) and used as the database key. So if you bookmark the
> > > > > same thing in delicious and magnolia (for example) they wouldn't both
> > > > > show up.
> > > > > Twitter settings just now use the atom ID - which is not likely to be
> > > > > the same as any id on tumblr or similar. That's where my pattern
> > > > > matching thought came in. Thoughts?
> > > > > Pras has confirmed the polling bug. Fixed on my version, should be
> > > > > posted this evening.
> > > > > A note about the YAML - if no URL is given in the action_streams
> > > > > section, the URL from the profile_services section is used and we
> > > > > autodetect RSS/ATOM with <link>s. My implementation supports rss2:
> > > > > similar to the atom: from the original (which I also support).
> > > > > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > > > > Which list? You mean to remove a service, what do you do? Right now
> > > > > there is no way to do that (lazy me) - to change your username on a
> > > > > service just 'add' it again and it will overwrite.
> > > > > List of available services? config.yaml
> > > > > Or something else?
> > > > > On Mon, Mar 10, 2008 at 12:53 PM, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > I agree with Steve. It probably needs to start with some basic level
> > > > > > of guid matching (where available), but in a lot of cases where guid
> > > > > > is not available, or simply not preserved/changed, the deduping code
> > > > > > needs some form of similarity matching. Using some basic distance
> > > > > > calculation algos, deduping can be fairly accurate as the time-to-scan
> > > > > > is short (most aggregators will have sourced and syndicated the
> > > > > > content within hours of the original service).
> > > > > > -Pras
> > > > > > On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > I think de-duping will have to be more involved - prolly need to start
> > > > > > > with the guid (in ATOM and some variants of RSS) as a basis, then
> > > > > > > getting more esoteric from there.
> > > > > > > On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > Thoughts on more de-duping. Right now it just de-dupes /inside/ a
> > > > > > > > service... but if someone adds their tumblr or something and has
> > > > > > > > twitter in tumblr, etc, you don't want the same update displaying
> > > > > > > > twice.
> > > > > > > > Can we safely just do something like:
> > > > > > > > ? or do the other services often change it a fair bit? Should that
> > > > > > > > be handled by cleanup inline (ie, facebook adds 'is twittering' - but
> > > > > > > > twitter adds 'username: ' and that gets detected and removed, so the
> > > > > > > > other could be as well...)
> > > > > > > > I think either way, detected dupes should be handled as current
> > > > > > > > "dupes" are - output the node anyway, but hide it (for scrapers, they
> > > > > > > > see the whole lifestream with all nodes)
> > > > > > > > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > > > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > > > > > > > I'd like to help out. You mentioned something about de-duping? Are you
> > > > > > > > > already working on that?
> > > > > > > > > Thanks,
> > > > > > > > > Pras.
> > > > > > > > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > Big thanks to MT guys for most of the YAML (added last.fm stream,
> > > > > > > > > > edited flickr and youtube to display thumbnails) and all of the CSS/
> > > > > > > > > > icons and inspiration!
> > > > > > > > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > > > > > > > And, fancy de-duping!
> > > > > > > > > > Any scrapers that use HTML will not work. These seem to be for more
> > > > > > > > > > obscure sites.
> > > > > > > > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > > > > > > > To install, just untar in plugins/
> > > > > > > > > > Go to Users > Action Stream
> > > > > > > > > > If you have a url(s) (from standard or diso-profile enhanced profile)
> > > > > > > > > > that match a supported service, they are added automagically. You can
> > > > > > > > > > add more.
> > > > > > > > > > A preview of you actionstream is shown right on the page.
> > > > > > > > > > To add elsewhere the template tag is actionstream_render(); (you
> > > > > > > > > > can pass an optional userid or user name, and number of items to
> > > > > > > > > > display, default 10)
> > > > > > > > > > Enjoy!
> > > > > > > > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > > > > > > Not yet -- right now it doesn't even cache the data -- WP integration
> > > > > > > > > > > is the next step
> > > > > > > > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > > > > > > Wow, Stephen, this is great! I wish I had half your time for this
> > > > > > > > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > > > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > > > > I've knocked up a basic implementation of action streams based on the
> > > > > > > > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > > > > > > > > > > I don't know of a PHP library for that. All this code does is take an
> > > > > > > > > > > > > array (hard-coded just now) of service => username pairs, and extract
> > > > > > > > > > > > > the data. Then it iterpolates it using the HTML template from the
> > > > > > > > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
> On Mar 11, 12:07 pm, cesar dubo <cesard...@gmail.com> wrote: > > i tried adding 3 sources through the wp panel, but no luck with > > that... should i edit some file manually?
> > On Mar 11, 12:05 pm, "Stephen Paul Weber" <singpol...@gmail.com> > > wrote:
> > > Ah, my plugin assumes there is content to preview :) Add a source and > > > that will go away. I should add a sanity check there :) thx!
> > > On Tue, Mar 11, 2008 at 11:02 AM, cesar dubo <cesard...@gmail.com> wrote:
> > > > I get this error when entering to the actionstream under the users > > > > menu:
> > > > Warning: Invalid argument supplied for foreach() in /home/.filofax/ > > > > newdisco/dubo.cl/wp-content/plugins/diso-actionstream/actionstream.php > > > > on line 283
> > > > On Mar 11, 1:13 am, "Stephen Paul Weber" <singpol...@gmail.com> wrote: > > > > > Tumblr support added (thanx Pras!) - polling bug fixed. I've uploaded > > > > > 0.11 to the same URL as before. I should post about this on my blog, > > > > > since so many others seem to be... heh
> > > > > On Mon, Mar 10, 2008 at 1:12 PM, Stephen Paul Weber
> > > > > <singpol...@gmail.com> wrote: > > > > > > GUID done and done. the YAML has a field to specify 'identifier' > > > > > > (usually url, id on atom, guid on rss2, depends on the service) - this > > > > > > is hashed (sha1) and used as the database key. So if you bookmark the > > > > > > same thing in delicious and magnolia (for example) they wouldn't both > > > > > > show up.
> > > > > > Twitter settings just now use the atom ID - which is not likely to be > > > > > > the same as any id on tumblr or similar. That's where my pattern > > > > > > matching thought came in. Thoughts?
> > > > > > Pras has confirmed the polling bug. Fixed on my version, should be > > > > > > posted this evening.
> > > > > > A note about the YAML - if no URL is given in the action_streams > > > > > > section, the URL from the profile_services section is used and we > > > > > > autodetect RSS/ATOM with <link>s. My implementation supports rss2: > > > > > > similar to the atom: from the original (which I also support).
> > > > > > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > > > > > Which list? You mean to remove a service, what do you do? Right now > > > > > > there is no way to do that (lazy me) - to change your username on a > > > > > > service just 'add' it again and it will overwrite.
> > > > > > List of available services? config.yaml
> > > > > > Or something else?
> > > > > > On Mon, Mar 10, 2008 at 12:53 PM, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > > I agree with Steve. It probably needs to start with some basic level > > > > > > > of guid matching (where available), but in a lot of cases where guid > > > > > > > is not available, or simply not preserved/changed, the deduping code > > > > > > > needs some form of similarity matching. Using some basic distance > > > > > > > calculation algos, deduping can be fairly accurate as the time-to-scan > > > > > > > is short (most aggregators will have sourced and syndicated the > > > > > > > content within hours of the original service).
> > > > > > > -Pras
> > > > > > > On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote: > > > > > > > > I think de-duping will have to be more involved - prolly need to start > > > > > > > > with the guid (in ATOM and some variants of RSS) as a basis, then > > > > > > > > getting more esoteric from there.
> > > > > > > > On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > Thoughts on more de-duping. Right now it just de-dupes /inside/ a > > > > > > > > > service... but if someone adds their tumblr or something and has > > > > > > > > > twitter in tumblr, etc, you don't want the same update displaying > > > > > > > > > twice.
> > > > > > > > > Can we safely just do something like:
> > > > > > > > > ? or do the other services often change it a fair bit? Should that > > > > > > > > > be handled by cleanup inline (ie, facebook adds 'is twittering' - but > > > > > > > > > twitter adds 'username: ' and that gets detected and removed, so the > > > > > > > > > other could be as well...)
> > > > > > > > > I think either way, detected dupes should be handled as current > > > > > > > > > "dupes" are - output the node anyway, but hide it (for scrapers, they > > > > > > > > > see the whole lifestream with all nodes)
> > > > > > > > > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > > > > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > > > > > > > > I'd like to help out. You mentioned something about de-duping? Are you > > > > > > > > > > already working on that?
> > > > > > > > > > Thanks,
> > > > > > > > > > Pras.
> > > > > > > > > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > > Big thanks to MT guys for most of the YAML (added last.fm stream, > > > > > > > > > > > edited flickr and youtube to display thumbnails) and all of the CSS/ > > > > > > > > > > > icons and inspiration!
> > > > > > > > > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > > > > > > > > And, fancy de-duping!
> > > > > > > > > > > Any scrapers that use HTML will not work. These seem to be for more > > > > > > > > > > > obscure sites. > > > > > > > > > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > > > > > > > > To install, just untar in plugins/ > > > > > > > > > > > Go to Users > Action Stream
> > > > > > > > > > > If you have a url(s) (from standard or diso-profile enhanced profile) > > > > > > > > > > > that match a supported service, they are added automagically. You can > > > > > > > > > > > add more.
> > > > > > > > > > > A preview of you actionstream is shown right on the page.
> > > > > > > > > > > To add elsewhere the template tag is actionstream_render(); (you > > > > > > > > > > > can pass an optional userid or user name, and number of items to > > > > > > > > > > > display, default 10)
> > > > > > > > > > > Enjoy!
> > > > > > > > > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > > > > > > > Not yet -- right now it doesn't even cache the data -- WP integration > > > > > > > > > > > > is the next step
> > > > > > > > > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > > > > > > > Wow, Stephen, this is great! I wish I had half your time for this > > > > > > > > > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > > > > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > > > > > I've knocked up a basic implementation of action streams based on the > > > > > > > > > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > > > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since > > > > > > > > > > > > > > I don't know of a PHP library for that. All this code does is take an > > > > > > > > > > > > > > array (hard-coded just now) of service => username pairs, and extract > > > > > > > > > > > > > > the data. Then it iterpolates it using the HTML template from the > > > > > > > > > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
> It looks like your data is not being pulled in at all... what host are
> you on? Version of wordpress? Do you get any other odd behaviour /
> errors?
> On Tue, Mar 11, 2008 at 11:18 AM, cesar dubo <cesard...@gmail.com> wrote:
> > besides, the mysql actionstream table remains empty... here's a
> > screenshot if it helps:
> > On Mar 11, 12:07 pm, cesar dubo <cesard...@gmail.com> wrote:
> > > i tried adding 3 sources through the wp panel, but no luck with
> > > that... should i edit some file manually?
> > > On Mar 11, 12:05 pm, "Stephen Paul Weber" <singpol...@gmail.com>
> > > wrote:
> > > > Ah, my plugin assumes there is content to preview :) Add a source and
> > > > that will go away. I should add a sanity check there :) thx!
> > > > On Tue, Mar 11, 2008 at 11:02 AM, cesar dubo <cesard...@gmail.com> wrote:
> > > > > I get this error when entering to the actionstream under the users
> > > > > menu:
> > > > > Warning: Invalid argument supplied for foreach() in /home/.filofax/
> > > > > newdisco/dubo.cl/wp-content/plugins/diso-actionstream/actionstream.php
> > > > > on line 283
> > > > > On Mar 11, 1:13 am, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > Tumblr support added (thanx Pras!) - polling bug fixed. I've uploaded
> > > > > > 0.11 to the same URL as before. I should post about this on my blog,
> > > > > > since so many others seem to be... heh
> > > > > > On Mon, Mar 10, 2008 at 1:12 PM, Stephen Paul Weber
> > > > > > <singpol...@gmail.com> wrote:
> > > > > > > GUID done and done. the YAML has a field to specify 'identifier'
> > > > > > > (usually url, id on atom, guid on rss2, depends on the service) - this
> > > > > > > is hashed (sha1) and used as the database key. So if you bookmark the
> > > > > > > same thing in delicious and magnolia (for example) they wouldn't both
> > > > > > > show up.
> > > > > > > Twitter settings just now use the atom ID - which is not likely to be
> > > > > > > the same as any id on tumblr or similar. That's where my pattern
> > > > > > > matching thought came in. Thoughts?
> > > > > > > Pras has confirmed the polling bug. Fixed on my version, should be
> > > > > > > posted this evening.
> > > > > > > A note about the YAML - if no URL is given in the action_streams
> > > > > > > section, the URL from the profile_services section is used and we
> > > > > > > autodetect RSS/ATOM with <link>s. My implementation supports rss2:
> > > > > > > similar to the atom: from the original (which I also support).
> > > > > > > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > > > > > > Which list? You mean to remove a service, what do you do? Right now
> > > > > > > there is no way to do that (lazy me) - to change your username on a
> > > > > > > service just 'add' it again and it will overwrite.
> > > > > > > List of available services? config.yaml
> > > > > > > Or something else?
> > > > > > > On Mon, Mar 10, 2008 at 12:53 PM, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > > > I agree with Steve. It probably needs to start with some basic level
> > > > > > > > of guid matching (where available), but in a lot of cases where guid
> > > > > > > > is not available, or simply not preserved/changed, the deduping code
> > > > > > > > needs some form of similarity matching. Using some basic distance
> > > > > > > > calculation algos, deduping can be fairly accurate as the time-to-scan
> > > > > > > > is short (most aggregators will have sourced and syndicated the
> > > > > > > > content within hours of the original service).
> > > > > > > > -Pras
> > > > > > > > On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > > > I think de-duping will have to be more involved - prolly need to start
> > > > > > > > > with the guid (in ATOM and some variants of RSS) as a basis, then
> > > > > > > > > getting more esoteric from there.
> > > > > > > > > On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > Thoughts on more de-duping. Right now it just de-dupes /inside/ a
> > > > > > > > > > service... but if someone adds their tumblr or something and has
> > > > > > > > > > twitter in tumblr, etc, you don't want the same update displaying
> > > > > > > > > > twice.
> > > > > > > > > > Can we safely just do something like:
> > > > > > > > > > ? or do the other services often change it a fair bit? Should that
> > > > > > > > > > be handled by cleanup inline (ie, facebook adds 'is twittering' - but
> > > > > > > > > > twitter adds 'username: ' and that gets detected and removed, so the
> > > > > > > > > > other could be as well...)
> > > > > > > > > > I think either way, detected dupes should be handled as current
> > > > > > > > > > "dupes" are - output the node anyway, but hide it (for scrapers, they
> > > > > > > > > > see the whole lifestream with all nodes)
> > > > > > > > > > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > > > > > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > > > > > > > > > I'd like to help out. You mentioned something about de-duping? Are you
> > > > > > > > > > > already working on that?
> > > > > > > > > > > Thanks,
> > > > > > > > > > > Pras.
> > > > > > > > > > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > > > And now for the WP plugin!
> > > > > > > > > > > > Big thanks to MT guys for most of the YAML (added last.fm stream,
> > > > > > > > > > > > edited flickr and youtube to display thumbnails) and all of the CSS/
> > > > > > > > > > > > icons and inspiration!
> > > > > > > > > > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > > > > > > > > > And, fancy de-duping!
> > > > > > > > > > > > Any scrapers that use HTML will not work. These seem to be for more
> > > > > > > > > > > > obscure sites.
> > > > > > > > > > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > > > > > > > > > To install, just untar in plugins/
> > > > > > > > > > > > Go to Users > Action Stream
> > > > > > > > > > > > If you have a url(s) (from standard or diso-profile enhanced profile)
> > > > > > > > > > > > that match a supported service, they are added automagically. You can
> > > > > > > > > > > > add more.
> > > > > > > > > > > > A preview of you actionstream is shown right on the page.
> > > > > > > > > > > > To add elsewhere the template tag is actionstream_render(); (you
> > > > > > > > > > > > can pass an optional userid or user name, and number of items to
> > > > > > > > > > > > display, default 10)
> > > > > > > > > > > > Enjoy!
> > > > > > > > > > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > > > > > > > > Not yet -- right now it doesn't even cache the data -- WP integration
> > > > > > > > > > > > > is the next step
> > > > > > > > > > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > > > > > > > > Wow, Stephen, this is great! I wish I had half your time for this
> > > > > > > > > > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > > > > > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > > > > > > I've knocked up a basic implementation of action streams based on the
> > > > > > > > > > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > > > > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > > > > > > > > > > > > I don't know of a PHP library for that. All this code does is take an
> > > > > > > > > > > > > > > array (hard-coded just now) of service => username pairs, and extract
> > > > > > > > > > > > > > > the data. Then it iterpolates it using the HTML template from the
> > > > > > > > > > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!
I think this is ready to go into the repo. What do you think? Would
you mind checking it in to /wordpress/wp-diso-actionstreams/trunk/ ?
You should have commit access.
While you're in there, perhaps we could move diso-profile to wp-diso-
profile? I'd like to keep to the naming scheme wp-<plugin> in the case
of general technologies (oauth, openid) and wp-diso-<plugin> for more
social-specific code (actions streams, profiles, contacts, etc).
Finally, if we are going to agree on a BSD or MIT license, let's
finally decide, and make sure that each component has the right
license file and source headers in place. I'm excited about where we
are right now!! Additionally, I have a partially done Movable Type
blogroll plugin I'm going to donate in the next week or so (assuming I
can get it to a usable level).
--Steve
What does the group think?
On Mar 10, 9:13 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> Tumblr support added (thanx Pras!) - polling bug fixed. I've uploaded
> 0.11 to the same URL as before. I should post about this on my blog,
> since so many others seem to be... heh
> On Mon, Mar 10, 2008 at 1:12 PM, Stephen Paul Weber
> <singpol...@gmail.com> wrote:
> > GUID done and done. the YAML has a field to specify 'identifier'
> > (usually url, id on atom, guid on rss2, depends on the service) - this
> > is hashed (sha1) and used as the database key. So if you bookmark the
> > same thing in delicious and magnolia (for example) they wouldn't both
> > show up.
> > Twitter settings just now use the atom ID - which is not likely to be
> > the same as any id on tumblr or similar. That's where my pattern
> > matching thought came in. Thoughts?
> > Pras has confirmed the polling bug. Fixed on my version, should be
> > posted this evening.
> > A note about the YAML - if no URL is given in the action_streams
> > section, the URL from the profile_services section is used and we
> > autodetect RSS/ATOM with <link>s. My implementation supports rss2:
> > similar to the atom: from the original (which I also support).
> > "What about editing that list of URLs? Where should one go to do that?" - Steve
> > Which list? You mean to remove a service, what do you do? Right now
> > there is no way to do that (lazy me) - to change your username on a
> > service just 'add' it again and it will overwrite.
> > List of available services? config.yaml
> > Or something else?
> > On Mon, Mar 10, 2008 at 12:53 PM, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > I agree with Steve. It probably needs to start with some basic level
> > > of guid matching (where available), but in a lot of cases where guid
> > > is not available, or simply not preserved/changed, the deduping code
> > > needs some form of similarity matching. Using some basic distance
> > > calculation algos, deduping can be fairly accurate as the time-to-scan
> > > is short (most aggregators will have sourced and syndicated the
> > > content within hours of the original service).
> > > -Pras
> > > On Mar 10, 9:16 am, Steve Ivy <steve...@gmail.com> wrote:
> > > > I think de-duping will have to be more involved - prolly need to start
> > > > with the guid (in ATOM and some variants of RSS) as a basis, then
> > > > getting more esoteric from there.
> > > > On Mar 10, 7:36 am, Singpolyma <singpol...@gmail.com> wrote:
> > > > > Thoughts on more de-duping. Right now it just de-dupes /inside/ a
> > > > > service... but if someone adds their tumblr or something and has
> > > > > twitter in tumblr, etc, you don't want the same update displaying
> > > > > twice.
> > > > > ? or do the other services often change it a fair bit? Should that
> > > > > be handled by cleanup inline (ie, facebook adds 'is twittering' - but
> > > > > twitter adds 'username: ' and that gets detected and removed, so the
> > > > > other could be as well...)
> > > > > I think either way, detected dupes should be handled as current
> > > > > "dupes" are - output the node anyway, but hide it (for scrapers, they
> > > > > see the whole lifestream with all nodes)
> > > > > On Mar 9, 10:38 pm, Pras Sarkar <pras.sar...@gmail.com> wrote:
> > > > > > This is great Stephen! Works like a charm; I have it up and running onhttp://headphono.us
> > > > > > I'd like to help out. You mentioned something about de-duping? Are you
> > > > > > already working on that?
> > > > > > Thanks,
> > > > > > Pras.
> > > > > > On Mar 9, 4:14 pm, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > Big thanks to MT guys for most of the YAML (added last.fm stream,
> > > > > > > edited flickr and youtube to display thumbnails) and all of the CSS/
> > > > > > > icons and inspiration!
> > > > > > > I hereby dual-license this plugin MIT and BSD (or compatible).
> > > > > > > And, fancy de-duping!
> > > > > > > Any scrapers that use HTML will not work. These seem to be for more
> > > > > > > obscure sites.
> > > > > > > Digg seems to block the wp_remote_fopen user agent. Blah.
> > > > > > > To install, just untar in plugins/
> > > > > > > Go to Users > Action Stream
> > > > > > > If you have a url(s) (from standard or diso-profile enhanced profile)
> > > > > > > that match a supported service, they are added automagically. You can
> > > > > > > add more.
> > > > > > > A preview of you actionstream is shown right on the page.
> > > > > > > To add elsewhere the template tag is actionstream_render(); (you
> > > > > > > can pass an optional userid or user name, and number of items to
> > > > > > > display, default 10)
> > > > > > > Enjoy!
> > > > > > > On Mar 8, 7:19 pm, "Stephen Paul Weber" <singpol...@gmail.com> wrote:
> > > > > > > > Not yet -- right now it doesn't even cache the data -- WP integration
> > > > > > > > is the next step
> > > > > > > > On Sat, Mar 8, 2008 at 4:46 PM, Steve Ivy <steve...@gmail.com> wrote:
> > > > > > > > > Wow, Stephen, this is great! I wish I had half your time for this
> > > > > > > > > stuff. :-) Good work. Is this a WP plugin yet?
> > > > > > > > > On Sat, Mar 8, 2008 at 2:06 PM, Singpolyma <singpol...@gmail.com> wrote:
> > > > > > > > > > I've knocked up a basic implementation of action streams based on the
> > > > > > > > > > MT YAML file and a PHP YAML parser.
> > > > > > > > > > I supports the XPATH and ATOM stuff, but not CSS selectors, etc, since
> > > > > > > > > > I don't know of a PHP library for that. All this code does is take an
> > > > > > > > > > array (hard-coded just now) of service => username pairs, and extract
> > > > > > > > > > the data. Then it iterpolates it using the HTML template from the
> > > > > > > > > > YAML. Small piece of code suddenly has lots of services it can handle!