A Kingdom-minded follower of Jesus, embracing the prophetic-apostolic, with a missional-postmodern expression. huh?

Installing & Configuring the Activity Stream Module for Drupal 6.x

Posted Date: 
Mon, 03/16/2009

Activity Stream builds a lifestream for you by aggregating your social activities all in one place.  In this video, we learn how to install and configure the module in Drupal 6.

Note: It's a high resolution video, so it plays well in full screen mode.

Primary Screencast: 
Syndications

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Thanks

Many thanks for this screencast, it was simply and objective and help's me configuring this module in drupal.

Thanks for the screen cast. I

Thanks for the screen cast. I think I'll give this a shot on my site.

Thanks!

Thank you, this was awesome!

Activity Stream Video

Brian,
Thanks for such a clear and informative video. I learned enough to go to my friend who helped me set my drupal site to tell him I want to add this to my page. I have a lot of learning to do myself before I try and do it myself. But I didn't get lost which means you have the ability to inform not only the advanced user but the newbie also.

thanks chuck!

Thank you for the compliment Chuck.  I love teaching others.
Peace,
Brian
 

Thank you!

This was really great for me, just couldn't figure out how to install it. Guess I wasnt paying attention either. However, this screencast was a huge help!

you're welcome!

Thank you for letting me know this video was helpful to you.  :-)
Peace,
Brian 

Nice

Hey thanks for saving me a bunch of time and a lot of head scratching trying to figure out this out. Very nice and simple directions. You are good at this.

Activity Stream Module

Hey Brian,

If the ActivityStream module creates a node for every item it gathers, how will that end up affecting performance in the long run? Is there anyway to delete Activity nodes older than say 3 months?

I run a website for a missions organization, and I want to bring in all the Facebook, Twitter, and Flickr activities of all 20 of our staff. Would this cause a big performance hit, or end up filling up our database?

Thanks for the excellent screen cast!

Nathan Johnson

you should have no problem

Hi Nathan,

Thank you so much for your patience with me.  I normally reply back to messages within 24 hours, but things have just been crazy the past two weeks.

In general, you should have no worries about slowing down drupal performance with this module.  The only exception would be if your site is hosted on a very poor-performing shared server.  If that were the case, you'd be experiencing performance issues right now without this module.  If that's not the case, you'll be just fine.  :-)

If you want to keep things nice and tidy, you could automatically delete old activity streamnodes after a certain age.  I believe this module will do the trick:

http://drupal.org/project/auto_expire

Let me know if I can be of anymore assistance.

 

multi-user community sites

Hi Brian,

Your videos are awesome. What a great resource. Thanks a million.

Ideally we'd like to allow all our users (profiles) to have their own individual activity streams and blocked on their own profile page(s).

It looked like each users has to be configured separately? Can each have their own block?

thanks again,

Greg

this solution will get you started...

create a view and expose it as a block.  this view will accept one argument: uid (user id).  Three easy steps.

1. import this view as a starting point:

