add openfire logic