Current home automation systems allow remote monitoring and control of smart home devices. However, the problem caused by autonomous or self-controlled home automation is that predicting inhabitant behaviour and desires in every situation with 100% accuracy is unrealistic, at least for now. Therefore, the actual implementation of autonomous home automation may prove daunting and rigid for some users. Additionally, inhabitants want to be in control and want control over when and how things are done, this is due to their anxiety about losing control in favor of autonomous home automation. A personalized recommendation system for smart home residents with a certain degree of confidence is therefore ideal. This paper proposes a methodology to build a context-aware personalised recommender system for smart home automation. We suggest a predictive model for useful automation services of relevant smart home devices that smart home residents’ may wish to perform, by capturing the user’s current state and contextual preferences at that time. This is done by applying, in the first stage, an unsupervised algorithm to extract rules of behavior based on the resident’s previous interactions and passively captured in their daily lives by IoT-enabled sensors, and then, in the second stage, applying a supervised algorithm to recommend automation services in future instances when the actual behaviour of the user and context matches the established rules. Evaluations of smart home datasets show that the system produces correct recommendations with an average accuracy of 86.99%, a recall of 76.06%, and a precision of 82.67%.