$view = new view;
$view->name = 'as_user';
$view->description = 'activity stream block for user';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->override_option('fields', array(
  'icon' => array(
    'label' => 'Icon',
    'alter' => array(
      'alter_text' => 0,
      'text' => '',
      'make_link' => 0,
      'path' => '',
      'link_class' => '',
      'alt' => '',
      'prefix' => '',
      'suffix' => '',
      'help' => '',
      'trim' => 0,
      'max_length' => '',
      'word_boundary' => 1,
      'ellipsis' => 1,
      'strip_tags' => 0,
      'html' => 0,
    ),
    'exclude' => 0,
    'id' => 'icon',
    'table' => 'activitystream',
    'field' => 'icon',
    'relationship' => 'none',
  ),
  'link' => array(
    'label' => 'Link',
    'alter' => array(
      'alter_text' => 0,
      'text' => '',
      'make_link' => 0,
      'path' => '',
      'link_class' => '',
      'alt' => '',
      'prefix' => '',
      'suffix' => '',
      'help' => '',
      'trim' => 0,
      'max_length' => '',
      'word_boundary' => 1,
      'ellipsis' => 1,
      'strip_tags' => 0,
      'html' => 0,
    ),
    'display_as_link' => 1,
    'exclude' => 0,
    'id' => 'link',
    'table' => 'activitystream',
    'field' => 'link',
    'relationship' => 'none',
  ),
  'module' => array(
    'label' => 'Source',
    'alter' => array(
      'alter_text' => 0,
      'text' => '',
      'make_link' => 0,
      'path' => '',
      'link_class' => '',
      'alt' => '',
      'prefix' => '',
      'suffix' => '',
      'help' => '',
      'trim' => 0,
      'max_length' => '',
      'word_boundary' => 1,
      'ellipsis' => 1,
      'strip_tags' => 0,
      'html' => 0,
    ),
    'exclude' => 0,
    'id' => 'module',
    'table' => 'activitystream',
    'field' => 'module',
    'relationship' => 'none',
  ),
  'body' => array(
    'label' => 'Body',
    'alter' => array(
      'alter_text' => 0,
      'text' => '',
      'make_link' => 0,
      'path' => '',
      'link_class' => '',
      'alt' => '',
      'prefix' => '',
      'suffix' => '',
      'help' => '',
      'trim' => 0,
      'max_length' => '',
      'word_boundary' => 1,
      'ellipsis' => 1,
      'strip_tags' => 0,
      'html' => 0,
    ),
    'exclude' => 0,
    'id' => 'body',
    'table' => 'node_revisions',
    'field' => 'body',
    'relationship' => 'none',
  ),
  'title' => array(
    'label' => 'Title',
    'alter' => array(
      'alter_text' => 0,
      'text' => '',
      'make_link' => 0,
      'path' => '',
      'link_class' => '',
      'alt' => '',
      'prefix' => '',
      'suffix' => '',
      'help' => '',
      'trim' => 0,
      'max_length' => '',
      'word_boundary' => 1,
      'ellipsis' => 1,
      'strip_tags' => 0,
      'html' => 0,
    ),
    'link_to_node' => 0,
    'exclude' => 0,
    'id' => 'title',
    'table' => 'node',
    'field' => 'title',
    'relationship' => 'none',
  ),
));
$handler->override_option('sorts', array(
  'created' => array(
    'order' => 'DESC',
    'granularity' => 'second',
    'id' => 'created',
    'table' => 'node',
    'field' => 'created',
    'relationship' => 'none',
  ),
));
$handler->override_option('arguments', array(
  'uid' => array(
    'default_action' => 'ignore',
    'style_plugin' => 'default_summary',
    'style_options' => array(),
    'wildcard' => 'all',
    'wildcard_substitution' => 'All',
    'title' => '',
    'breadcrumb' => '',
    'default_argument_type' => 'fixed',
    'default_argument' => '',
    'validate_type' => 'none',
    'validate_fail' => 'not found',
    'break_phrase' => 0,
    'not' => 0,
    'id' => 'uid',
    'table' => 'users',
    'field' => 'uid',
    'validate_user_argument_type' => 'uid',
    'validate_user_roles' => array(
      '2' => 0,
      '3' => 0,
      '4' => 0,
    ),
    'relationship' => 'none',
    'default_options_div_prefix' => '',
    'default_argument_user' => 0,
    'default_argument_fixed' => '',
    'default_argument_php' => '',
    'validate_argument_node_type' => array(
      'activitystream' => 0,
      'drupal_screencast' => 0,
      'page' => 0,
      'story' => 0,
    ),
    'validate_argument_node_access' => 0,
    'validate_argument_nid_type' => 'nid',
    'validate_argument_vocabulary' => array(
      '1' => 0,
    ),
    'validate_argument_type' => 'tid',
    'validate_argument_transform' => 0,
    'validate_user_restrict_roles' => 0,
    'validate_argument_php' => '',
  ),
));
$handler->override_option('filters', array(
  'type' => array(
    'operator' => 'in',
    'value' => array(
      'activitystream' => 'activitystream',
    ),
    'group' => '0',
    'exposed' => FALSE,
    'expose' => array(
      'operator' => FALSE,
      'label' => '',
    ),
    'id' => 'type',
    'table' => 'node',
    'field' => 'type',
    'relationship' => 'none',
  ),
  'status' => array(
    'operator' => '=',
    'value' => '1',
    'group' => '0',
    'exposed' => FALSE,
    'expose' => array(
      'operator' => FALSE,
      'label' => '',
    ),
    'id' => 'status',
    'table' => 'node',
    'field' => 'status',
    'relationship' => 'none',
  ),
));
$handler->override_option('access', array(
  'type' => 'none',
));
$handler->override_option('cache', array(
  'type' => 'time',
  'results_lifespan' => '300',
  'output_lifespan' => '1800',
));
$handler->override_option('row_options', array(
  'inline' => array(
    'icon' => 'icon',
    'link' => 'link',
    'module' => 'module',
    'body' => 'body',
    'title' => 'title',
  ),
  'separator' => '',
));
$handler = $view->new_display('block', 'Block', 'block_1');
$handler->override_option('block_description', '');
$handler->override_option('block_caching', '-1');
 
 
2. next, go to your blocks page and you should see a as_user block.  add this block to a sidebar or something and change its visibility to only display on pages like: user/*
 
3. navigate to a user profile that has activity stream setup and you should be see it.  go back into the view and modify the settings to more appropriate values (like show first five nodes, truncate body, etc...)
 
Peace,
Brian

 

Many thanks - have a question

I am getting "warning: Missing argument 1 for theme_activitystream_feed_icon() in /home/thev3gro/public_html/a/modules/activitystream/activitystream_feed/activitystream_feed.module on line 112." - with the views block setup. Thoughts?

Check out this solution

Hey Liam,
Check out this solution:
http://drupal.org/node/648588 
Peace,
Brian

Thanks fot the view-Import

HI,

thanks a million for this view-import. I could never make any useful view of my activity streams - this saved my weekend. Otherwise, I would have wasted it trying to get it work (presumable without success).

Too bad Facebook is still missing in the streams. They just won´t show you your Status-Feed. And even if it´s possible in a complicated way, no one can tell his users:

"To put in your facebook status updates do:
1.
....
526. Your Facebook Status Updates should appear, unless Facebook changed something, while I was writing this.

you're welcome!

I'm glad I was able to help you.  BTW, if you're looking to learn more about Drupal, check out my latest project: http://yadadrop.com/drupal-video

i dont get all of what your

i dont get all of what your saying, what does this mean "next, go to your blocks page and you should see a as_user block. add this block to a sidebar or something and change its visibility to only display on pages like: user/*"

the block page is located

the block page is located here:
yourdomain.xxx/ admin/build/block
 
look for something called as_user.  that is the name of the view-generated block.  you must import my starter view to see this block.
 
does that clarify? 

Thank btw, I got passed

Thank btw, I got passed as_user

How do we change the

How do we change the visibility?

i cant find the block.

i cant find the block.

thanx

thanx

really, usefull - thank

really, usefull - thank you!

-Politiet i Danmark

Only show delicious bookmarks tagged with a certain keyword

Hey,

First of all, thanks for this very helpful screencast.

My Question:

Is there a way to just show bookmarks from delicious with a certain tag in the activity stream?

That should be possible because there are RSS-Feeds for single tags of users at Delicious.

This is really important to me because in my community's case delicous bookmarks are only helpful if there are tagged with a certain tag that the community has agreed upon.

I'm also trying to figure out whether there's a way to store these bookmarks so that they're not just available in the stream, but stored for later retrieval. Something like a Delicious within the community.

I'd really appreciate your help as I'm quite new to Drupal, so please forgive me if me question might sound a bit newbie like ;-)

Cheers,
Stefan

you may have a couple of options...

You may have a couple of options:
  1. Use the FeedStream (An ActivityStream submodule) to manually pull in a specific RSS URL that you get from Delicious.

  2. If the Delicious tag is anywhere in the node title, you might be able to build a custom Views2 view and filter by a keyword. (not sure if Delicious has tag information in title)

  3. See if this module will do what you need it to do:
     http://drupal.org/project/deliciousblog
 

Thanks

Cheers mate, I'll give it a try and thanks for the additional info on the delicious module! :-)

Thanks!

Excellent Screencast! Much appreciated.
Would it be possible to have the activity stream come in as blog entries or nodes right on the front page?

yes

I believe the most recent version of ActivityStream has some major Views2 improvements which would give you great flexibility with displaying those nodes.

Drupal Activity Steam Video

Brian,

Thank you for an excellent video explain how to set up the Drupal Activity Steam module. I had hit a couple of snags during the configuration stage which have now been resolved.

All the best.

Phil

Thanks Phil

I'm glad you found the video useful!

Great video

Brian,
Great video. Following your video I was able to get activity stream working on my website at www.BrianKenyon.com .
Thank you so much. When I tried installing it before I didn't realize that I needed to run cron and nothing ever came up.

Thanks again.

Brian Kenyon

you're welcome!

Thank you for dropping me a quick note to let me know that the video was helpful.  :-)

Run Cron of Course!

Thanks for helping me figure that one out!

you're welcome!

you're welcome Ross!

Fantastic

Hi Brian,
this screencast is fantastic. Tanks a lot for your work.

Bye,

Francesco

you're welcome

Thank you Francesco. :-)

Nice

Its really very good screencast Brian. It would be great if you could publish a screencast on using views.....

Views are definitely on my map

I am working toward understanding Views a bit a better. There are literally over 100 features in that module and I've only used less than 5% of what that module can do.

Missing youtube and facebook modules

Hey Brian, Thanks for the video!

Just wanted to note that it took me a bit longer to figure out how to find the YouTube and Facebook modules. They're not included in the Activity Stream module, but have their own separate modules you can get here:

* http://drupal.org/project/activitystream_facebook
* http://drupal.org/project/activitystream_youtube

Cheers,
Scott

Excellent input!

Excellent input Scott! Here are the links to all modules that I know of.

Found this great but the

Found this great but the video kept stopping. Do I need to adjust my computer somehow?

thanks for the input jeannie

Most of my embedded videos are hosted on YouTube.  It's possible that YouTube's content delivery network is experiencing a problem.  Try watching the syndicated videos on Blip.tv and Vimeo.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Subscribe to Drupal Screencasts (RSS)