When I add the RSS feed for my blog on the same Drupal Web site where Activity Stream is installed, a new node for every blog node is created. This creates unnecessary nodes, and causes search results to show multiple results with the same title (because there are multiple nodes with the same title).
Is there a way that a small module could be written using the Activity Stream API that would allow the importing of blog entries from the Drupal site on which Activity Stream is installed without creating a new node for these entries? Or...is this something that could be written into Activity Stream so that it allows for a user's blog to be included with something as simple as a checkbox (and, of course, include the blog items in the stream without creating nodes for them)?
This looks like a great module, but I had to delete all the nodes it created today and deactivate it because of this minor issue. If it could import blog entries without creating nodes for them, that would be great.
Thanks!
| Comment | File | Size | Author |
|---|---|---|---|
| #2 | activitystream_node.tgz | 2.04 KB | eojthebrave |
Comments
Comment #1
akalsey commentedThis behavior is by design. The module will pull in whatever data you ask it to. This might have to be revisited when we add a feed for each user's stream so we don't wind up with an endless loop. (i.e. a user adds the feed for their stream TO their stream)
Comment #2
eojthebraveI wanted to be able to do this on my own site so I decided to write an activitystream sub-module to handle it.
This module should be put into the activitystream directory and installed/activated as per usual.
Once activated it adds another set of options to the settings page on user/*/edit/activitystream that allows you to select which of the node types on your site you would like to have included in your activity stream when created. It also allows you to choose wether or not you want to have updates to existing nodes included in your activitystream.
Comment #3
dmetzcher commentedI installed the module you provided, but my blog posts are not showing up in the stream. Do I need to do anything else?
Comment #4
eojthebraveDid you go to your profile and edit the activity stream settings there? You have to check the checkbox for items you want to show in your activity stream.
Also, the module is totally unaware of anything posted before you installed it. So, blog posts that you've already made wont show up until you edit them.
Finally, just making sure that you're using drupal 6.x, and the 6.x version of activitystream.
Comment #5
dmetzcher commentedOh, I see what is happening...
It only includes the nodes as entries in the Activity Stream if they are posted after your module is installed.
Is there any way that I can edit the database, somewhere, and get my old nodes included in the stream with the proper dates (revisions seem like they would be posted with today's date)?
Comment #6
dmetzcher commentedI think we were posting replies at the same time. :)
I saw what you were talking about with it not seeing old entries.
However, I just edited and saved an entry in my blog from earlier today. I looked in the Activity Stream, and it looks like it posted it there in the list with the original time from earlier today, which is great!
Can you confirm that if I go back and edit something from 6-months ago it will show up in my stream with the proper date (6-months ago), rather than with today's date (assuming I do not create a new revision, which is also an excellent feature!)?
Thanks for writing this!
Comment #7
dmetzcher commentedActually, I can confirm it myself. Editing (without creating a new revision) will add an old node to the Activity Stream. I love it!
Thanks again! You have totally filled my need with this module.
Comment #8
eojthebraveAny chance of getting this committed? I think it's a pretty useful feature that a lot of people could make use of.
Comment #9
eojthebraveComment #10
akalsey commentedInstead of adding new modules constantly to the download (and making people wait for new releases to get new modules) I'd rather that plugin modules be placed under their own separate projects. To do so, just apply for a CVS account and create a project and a release for your module.
Comment #11
thomas23@drupal.org commentedWould it be possible to add this as a "official" sub-module, please? I'm asking this so Drupal can know about updates to it.
Comment #12
eojthebraveWhile I'm not at all opposed to creating a separate project for this module I would argue that this is functionality that I think most users of activitystream would expect out of the box. As such, I think it should be a part of the "core" activitystream module.
In fact, I would suspect that this would get used much more often than some of the other bundled plugin modules like digg and lastfm.
Comment #13
akalsey commentedI've started working on the 2.0 version of the module. One of the things that is in it is splitting the save operation from the node creation operation and then exposing an API for each. That way, modules can be written that save data without creating nodes. This will allow you to create modules that work with data that's already in Drupal instead of only data that's outside of Drupal. The new version includes a module that automatically adds local nodes and comments on nodes to the stream. I'm also planning on adding modules that interact with buddylist, events, and signups.
There's already a module that does a lot of this -- http://drupal.org/project/activity -- but adding the feature to Activity Stream will allow for the creation of plugins that can expose *everything* to the module. The idea is you can have a blending between Facebook's minifeed and Friend Feed on your Drupal site.
As soon as I get the code mostly working, I'll check it in so you guys can test and start coding against it.
Comment #14
neyoung commentedEdit: nevermind, my mistake
Comment #15
neyoung commentededit: nevermind, my mistake
Comment #16
eojthebraveMarking this as fixed since the sub-module I posted above solves the issue in the 1.x branch. Excited to see what the future 2.x branch holds.