>
blocks spam callersTrue Caller does this[1], as does Google Voice.
> also has pre-screening
True Caller does their own version of this, where they'll tell you the name if it exists in their database.
> caller states their name before picking up phone
Google Voice does this exactly.
> working hours (i.e phone only rings at certain times, other wise goes to voicemail)
Google Voice does this, too[2]. There are also many apps that enable this. It may be a default feature of iOS and/or Android these days, for all I know.
1. https://www.truecaller.com/blog/avoid-spam-calls-with-trueca...
2. https://support.google.com/voice/answer/115145?hl=en