Surabhil Sergy
Surabhil Sergy

Reputation: 2006

How to get comment count on livefyre?

I would like to get the comment count in my own database so that I can then sort my articles by comment count.

Every time a page is read on my site, I'd like to ask Livefyre how many comments that certain page has, then update the database with that count.

I tried to get the source of the page but it doesn't seem to be helpful.

Any suggestions?

Upvotes: 3

Views: 2312

Answers (2)

bengo
bengo

Reputation: 86

Atish's answer is correct as the best way for the JavaScript on the page to be notified of the Comment Count so that you can track via client-side analytics or update another place on the page where the count is rendered.

From the server side, you can use the 'init' request for any Conversation to retrieve the public comment count.

Finally, you can use the Livefyre Activity Stream API to get a real-time firehose of your community activity, which you can use to keep a count up to date on your end.

Upvotes: 4

Atish Narlawar
Atish Narlawar

Reputation: 680

Check custom implementation of Livefyre comment here

https://github.com/Livefyre/livefyre-docs/wiki

When you call

 fyre.conv.load({"network": self.network,
                                 authDelegate: self.authDelegate
                               }, [ self.config ], self.lfready)

you need to pass call back event in self.lfready i.e.

 app.on('commentCountUpdated', self.onCommentCountUpdated);

This 'commentCountUpdated' is livefyre call back event which returns you the number of comment counts.

 self.lfready = function(app) {
            //Wrap in try catch because Livefyre catches errors in the callback (seemingly)
            //And we want to catch and log ourselves.
            try{
                $.log("Livefyre is ready, attaching custom handlers");
                //Attach events
                app.on('commentCountUpdated', self.onCommentCountUpdated);
                //Only update to zero if the onCommentCount hasn't fired already
                self.$commentContainer.find("#lf_comment_stream").show();
            }catch(err){
                $.error("Livefyre failed to load", err);
                self.$commentContainer.hide();
            }
        };


self.onCommentCountUpdated = function(number){
            console.log("Latest count from LF stream event:" + number)

        };

Upvotes: 3

Related Questions