The default notification settings are Banner and E-mail for all @mentions. This means anytime you @user, @channel or @team mention they will get an activity feed notice for the @mention and also an e-mail of the @mention if they are inactive as Adam says. Being completely logged out is a form of being inactive.
Now here is the big gotcha, users MUST favorite the channel in order to get @channel mentions. If they don't they don't get them. Luckily as an owner they added a new ability to cause everyone to auto favorite a channel, this is in Team Settings > Channel tab. Keep in mind thou they can unfavorite a channel once it's added. This will be changing to show/hide in the near future. So keep that in mind over the next month or so.
Ideally you want to train your users to Treat Teams like E-mail by downloading the mobile app. I always ask users do you check e-mail on your phone?
If the answer is yes, then I tell them they should check Teams on their phone. You really want to avoid at all costs training your users to rely on e-mail while learning Teams, they should be in it and get their notifications, but obviously at first to start out the e-mail alerts get them to keep coming back and checking and it's why if they are active they don't get notifications is actually not a bad thing. But if they have the desktop client and mobile apps they really won't need e-mail alerts as long as they are paying attention to the apps :) which comes in time.
Lots of factors, depends if you have mobile app open, etc. Basically it boils down to, are you signed in at all, so sign out/quitting Teams on all devices. And if you've been away for about 5 minutes. Activity on a computer with Teams open will put you in Available status.