Add following div tag where presence icon need to be displayed:
then insert the following code near the bottom of your template. This code registers a callback to load the script and display the presence icon for you.
AddPostRenderCallback(ctx, function(){
EnsureScriptFunc("clienttemplates.js", "RenderUserFieldWorker", function() {
var getUserPersona = function() {
var renderCtx = new ContextInfo();
renderCtx.Templates = {};
renderCtx.Templates["Fields"] = {};
var fieldSchemaData = { "DefaultRender":"1", "PictureSize": "None"};
var listSchema = {"EffectivePresenceEnabled": "1", "PresenceAlt": Srch.Res.item_People_NoPresenceAvailable};
var userData = {"title": uName, "email": uEmail, "picture": uPicUrl, "sip": uSip};
var personaControlElement = document.getElementById(userPersonaId);
if (!Srch.U.n(personaControlElement))
{
personaControlElement.innerHTML = RenderUserFieldWorker(renderCtx, fieldSchemaData, userData, listSchema);
}
if(typeof(ctx.EnqueueImnRequest) == "undefined") { ctx.EnqueueImnRequest = false; }
if (ctx.EnqueueImnRequest == false) {
ctx.ClientControl.add_oneTimeResultRendered(function(){ if (typeof(ProcessImn) != "undefined") { ProcessImn(); } });
ctx.EnqueueImnRequest = true;
}
};
getUserPersona();
});
});