/// <summary>
        /// Instantiate a baby monitor of a baby as a caretaker.
        /// </summary>
        /// <param name="babyId">The baby monitor id.</param>
        /// <param name="caretakerCom">The caretaker communicator.</param>
        /// <param name="hospitalIoTDAL">The hospital floorplanning IoT data access.</param>
        public Baby(string babyId, ICaretakerCommunicator caretakerCom, IHospital hospitalIoTDAL = null)
        {
            this.BabyId = babyId;

            this.Caretakers = new List <Caretaker>();
            this._iotDal    = hospitalIoTDAL != null?hospitalIoTDAL.GetBabyphone(babyId) : new DomoticBabyphone(babyId);

            this._caretakerCommunicator = caretakerCom;
        }
        /// <summary>
        /// Instantiate a baby monitor of a baby as a nurse.
        /// </summary>
        /// <param name="babyId">The baby monitor id.</param>
        /// <param name="monitorName">The monitor name.</param>
        /// <param name="roomId">The room id.</param>
        /// <param name="hospitalIoTDAL">The hospital floorplanning IoT data access.</param>
        public Baby(string babyId, string monitorName, string roomId, IHospital hospitalIoTDAL = null)
        {
            this.BabyId      = babyId;
            this.MonitorName = monitorName;
            this.RoomId      = roomId;

            this.Caretakers = new List <Caretaker>();
            this._iotDal    = hospitalIoTDAL != null?hospitalIoTDAL.GetBabyphone(babyId) : new DomoticBabyphone(babyId);
        }