Ring signal generation moved to new class