chris = client.feed('user', 'chris')
# Add an activity; message is a custom field - tip: add as many custom fields as you'd like!
activity_data = { :actor => 'chris', :verb => 'add', :object => 'picture:10', :foreign_id => 'picture:10', :message => 'Cool bird.' }
chris.add_activity(activity_data);
# jack's 'timeline' feed follows chris' 'user' feed.
jack = client.feed('timeline', 'jack')
jack.follow('user', 'chris')
# Read the 'timeline' for jack, chris' post will now show up here:
activities = jack.get(:limit => 10)
# Read the next page, use id filtering for optimal performance:
next_activities = jack.get(:limit =>10, :id_lte => activities[-1]['id'])
# Remove the activity by referencing the foreign_id you provided
chris.remove_activity('picture:10', foreign_id=true)
var stream = require('getstream');
var client = stream.connect('KEY', 'SECRET');
var chris = client.feed('user', 'chris');
// Add activity; message is a custom field - tip: you can add unlimited custom fields!
chris.addActivity({
actor: 'chris',
verb: 'add',
object: 'picture:10',
foreign_id: 'picture:10',
message: 'Beautiful bird. Absolutely beautiful. Phenomenal bird.'
});
// jack's 'timeline' feed follows chris' 'user' feed:
var jack = client.feed('timeline', 'jack');
jack.follow('user', 'chris');
// Read 'timeline' for jack - the post by chris will show up:
jack.get({ limit: 10 }).then(function(results) {
var activityData = results;
// Read the next page, using id filtering for optimal performance:
jack.get({ limit: 10, id_lte: activityData[activityData.length-1].id }).then(function(results) {
var nextActivityData = results;
});
});
// Remove activity by referencing foreign_id:
chris.removeActivity({ foreign_id: 'picture:10' });
chris = client.feed('user', 'chris')
# add an activity, message is a custom field. add as many custom fields as you'd like
chris.add_activity({
'actor': 'chris',
'verb': 'add',
'object': 'picture:10',
'foreign_id': 'picture:10',
'message': 'This bird is absolutely beautiful. Glad it\'s recovering from a damaged wing.'
})
# jack's timeline feed follows chris' user feed.
jack = client.feed('timeline', 'jack')
jack.follow('user', 'chris')
# read the timeline for jack, chris post will show up here
activities = jack.get(limit=10)['results']
# read the next page, use id filtering for optimal performance
next_activities = jack.get(limit=10, id_lte=activities[-1]['id'])['results']
# remove the activity by referencing the foreign_id you provided
chris.remove_activity(foreign_id='picture:10')
$chris = $client->feed('user', 'chris');
// Add an activity; message is a custom field - tip: add unlimited custom fields!
$data = array(
"actor" => "chris",
"verb" => "add",
"object" => "picture:10",
"foreign_id" => "picture:10",
"message" => "Beautiful bird. Absolutely beautiful. Phenomenal bird."
);
$chris->addActivity($data);
// jack's 'timeline' feed follows chris' 'user' feed:
$jack = $client->feed('timeline', 'jack');
$jack->followFeed('user', 'chris');
// Read the 'timeline' feed for jack, chris' post will now show up:
$activities = $jack->getActivities(10);
// Read the next page, use id filtering for optimal performance:
$last_activity = end($activities);
$options = array("id_lte" => $last_activity['id']);
$next_activities = jack->getActivities(10, $options);
// Remove the activity by referencing the foreign_id you provided:
$chris->removeActivity("picture:10", true);
Feed chrisUserFeed = streamClient.newFeed("user", "chris");
// Create an activity service
FlatActivityServiceImpl<SimpleActivity> flatActivityService = chrisUserFeed.newFlatActivityService(SimpleActivity.class);
// Add an activity
SimpleActivity activity = new SimpleActivity();
activity.setActor("chris");
activity.setObject("picture:10");
activity.setVerb("add");
SimpleActivity response = flatActivityService.addActivity(activity);
// jack's 'timeline' feed follows chris' 'user' feed:
Feed jackTimeline = streamClient.newFeed("timeline", "jack");
jackTimeline.follow('user', 'chris');
// Read the 'timeline' feed for jack, chris' post will now show up:
List<SimpleActivity> jackTimeline = jackTimeline.newFlatActivityService(SimpleActivity.class).getActivities(new FeedFilter.Builder()).getResults();
// Remove the activity by referencing the foreign_id you provided:
chrisUserFeed.deleteActivityByForeignId("picture:10");
import (
"github.com/pborman/uuid"
"github.com/GetStream/stream-go"
)
ianFeed, err := client.FlatFeed("flat", "ian")
if err != nil {
fmt.Println(err)
return
}
for i := 0; i < 15; i++ {
_, err := ianFeed.AddActivity(&getstream.Activity{
Verb: "post",
ForeignID: uuid.New(),
Object: getstream.FeedID("flat:ian"),
Actor: getstream.FeedID("flat:jack"),
MetaData: map[string]string{
// add as many custom keys/values here as you like
"message": fmt.Sprintf("message %d", i),
},
})
if err != nil {
fmt.Println(err)
}
}
jackFeed, err := client.FlatFeed("flat", "jack")
if err != nil {
fmt.Println(err)
}
// jack's timeline feed follows ian's feed.
jackFeed.FollowFeedWithCopyLimit(ianFeed, 100)
// read the timeline for jack, ian's posts will show up here
activities, err := jackFeed.Activities(&getstream.GetFlatFeedInput{Limit: 10, Offset: 0})
if err != nil {
fmt.Println(err)
}
for _, activity := range activities.Activities {
fmt.Println(activity)
}
// read the next page, use id filtering for optimal performance
activities, err := jackFeed.Activities(&getstream.GetFlatFeedInput{IDLT: activities.Activities[len(sl)-1]}, Limit: 10)
if err != nil {
fmt.Println(err)
}
for _, activity := range activities.Activities {
fmt.Println(activity)
// remove any activities that we read this time
jackFeed.RemoveActivityByForeignID(activity)
}