Hey.Café Help   ›   Quick Answers   ›   Fresh and Hot feed and how it works

How Fresh & Hot works

You may have seen the feed called Fresh & Hot and there are a few main things about this feed. If content will show for you under the New feed it can show up in this feed, and the feed is always the same for everyone (excluding any block or café rules).

How we fetch what conversations to show

The feed is simple, here is the query to load the feed that you see.

SELECT * FROM conversations WHERE info_draft='0' AND info_score!='0' AND info_safespace<='50' ".$cafeblock." ".$restrictedblock." ORDER BY info_score DESC

Let's break down how this works, it fetches all conversations in order by score from the highest score to the lowest score. There are a few key things in the query you see, one being the score must be higher than 0, the SafeSpace score must be under 50 (the default for all accounts) and we exclude any conversations in cafés you have blocked. The one bit called "restrictedblock" is a function we have that returns a list of cafés that have limits in place, this is usually extreme cafés that post content people often report but don't break the rules, like political related cafés go on this list. This is a key reason we ask users to post content like that into cafés so that users who want to view it can and help categorize content.

How we calculate the score

The score is calculated by the number of comments and reactions, and the score gets smaller for every hour since the item was posted for 48 hours and after that it gets a score of 0. This is what makes it Fresh, all conversations will be within 48 hours in that feed.

Here is the entire code function as we calculate score, each reaction adds 8 to the score, and every comment adds 40. We than take away 1/48th the score every hour until 48 hours later and the score is set to 0.

$reactions=conversation_get_count_reactions($row["info_table"],$row["id"]);
$comments=conversation_get_count_comments($row["id"]);

$score=$score+($reactions*8);
$score=$score+($comments*40);

//--Older the content the lower the weight
$timdif=round(($system_api_timestamp_unix-convert_timeunix($row["date_created"]))/3600); //--Value will be how many hours old
if ($timdif>=48){
    $score=0;
}else{
    //--Remove 1/48th the score for every hour passed (Slow fade away)
    $score=round($score-(($score/48)*$timdif));
}

No AI, and no ranking based on your account

This simple calculation means we do not use anything about your account to calculate what you see, and everyone sees the same content. The reason we have this feed is an easy way as we grow and have lots of media and interactions to see what is currently being talked about, or interacted with. Where the conversations are happening.