How to make Skype always active, reliably receiving and notifying about calls in the background
Your search it appears is for a solution that keeps Skype active only when you are on line . Since you couldn't find an app or root unless necessary , I am suggesting you to look at automation as an alternative
There are plenty of them, but I use MacroDroid, since it is easy to learn and the behaviour can be easily customized to get the result you want. Besides,free version allows you to create upto 5 macros and for the task at hand, free version suffices. I prefer automation as a first choice, when I need to get something running the way I like and not depend on apps.
The macro would look like this and needs to be tested. I gave up on using Skype, so can't test it, but in principle should run fine
Trigger
Regular Interval (can be configured in seconds,minutes, hours as you require - the macro runs periodically based on this setting)
Actions
Launch Skype&gt; force new with the constraint WiFi connected to any network
(You want Skype to be launched at the periodicity specificied in trigger, only when you are connected on Wifi. Assuming WiFi to be your mode of being on line)
Launch homescreen ( you don't want to see Skype launching when you are say mailing for example, so you get to the home screen for you to pick up the mail app and resume)
Constraint
Application running&gt; not in foreground&gt;Skype
( macro runs only when constraint is TRUE. Here, you are ensuring that macro isn't triggered when you are actually using Skype !!!. You can add more constraints like the time period you want the macro active, day of week etc. These can be added with AND (or) OR logical operator. Bottom line is macro runs when constraint(s) evaluate to a logical TRUE).
You would need to test and fine tune on how frequently you want this macro to run.
All the best....