Yes you can do that programatically using t-SQL and a sql agent job.
Basically, you have to query distribution..MSSubscriptions and check the status column value to be 0 (Inactive).
Status of the subscription:
0 = Inactive;
1 = Subscribed;
2 = Active
Below T-SQL Will help you :
-- Author: Kin Shah
-- Date: 4-1-2013
-- For dba.stackexchange.com
-- Good to find out
-- publisher_id
-- publisher_db
-- publication_id
-- subscriber_id
-- subscriber_db
select * From distribution..MSsubscriptions
--- based on the above values, run below statement
--- this can be run using SQLAgent job
if exists (select 1 from distribution..MSsubscriptions where status = 0)
begin
UPDATE distribution..MSsubscriptions
SET STATUS = 2
WHERE publisher_id = '--publisher_id -- will be integer --'
AND publisher_db = '--publisher db name ---'
AND publication_id = '--publication_id -- will be integer --'
AND subscriber_id = '--subscriber_id -- will be integer ---'
AND subscriber_db = '-- subscriber_db ---'
end
else
begin
print 'The subscription is not INACTIVE ... you are good for now .... !!'
end