add public api: setPresence