SYSTEM AND METHOD FOR IDENTIFYING AND ENFORCING THE USE OF SAFE CLEANING PRODUCTS AND CHEMICAL FOR CLEANING OF A BUILDING

A method of identifying the cleaning products and chemicals that are safe for a particular cleaning task and ensuring that the cleaning workers carry the identified cleaning products and chemicals to a cleaning job site. The cleaning workers are requested to activate geotagging and location sharing on their client devices. When the client device reaches within a threshold distance of a job site, the cleaning worker is requested to activate the camera of the client device and take geotagged images of the cleaning products that the cleaning worker is carrying. The images of the cleaning products are analyzed and are compared with the products and chemicals that are identified as being safe for the cleaning job. The cleaning worker gets clearance to perform the cleaning job only after the cleaning products that are actually carried to the job site and their chemical ingredients are verified as safe.

BACKGROUND

Janitorial services are provided to clean residential areas, offices, and public buildings. A varieties of chemical may be used during a cleaning job to clean and disinfect different surfaces may be made of tiles, glass, granite, marble, brace, nickel, iron, stainless steel, etc. Even though the chemicals may be adequate for a desired cleaning task, they may cause adverse effects on the human or pet occupants of a building.

DETAILED DESCRIPTION

One aspect of the present embodiments includes the realization that the wide range of chemicals that are used during a cleaning job to clean and disinfect different surfaces that are made of tiles, glass, granite, marble, brace, nickel, iron, stainless steel, etc., may cause adverse effects on the human or pet occupants of a building. The cleaning workers often purchase inexpensive products that may have unsafe chemicals. Even if the products with the proper chemicals are identified, there is no guarantee that the cleaning workers will actually carry and use the identified products at the job site.

Another aspect of the present embodiments includes the realization that surfaces that require cleaning may include large concentration of invisible microbes and bacteria. The cleaning workers may not be able to identify the contaminated surfaces and identify the proper methods and chemicals that are required to clean these surfaces.

The present embodiments, as described in detail below, solve the above-mentioned problems by providing a method and a system that identify the cleaning products and chemicals that are safe for a particular cleaning task and ensure that the cleaning workers carry the cleaning products and chemicals that are identified as safe to a cleaning job site. The cleaning workers may be requested to take geotagged images of the cleaning products that they are carrying when a client device associated with the cleaning workers reach within a threshold distance of a job site. The images of the cleaning products and their chemical ingredients may be analyzed and may be compared with the products and chemicals that are identified as being safe for the cleaning job. The cleaning workers may get clearance to perform the cleaning job only after the cleaning products that are actually carried to the job site and their chemical ingredients of the cleaning products are verified as safe.

The present embodiments may use handheld microbial detection sensors that may detect and measure adenosine triphosphate (ATP) which are found in the living cells. The measurement of ATP may provide a direct measurement of biological concentration on a surface. The results of the measurements may be stored in the profiles of cleaning customers to select proper cleaning products and chemical for furfure cleaning jobs. The results of the measurements may be analyzed to provide instructions to the cleaning workers on a job site to use proper cleaning methods (e.g., deep cleaning), to use proper safety equipment (e.g., to wear breathing masks or gloves), and/or to select proper cleaning products and chemicals from the authorized products cleaning products and chemicals that they have carrier to the job site to clean the contaminated surfaces.

FIG.1Ais a functional diagram illustrating an example embodiment of a system100for identifying approved chemicals and ensuring that identified products are carried by the cleaning workers to a job site, according to various aspects of the present disclosure. With reference toFIG.1A, the system100may include one or more janitorial service provider's servers110, several client devices121-122associated with properties131-132that require cleaning, and several client devices141-142associated with cleaning workers.

The janitorial service provider's servers110and the client devices121-122and141-142may communicate with each other through one or more networks190. The network(s)190may be one or more of the Internet, intranets, cellular networks, networks of servers/backend devices, and/or users' networks (e.g., Wi-Fi, Ethernet, etc.).

The janitorial service provider's servers110may maintain, or may have access to, the databases170. The databases170may include the cleaning products database171, the cleaning products' chemical ingredient database172, the safe products for cleaning specific items database173, the cleaning job description database174, the safe products for health issues database175, the cleaning customers database176, the cleaning workers database177, the weather information databases178, and the environmental information databases179.

The janitorial service provider's servers110may store the cleaning worker's information in a storage, such as, the cleaning workers database177. The cleaning workers associated with the client devices141-142may carry cleaning products, such as, the cleaning products151-152. The cleaning persons associated with the client devices141-142may carry measurement sensors, such as portable microbial detection sensors161, to measure the level of microbes and bacteria on the job site surfaces, such as kitchen sinks, counter tops, bathtubs, work benches, equipment, etc. Some of the portable microbial detection sensors161may measure ATP molecules, which are found in the living cells. The measurement of ATP may provide a direct measurement of biological concentration on a surface. ATP may be quantified by measuring the light produced through its reaction with the naturally occurring enzymes using a photometer that may be included in the microbial detection sensors161. The amount of light produced may be proportional to the amount of ATP present on the surface.

The results of the measurements may be stored in the profiles of cleaning customers, for example, in the cleaning customers database176. The results the measurements may be used to select proper cleaning products and chemical for furfure cleaning jobs. The results of the measurements may be analyzed to provide instructions to the cleaning workers on a job site to use proper cleaning methods (e.g., deep cleaning), to use proper safety equipment (e.g., to wear breathing masks or gloves), and/or to select proper cleaning products and chemicals from the authorized products cleaning products and chemicals that they have carrier to the job site to clean the contaminated surfaces.

The cleaning products database171may store the identification of different cleaning products available in the market. The cleaning products' chemical ingredient database172may store the chemical ingredients of different cleaning products. Some of these cleaning products may have to be avoided for certain cleaning jobs because either one of the occupants had an allergy or medical condition (e.g., as described below in stage408ofFIG.4B) that may be aggravated by using those products or the cleaning request may have indicated (e.g., as described below through the option462ofFIG.4B) that those cleaning products shall not be used. In addition, some cleaning jobs may include requests for particular cleaning products (e.g., as indicated in the display area472in stage409ofFIG.4Cdescribed below).

FIG.1Bis a functional diagram illustrating the client device of a cleaning worker taking geotagged images of cleaning products within a threshold distance of a job site to provide the evidence for the chemicals and the products that are being carried to the job site, according to various aspects of the present disclosure. With reference toFIG.1B, a threshold time prior to the start of the cleaning task, the janitorial service provider's servers110may instruct the client device121to turn on location sharing and enable geotagging of images taken by the camera. When the client device141reaches a threshold distance from the job site185, the janitorial service provider's servers110may instruct the person associated with the client device141to turn on the camera and take pictures of the cleaning products that are carried to the job site185.

The client device141may take one or more geotagged images (e.g., still images or video images) of the cleaning products151. The image(s) may show the products151and/or the associated labels166. The image(s) may be sent from the client device141to the janitorial service provider's servers110when the option180is selected. The janitorial service provider's servers110may analyze the images to determine the location of the images (e.g., whether the images were taken within a threshold distance of the job site), the name of the cleaning products151, and/or the chemical ingredients of the cleaning products listed on the labels166. The janitorial service provider's servers110may identify the chemical used in the cleaning products151from the chemicals listed on the labels and/or by searching the cleaning products' chemical ingredient database172.

When the images are taken within a threshold distance from the job site, the cleaning products and their chemical ingredients are not among the cleaning products and chemicals that are to be avoided at the particular cleaning site, and the cleaning products and their chemical ingredients include the requested cleaning products and chemicals, the cleaning worker may receive clearance to go to the job site. Further details are provided below with reference toFIGS.2A-2C.

Some embodiments may provide an application program (App)120(FIG.1B) that may be used by the client devices121-122and141-142. The application program may communicate with the janitorial service provider's servers110to exchange data. The janitorial service provider's servers110may communicate with the users of the client device121-122and141-142through the application program to send and receive instructions.

The client devices121-122may use the application program120to provide a description of the space and items that need cleaning, the time and date of the cleaning, and/or whether the request is for a one-time cleaning or for cleaning at a recurring schedule. The client devices141-142may use the application program to book available cleaning jobs and to communicate with the janitorial service provider's servers110and the client devices121-122during the cleaning jobs.

Some embodiments provide a system and method to ensure the cleaning products and chemicals that must be avoided during a cleaning job are not brough to the job site by the cleaning persons and/or the cleaning products that are specifically requested by a client are brought to the cleaning site.FIGS.2A-2Care schematic front view of a client device235that may include a cleaning service application program120that ensures the correct cleaning products are brought to a cleaning site, according to various aspects of the present disclosure. The client device235may be any of the client devices141-142ofFIG.1Athat are associated with cleaning persons.

FIGS.2A-2C, as shown, include nine operational stages201-209. Stage201shows a user interface (UI)232displayed on a display (e.g., a touchscreen)230of the client device235, which may include several selectable UI items (e.g., icons) of several applications120and221-228.

In the example ofFIGS.2A-2C, the person associated with the client device235has an upcoming booking and is heading to the cleaning job site. In stage202, a banner210may be displayed (e.g., as a pop-up message) on the UI232of the client device235indicating that a message from the cleaning service provider is received. The janitorial service provider's servers110may compare the current time and date with the time and date of the booking associated with the person using the client device235and may send the message to the client device a threshold time (e.g., 2 hours, 1 hour, several minutes, etc.) prior to the start of the cleaning task.

As shown, the banner210is selected in stage202. In response, the UI232in stage203may display the message260that is received from the cleaning service provider's servers110(FIG.1). The message260may instruct the client device235to turn on location sharing and enable geotagging of images taken by the camera. In response, the person using the client device235may use an application, such as the settings application221to enable location tracking and geotagging of the images (e.g., if those features have not been previously enabled).

In stage204, a banner215may be displayed (e.g., as a pop-up message) on the UI232of the client device235indicating that a message from the cleaning server provider is received. The janitorial service provider's servers110may compare the current location of the client device235with the location of the job site and may send the message to the client device235when the client device235is within a threshold distance of the cleaning job site.

FIG.3is a schematic front view of an electronic device that may include an application program that provides a user interface for identifying the location of a client device associated with a cleaning person, according to various aspects of the present disclosure. With reference toFIG.3, the user interface305may be displayed on the display of an electronic device such as a janitorial service provider's server110ofFIG.1A. The user interface305may be provided, for example, and without limitations, by an application program that may be installed on the server and/or after selecting a browser link to a website that may provide the location updates.

As shown, a geofence330may be defined around the job site185. The geofence330may define a region around the job site185to determine whether the client device235has reached within a threshold distance of the job site185is in order to send the message265ofFIG.2Bto the client device235. The geofence330may be defined as a region (e.g., a circle, a rectangle, an arbitrary shape, etc.) within the threshold distance around a point in the job site185. The geofence330may define the region that a cleaning work may turn on the camera of their client device and take pictures of the cleaning products that are being carried to the job site185. The UI305may also display the current location390of the client device of the cleaning person.

Referring back toFIG.2A, the banner215may be selected in stage204. In response, the UI232may display the message265that is received from the cleaning service provider's servers in stage205. The message265may instruct the client device235to turn on the camera and take geolocated pictures of the cleaning products that the person associated with the client device235is carrying to the job site. The message265may instruct to make sure the images show the product's label.

In response, one or more geotagged images (e.g., still images or video images)270may be taken by the camera of the client device235. For example, one or more geotagged images may be taken as described above with reference toFIG.1B. The image(s) may show the products151and/or the associated labels166. The image(s)270may be sent to the janitorial service provider's servers110(FIG.1A) when the option180is selected. It should be noted that images may be sent to the service provider's servers one at a time (as shown) or several images may be selected (e.g., from a recently taken album) and sent together to the janitorial service provider's servers.

The janitorial service provider's servers (FIG.1A) may analyze the images to determine the location of the images (e.g., whether the images were taken within a threshold distance of the job site), the name of the cleaning products151, and/or the chemical ingredients of the cleaning products151. The janitorial service provider's servers may determine the chemical ingredients of the cleaning products151from the images of the labels166and/or by searching the cleaning products' chemical ingredient database172.

When the images are taken within a threshold distance from the job site, the cleaning products151and their chemical ingredients are not among the cleaning products and chemicals that are to be avoided at the particular cleaning site, and the cleaning products151and their chemical ingredients include the requested cleaning products and chemicals, a message285may be received at stage207indicating that the products and their chemical ingredients are approved.

Some embodiments may optionally display a message287in stage207requesting the person associated with the client device235to take their body temperature and send a picture of the reading. As shown in stage208, the image290of the temperature reading may be taken and may be sent to the janitorial service provider's servers by selecting the option292.

In stage209, a message297may be received from the janitorial service provider's servers indicating that the cleaning person may proceed to perform the cleaning job. A message298may be received from the janitorial service provider's servers requesting the cleaning person to take a picture of themselves once the cleaning job is complete and they are outside the job site.

The present embodiments, as described with reference toFIGS.1A-1B and2A-2C, provide the technical advantage of using geolocation tracking, receiving and analyzing the geolocated images of cleaning products and chemical that are carried to a cleaning job site to ensure a cleaning worker that is within a threshold distance of a job site is not carrying the cleaning products and chemical that has to be avoided at the cleaning site, to ensure that the cleaning worker is carrying the requested cleaning products and chemicals, and to ensure that the cleaning worker is healthy before entering a job site.

The janitorial service provider's servers110may receive requests from the client devices121-122for cleaning workers (e.g., one or more persons) to be sent to a job site, such as, a home, a private office, a government office, etc., to perform cleaning.FIGS.4A-4Dare schematic front view of a client device435that may include a cleaning service application program that may interact with a cleaning customer, according to various aspects of the present disclosure. The figure illustrates, through thirteen stages401-413, a client device435using an application program120to provide information regarding a cleaning task.

With reference toFIGS.4A-4D, stage401may display similar information as stage201ofFIG.2A. As shown in stage401, the cleaning service application120is selected in stage401. In response to the selection of the cleaning service application120, the UI232in stage402may display one or more introductory messages491and several options437-438.

The application program120, in some embodiments, may provide different UI options for the persons that require cleaning services and the persons that provide cleaning services. In the example ofFIG.4A, the option437is selected in stage402indicating the person associated with the client device435may require cleaning services. For example, the client device435may be one of the client devices121-122ofFIG.1A.

In response to selecting the option437, the UI232may provide a display area441for entering an identification, such as, a phone number or an email (in the depicted example a phone number is requested), an option442to proceed, and an option443to return to the previous page. It should be noted that other embodiments may require other types of identifications, such as, for example and without limitations, a username and a password.

In response to selecting the option442, the application program may send a verification code to the mobile phone number provided in stage403. As shown in stage404, the verification code may be entered in the display area444. The person using the mobile device435may select the option445agreeing to the user agreement and the privacy policy, both of which may be available by selecting the associated links446and447, respectively.

In stage405, the UI232may provide a display area450for entering the property address that requires cleaning (the job site), a tool451for identifying the number of rooms, a tool452for identifying the number of bathrooms, a tool453for identifying the number of cleaners required, a tool454for identifying the number of hours requested, an option455for entering special instructions, and an option456for submitting the cleaning request.

In stage406, the requested information is provided and the option455is selected to provide special instructions. In response to selecting the option455, the UI232may display several options461-465in stage407. The option461may be selected to specify the occupants' allergies and medical conditions that may be adversely affected by cleaning products and their chemical ingredients. The option462may be selected to identify the chemicals to be avoided and the chemicals that are requested for cleaning. The option463may be selected to specify the type of surfaces to be cleaned. The option464may be selected to enter other instructions or special requests (e.g., a request to leave the kitchen windows open during the cleaning or not letting a pet out of the building). The option465may be selected to return to the previous page.

Stage408displays the UI232after the option461is selected in stage407. In stage408, the UI232may provide a display area467for entering human related allergies or medical conditions, a display area468for entering the types of pets and their allergies or medical conditions, an option495to add the entered conditions to the user's profile, and an option469to return to the pervious page. As shown, the human allergies or medical conditions and/or the types of pets and their allergies and medical conditions may be specified in stage408. As described below, the present embodiments enforce strict privacy measurements to ensure private information of the users are kept confidential. For example, the private information of the users may be kept their profiles and may not be shared with other users or administrators of system100.

Stage409displays the UI232after the option462is selected in stage407. In stage409, the UI232may provide a display area471for specifying the chemicals to be avoided, a display area472for specifying the chemicals that are requested, an option496to add the chemicals to be avoided and the chemicals to be used for cleaning to the user's profile, and an option473to return to the pervious page. As shown, the chemicals to be avoided and the chemicals to be used may be specified in stage409.

Stage410displays the UI232after the option463is selected in stage407(stage407is not shown immediately prior to stage410for brevity). In stage410, the UI232may provide several options480for specifying the type of surfaces that need to be cleaned and an option481to return to the pervious page. As shown, the type of surfaces that need to be cleaned may be specified in stage410. The option481may be selected in stage410to return to the previous page.

In response, the UI232in stage411may display the same information of as stage407. The option464may be selected in stage411. In response, the UI232in stage412may provide a display area474for specifying any other instructions or special requests that the user may have. As shown, several additional instructions and special requests are specified in the example of stage412. The UI232in stage411may provide an option497to add the additional instructions and special requests to the user's profile, and an option475to return to the pervious page.

When the option465is selected in stage411, the UI232in stage413may display the same information of as stage406. When the option456is selected in stage413, the application program may send the requested cleaning task to the janitorial service provider's servers110ofFIG.1A.

Some embodiments create profiles for users and provide the users with the tool to include their preference in their profiles. For example, as discussed above with reference to option495provided in stage408, option496provided in stage409, and the option497provided in stage412, the UI232of the present embodiments provides the technical advantage of allowing a user to add detailed cleaning preferences, sensitivities, health and environmental concerns to tailor product recommendations and cleaning system optimizations.

The janitorial service provider's servers110may store the cleaning job description (e.g., the types of surfaces to be cleaned, the products or chemicals to be avoided, the requested cleaning products and chemicals, and/or the other instructions or special requests associated with the cleaning request) in a storage, such as the cleaning job description database174. When the client device that has sent the request is associated with a new client, the client information may be stored in the cleaning customers database176. The client's private data, such as, the occupants' allergies and medical conditions, may be kept as confidential data in the user's profile. The service provider's servers110may use the occupants' allergies and medical conditions to identify the products and chemicals to avoid and the products and chemicals that are safe for a cleaning job but may not share the clients' private date with humans or third-party entities.

With continued reference toFIG.1A, the janitorial service provider's servers110may receive cleaning requests from the client devices121-122(e.g., as described above with references toFIGS.4A-4D). The janitorial service provider's servers110may provide the cleaning request to the client devices141-142of the cleaning persons to find the cleaning worker(s) required for the requested cleaning tasks. The janitorial service provider's servers110may provide the cleaning request by sending push notifications (e.g., text messages or emails), by providing a website that may be accessible to the client device121-122and141-142, or by an application program.

The application program120, in some embodiments, may include a UI for the cleaning workers to review and accept their upcoming tasks and the available cleaning tasks.FIG.5is a schematic front view of a client device535that may include a cleaning service application program that may interact with a cleaning service worker, according to various aspects of the present disclosure. The figure illustrates a UI232that may be displayed on a display (e.g., a touchscreen)530of the client device535. The client device535may be, for example, any of the client devices141-142ofFIG.1A.

The figure, as shown, includes two operational stages501-502. The UI232in stage501may be displayed after the option438is selected in stage402ofFIG.4Aand similar information as described with reference to stages403-404ofFIG.4Aare received by the client device535.

As shown in stage501, the UI232may display one or more upcoming bookings520and/or one or more cleaning requests540. The upcoming bookings520are the tasks that are already accepted by, and assigned to, the user of the client device553. For each upcoming booking520, the UI232may display a brief information, such as, the date524of the cleaning job, the type of cleaning521, the address of the property to perform the cleaning522, and the number of persons523required for performing the cleaning. Further details of each booking may be displayed when the booking is selected on the UI232.

For each cleaning request540, the UI232may display brief information, such as, the date544of the task, the type of cleaning required541, the address of the property to perform the task542, and the number of persons543required for performing the task. Further details of each task may be displayed when a task is selected on the UI232. The UI232may also provide a scroll bar550and a scroll button555to display additional upcoming bookings520and/or cleaning requests540.

In stage501, one of the cleaning requests is selected. In response, the UI232in stage502may display several options561-564to display further information about the cleaning task. Selecting any of the561-564may display information that was entered for the cleaning task, for example, as described above with reference to options461-464ofFIG.4B. The UI232may provide an option565to return to the previous page.

The UI232in stage501may provide an option561to accept each cleaning request and an option562to discard a cleaning request. It should be noted that discarding a cleaning request only removes the cleaning request from the UI displayed on the display530of the client device535. The cleaning request may be displayed on the UI of any other client device that has not discarded that cleaning request. Any cleaning request that is selected, may be added to the bookings of the client device535and may not be displayed as a cleaning request to any other client devices. When the client device535is associated with a new cleaning worker (e.g., when the client device is assigned to a worker by an employer), the cleaning worker's identification, address, work experience, etc., may be received through the UI232and may be sent to the janitorial service provider's servers110.

FIGS.6A-6Bare a flowchart illustrating an example process600for ensuring that cleaning products and their chemical components are safe for a particular cleaning job, according to various aspects of the present disclosure. The process600, in some of the present embodiments, may be performed by the processor of an electronic device, such as a janitorial service provider server110ofFIG.1A.

With reference toFIGS.6A-6B, a request may be received (at block605) from a first client device for cleaning a building, the request may include time and date of cleaning, one or more health issues of occupants of the building, and the identification of items that require cleaning. For example, a janitorial service provider's server110ofFIG.1Amay receive the request when the option456in stage413ofFIG.4Dis selected.

Next, one or more cleaning products may be identified (at block610) for cleaning the items that require cleaning. For example, the cleaning request may have identified one or more types of surfaces to be cleaned as described above with reference to stage410ofFIG.4C. The processor of the janitorial service provider's server110ofFIG.1Amay use the type of surfaces to be cleaned and may identify a plurality of cleaning products that are safe for cleaning the surface from a database, such as, the safe products for cleaning specific items database173.

For example, if the items that require cleaning include marble the janitorial service provider's server110may exclude products that contain vinegar or lemon to avoid damaging the marble. As another example, if the items that require cleaning include granite, the janitorial service provider's server110may exclude products that contain bleach, vinegar, lemon, and hydrogen peroxide to avoid damaging the granite.

Next, the chemical ingredients of the cleaning products may be identified (at block615). For example, the processor of the janitorial service provider's server110may use a database, such as the cleaning products' ingredient database172ofFIG.1A. A first set of one or more cleaning products that are safe for cleaning of the building may be identified (at block625) based on the allergies and medical conditions of the occupants of the building and the ingredients of the cleaning products.

For example, the processor of the janitorial service provider's server110may use the information associated with the cleaning request, such as, for example, and without limitations, the types of surfaces to be cleaned, the occupants' allergies and medical conditions, the products or chemicals to be avoided, the requested cleaning products and chemicals, and/or the other instructions or special requests associated with the cleaning request to identify the set of cleaning products that are safe for cleaning the building. The processor of the janitorial service provider's server110may use information from a database, such as the safe products for health issues database175ofFIG.1Ato identify cleaning products that are safe for the allergies and medical conditions of the occupants of the building. The processor of the janitorial service provider's server110may use measurements that are taken by microbial detection sensors161at a job site to select safe products and chemicals as well cleaning methods that are required for a specific job site.

The processor of the janitorial service provider's server110may determine that an occupant of the building has skin allergy and may eliminate any products that contains formaldehyde. As another example, the processor of the janitorial service provider's servers110may determine that an occupant of the building has asthma; and eliminating any products that contains phthalates or Quaternary ammonia compounds (QUATS). As another example, the processor of the janitorial service provider's servers110may determine that an occupant of the building has respiratory system irritation condition, skin irritation condition, and/or an eye irritation condition and may eliminate any products that contains methylisothiazolinone or ammonium hydroxide.

The time and date, the identification of the building, the identification of the first set of one or more cleaning products, and/or the number of cleaning workers needed for the cleaning task may be provided (at block630) to the electronic devices of several cleaning workers. For example, the processor of the janitorial service provider's server110may provide the information regarding the cleaning task to the client devices of a plurality of cleaning workers as described above with reference toFIGS.1A and5.

A booking may be received (at block635) from a second client device associated with a cleaning worker to clean the building using the first set of cleaning products at the requested time and date. For example, the processor of the janitorial service provider's server110may receive a booking for the cleaning task when the option561associated with one of the cleaning requests540is selected in stage501ofFIG.5.

A request may be sent (at block640) to the second client device a threshold time before the time and date of the cleaning task to turn on location sharing, and geotagging of the images taken by the camera of the second client device. For example, the processor of the janitorial service provider's server110may send the message260to the client device235of the cleaning worker, as described above with reference to stage203ofFIG.2A.

A request may be sent (at block650) to the second client device to enable the camera of the second client device and take geotagged images of the set of cleaning products carried by the cleaning worker when the second client device is within a threshold distance of the building. For example, the processor of the janitorial service provider's server110may send the message265to the client device235, as described above with reference to stage205ofFIG.2B.

One or more geotagged images of the set of cleaning products carried by the janitorial worker may be received (at block655) from the second client device. For example, the processor of the janitorial service provider's server110may receive one or more geotagged images of the set of cleaning products carried by the janitorial worker when the option180is selected inFIG.1Bor the option180is selected on the UI232of the client device235in stage206ofFIG.2B.

The geotagged images may be analyzed (at block660). A determination may be made (at block665) whether the geotagged images were taken within a threshold distance of the building. If not, the process600may proceed back to block650, which was described above. Otherwise, a determination may be made (at block670) whether the products carried by the cleaning worker match the first set of products required to clean the building. For example, the processor of the janitorial service provider's server110may identify the cleaning products and chemical that the cleaning worker is carrying by analyzing the geotagged images. The chemicals in the cleaning products may also be found by searching the cleaning products' chemical ingredient database172. The processor of the janitorial service provider's server110may determine whether the cleaning products carried to the job site match the first set of products that are determined to be safe and/or required for the specific cleaning job.

If not, a message may be sent (at block675) to the second client device indicating that the products carried by the janitorial worker are not proper for the cleaning job. The process600may then end. Otherwise, clearance may be provided (at block680) to the janitorial worker to perform the cleaning of the building. For example, the processor of the janitorial service provider's server110may send the message298to the client device235, as described above with reference to stage209ofFIG.2C. The process600may then end.

FIG.7is a functional diagram illustrating an example architecture of a client device, according to various aspects of the present disclosure. The client device700may be any of the client devices121-122and141-142ofFIG.1A. With reference toFIG.7, the client device700may include one or more processors705, computer readable media710, input/output (I/O) interfaces715, one or more communication interfaces720, one or more cameras725, an audio subsystem730, a display735, and other I/O devices740.

The computer readable media710may include volatile memory (e.g., high-speed random access memory), non-volatile memory (e.g., flash memory), a combination of volatile and non-volatile memory, and/or any other type of memory. The computer readable media710may be non-transitory computer readable media. The computer readable media710may include different types of memory units, such as, read-only-memory, volatile read-and-write memory, and/or non-volatile read-and-write memory. The read-only-memory may store static data and instructions that are needed by the processor(s)705. The non-volatile read-and-write memory may store instructions and data even when the power to the non-volatile memory is off. Some embodiments may use a mass-storage device (such as a magnetic or optical disk and its corresponding disk drive) as the non-volatile read-and-write memory.

The volatile read-and-write memory device may be random access memory and may be used as system memory. The system memory may store some of the instructions and data that the processor needs at runtime. In some embodiments, the processes of the present embodiments may be stored in the system memory, the non-volatile memory, and/or the read-only memory. From these various memory units, the processor(s)705may retrieve instructions to execute and data to process in order to execute the processes of some embodiments.

The communication interface(s)720may include interfaces to communicate wirelessly and/or through wire with one or more networks, such as the network(s)190ofFIG.1A. The communication interface(s)720may include wireless transceiver(s) such as, for example, and without limitations, cellular transceiver(s), WLAN transceiver(s), WiMAX transceiver(s), HD Radio transceiver(s), UWB transceiver(s), ZigBee transceiver(s), RFID transceiver(s), and/or 60 GHz transceiver(s). The client device700may include a global positioning system (GPS) receiver780to receive the location of the client device700from one or more satellites. The location may be used for geolocation determination (e.g., as described with reference toFIG.5) and/or for geotagging of the images taken by the camera(s)725(e.g., as described above with reference toFIGS.1B and2A-2D).

The camera(s)725may be coupled to one or more optical sensors745(e.g., a charged coupled device (CCD) optical sensor, a complementary metal-oxide-semiconductor (CMOS) optical sensor, etc.). The camera(s)725coupled with the optical sensors745may facilitate camera functions, such as image and/or video data capturing.

The audio subsystem730may be coupled to one or more speakers750to output audio. The audio subsystem730may be coupled to one or more microphones755to facilitate voice-enabled functions, such as voice recognition, digital voice recording, etc. The audio subsystem730may be used to receive user queries or instructions. The audio subsystem730may be used to provide instructions to the cleaning workers at a job site. The display735, in some embodiments, may be a touchscreen. The other I/O devices740may include keyboard, cursor control devices (e.g., mouse, trackball, touchpad, etc.) and/or one or more buttons.

The I/O interfaces715may be coupled to various sensors and subsystems, including the wireless communication subsystem(s)720, the camera(s)725, the audio subsystem730, the display735, the other I/O devices740, etc. The I/O interfaces715may enable communication between the processors705and different sensors and subsystems of the client device700. Further details of client devices and other electronic devices of the present embodiments are described below with reference toFIG.10.

FIG.8is a software block diagram800illustrating examples of software components of a janitorial service provider server, according to various aspects of the present disclosure. With reference toFIG.8, the software components of a janitorial service provider server110(FIG.1A) may include, but are not limited to, a product recommendation engine810, a cleaning system optimizer815, a user account and profile management module820, a real-time environment analyzer825, an inventory management module830, and an educational and training resources module835. The software components may be implemented in machine readable code and may be stored in memory units (e.g., the memory units1020,1030, and/or1035ofFIG.10. The software components may be executed by a processing unit (e.g., a process unit1010ofFIG.10).

The product recommendation engine810may analyze surface types, contaminant measurements, and user preferences to recommend the most effective and environmentally friendly cleaning products. The product recommendation engine810may perform data collection. The product recommendation engine810may collect information about different types of surfaces, such as hardwood floors, carpets, tiles, glass, etc. This may involve gathering data on the materials, textures, and finishes. The product recommendation engine810may gather data on common contaminants found on surfaces, such as dust, dirt, grease, stains, etc.

The product recommendation engine810may capture user preferences through surveys, user feedback, or previous purchase history. This may include preferences for specific brands, scents, eco-friendly options, etc. The product recommendation engine810may use the information the cleaning customers enter into their profiles (e.g., as described with reference to the options495-497ofFIGS.4A-4D).

The product recommendation engine810may perform feature extraction by identifying key features for each surface type and contaminant. For example, certain cleaning agents might be more effective on specific contaminants or surfaces. The product recommendation engine810may be configured to take into account the identified features and use them to recommend cleaning products.

The product recommendation engine810may consider factors like environmental impact, user preferences, and the efficacy of products in removing specific contaminants from particular surfaces to make product recommendations. The product recommendation engine810may implement machine learning techniques, such as classification or recommendation algorithms, to learn patterns and relationships from the data.

The product recommendation engine810may utilize interaction with the user, for example, through user interfaces described above with reference toFIGS.4A-4D, where users may input information about the surface type and contaminants they are dealing with. The users may specify preferences, such as eco-friendliness, scent preferences, or brand preferences. Based on the input provided by the user, the product recommendation engine810may generate recommendations for cleaning products. The recommendations may be ranked based on factors like effectiveness, environmental impact, and user preferences. The recommendations may promote the use of eco-friendly cleaning products and practices, contributing to sustainability efforts and reducing the environmental footprint.

The product recommendation engine810may implement machine learning and adaptation by implementing a feedback loop to collect user feedback after the completion of each cleaning job. The user interactions and feedback may be used to continuously improve the machine learning algorithm. The machine learning algorithm may learn over time based on the effectiveness of the product recommendation engine's recommendations and may adjust the suggestions accordingly.

The product recommendation engine810may receive ATP measurement data from hand held microbial detection sensors161, thorough the client devices141-142of cleaning workers at the job site. The product recommendation engine810may use the ATP measurement data to select safe products for an ongoing cleaning job or for a future cleaning job at the site where the ATP measurements have been made.

The cleaning system optimizer815may utilize machine learning to understand the best cleaning methodologies for various surfaces, adapting to user habits, and recommending optimal cleaning systems for specific cleaning tasks based on the usage of the surface. Software components, such as the product recommendation engine810and the cleaning system optimizer815may implement one or more machine learning models for different tasks for a job site cleaning application. For example, one model may be focused on image recognition to identify different surfaces or cleaning products, while another model may be designed for natural language processing to understand user queries or instructions. The users may benefit from a tailored cleaning experience with optimal product recommendations and cleaning methodologies for different surfaces and conditions.

In the field, the machine learning model may communicate with the cleaning service application program120, described above, to provide real-time recommendations or guidance to the cleaning workers. For example, the application120may receive suggestions for suitable cleaning products based on the type of surface or offer personalized cleaning schedules based on historical data.

The machine learning model may be improved over time by incorporating a feedback loop where user interactions and outcomes are used to continuously improve the model's performance. The feedback loop may include user ratings, feedback on suggested cleaning methods, or adjustments based on the user's preferences. The machine learning model may provide data filtering and privacy for the user-generated data. The machine learning model may be used to filter and process user-generated data. Privacy considerations are crucial, and strict measures are in place to ensure the responsible handling of user data. For example, the cleaning workers may not be able to see the reason (e.g., the cleaning client's health or safety issues) for the selection or avoidance of particular products chemicals at a job site.

The user account and profile management module820provides tools for the users to create profiles with detailed cleaning preferences, sensitivities, health and environmental concerns to tailor product recommendations and cleaning system optimizations (e.g., as described above with reference toFIGS.4A-4D). The real-time environment analyzer825may utilize the weather information databases178and environmental information databases179to provide real-time suggestions for cleaning adjustments based on external conditions, ensuring optimal cleaning results. The real-time environment analyzer825may provide humidity-based recommendations. For example, if a weather database178(FIG.1A) indicates high humidity levels, the real-time environment analyzer825may suggest using specific cleaning products that are effective in such conditions. High humidity may affect drying times, and using products optimized for these conditions may improve overall cleaning results.

The real-time environment analyzer825may receive ATP measurement data from hand held microbial detection sensors161, thorough the client devices141-142of cleaning workers at the job site. The real-time environment analyzer825may provide feedback for the cleaning methods (e.g., deep cleaning) and/or the use of safe chemical that the cleaning workers may have brought to the job site based on the ATP measurement data.

The real-time environment analyzer825may consider the current temperature from the weather information databases178and may identify temperature-dependent cleaning products. For example, during colder weather, the real-time environment analyzer825may recommend using cleaning solutions that work well in lower temperatures, ensuring that the products remain effective and do not freeze. The real-time environment analyzer825may consider allergen alerts. For example, if an environmental information database179(FIG.1A) reports high pollen or allergen levels, the cleaning application may provide suggestions for using air purifiers or adjusting cleaning practices to minimize allergen exposure. This may be especially useful for individuals with allergies or respiratory conditions.

The real-time environment analyzer825may consider the UV index and sunlight exposure. The knowledge of the UV index and sunlight intensity may inform the application120about optimal times for certain cleaning tasks. For example, real-time environment analyzer825may recommend cleaning tasks that involve sunlight exposure during times of the day when UV levels are lower to avoid potential health risks or product degradation. Such a feedback may be provided, for example, to a client who is scheduling a cleaning job using the UI ofFIGS.4A-4D.

The real-time environment analyzer825may provide outdoor cleaning timing recommendations. For example, the information about precipitation and upcoming weather events may be received from the weather information databases178and may be used to suggest optimal times for outdoor cleaning tasks. The real-time environment analyzer825may instruct the application program120to advise the users to postpone certain tasks if rain is expected shortly to avoid wasted effort.

The real-time environment analyzer825may provide suggestions based on environmental impact. Environmentally friendly practices may be promoted based on the weather conditions and precipitations received from the weather information databases178. For example, on days with heavy rainfall, real-time environment analyzer825may suggest reducing the use of water-intensive cleaning methods since nature is providing a natural cleaning effect.

The real-time environment analyzer825may provide energy efficient recommendations. For example, if the environmental information database179indicate peak energy consumption times, the application may suggest scheduling energy-intensive cleaning tasks during off-peak hours to contribute to energy efficiency efforts. The real-time environment analyzer825may provide weather-resistant materials feedback to the users through the cleaning service application120. For example, in regions with extreme weather conditions, the cleaning service application120may provide recommendations for using weather-resistant cleaning materials or methods to ensure longevity and effectiveness.

The inventory management module830assists users in managing their cleaning product inventory by tracking usage, expiration dates, and suggesting replenishments, minimizing waste, and ensuring the availability of necessary supplies. The educational and training resources module835may offer educational and training content on proper cleaning techniques, best practices, and the science behind different cleaning products, empowering users to make informed choices.

FIG.9is an example sequence diagram900illustrating message flows and operations performed for ensuring that safe cleaning products are selected and carried to a cleaning job site, according to various aspects of the present embodiments. With reference toFIG.9, the first electronic device901may be a janitorial service provider's server110ofFIG.1A, the second electronic device902may be one of the client devices121-122ofFIG.1A, and the third electronic device903may be one of the client devices141-142ofFIG.1A.

As shown, a request for cleaning a building including time and date; health issues of the occupants; identification of items to be cleaned; and/or number of cleaning workers required may be received (at step905) by the first electronic device901from the second electronic device902. For example, the request may be received by the processor of the janitorial service provider's server110from the client device435as described above with reference to stages405-413ofFIGS.4B-4Dand block605ofFIG.6A.

The first electronic device901may identify (at block910) several cleaning products for cleaning the items to be cleaned. For example, the processor of the janitorial service provider's server110may identify several cleaning products for cleaning the items to be cleaned as described above with reference to block610ofFIG.6A.

The first electronic device901may identify (at block915) the chemical ingredients of the plurality of cleaning products. For example, the processor of the janitorial service provider's server110may identify the chemical ingredients of the plurality of cleaning products as described above with reference to block615ofFIG.6A.

The first electronic device901may identify (at block920) one or more products to use for cleaning based on the allergies and medical conditions of the occupants. For example, the processor of the janitorial service provider's server110may identify a first set of one or more cleaning products in the plurality of cleaning products that are safe for cleaning of the building based on the allergies and medical conditions of the occupants of the building and the ingredients of the plurality of cleaning products, as described above with reference to block625ofFIG.6A.

The first electronic device901may provide (at step930) the time and date, the identification of the building, the identification of the set of one or more cleaning products, and the number of required cleaning workers to the third electronic device. For example, the processor of the janitorial service provider's server110may provide the information to an application program that is used by the client device535of a cleaning worker, as described above with reference toFIG.5and block630ofFIG.6A. In some embodiments, the processor of the janitorial service provider's server110may provide the information on a website that is accessible by the client devices of cleaning workers. In some embodiments, the processor of the janitorial service provider's server110may send push notifications to the client devices of the cleaning workers when a cleaning request is available that meeting one or more criteria set by the cleaning workers (e.g., the type of the cleaning job, time and date, location of the job site, number of required cleaning persons, etc.).

The first electronic device901may receive (at step935) a booking from the third electronic device to clean the building with the set of products at the requested time and date. For example, the processor of the janitorial service provider's server110may receive a booking from the client device535(FIG.5) of a cleaning worker when the option561associated with a cleaning request is selected.

The first electronic device901may send (at step940) a request to the third electronic device to turn on location sharing and enable geotagging of images taken by the camera. For example, the processor of the janitorial service provider's server110may send a message, such as the message260described above with reference to stage203ofFIG.2A.

The first electronic device901may send (at step945) a request to the third electronic device to turn on the camera and take geotagged images of the products being carried to the job site with the camera. For example, the processor of the janitorial service provider's server110may send a message, such as the message265described above with reference to stage205ofFIG.2A.

The first electronic device901may receive (at step950) one or more geotagged images of the cleaning products carried to the job site. For example, the processor of the janitorial service provider's server110may receive one or more geotagged images of the cleaning products from the client device235of the cleaning worker when the option280is selected in stage206ofFIG.2B.

The first electronic device901may determine (at block955) that the cleaning product images match products required for cleaning the building and the geotagged location indicates the images were taken within a threshold distance of the building. For example, the processor of the janitorial service provider's server110may determine that the geotagged images were taken within a threshold distance of the job site (as described above with reference to block665ofFIG.6B) and the cleaning products carried by the cleaning worker match the set of products required to clean building (as described above with reference to block670ofFIG.6B).

The first electronic device901may send (at step960) a clearance to the third electronic device to proceed to perform the cleaning job. For example, the processor of the janitorial service provider's server110may send the message298to the client device235of the cleaning worker, as described above with reference to stage209ofFIG.2C.

FIG.10conceptually illustrates an electronic system1000with which some embodiments of the invention (e.g., the servers110, the client devices121-122and141-142, etc., described above) are implemented. The electronic system1000may be used to execute any of the control, virtualization, or operating system applications described above. The electronic system1000may be a computer (e.g., desktop computer, personal computer, tablet computer, server computer, mainframe, blade computer etc.), a smartphone, a personal digital assistant (PDA), or other types of electronic device. Such an electronic system includes various types of computer readable media and interfaces for various other types of computer readable media. The electronic system1000may include a bus1005, processing unit(s)1010, a system memory1020, a read-only memory (ROM)1030, a permanent storage device1035, input devices1040, and output devices1045.

The bus1005collectively represents all system, peripheral, and chipset buses that communicatively connect the numerous internal devices of the electronic system1000. For instance, the bus1005communicatively connects the processing unit(s)1010with the read-only memory1030, the system memory1020, and the permanent storage device1035.

The read-only-memory1030stores static data and instructions that are needed by the processing unit(s)1010and other modules of the electronic system. The permanent storage device1035, on the other hand, is a read-and-write memory device. This device is a non-volatile memory unit that stores instructions and data even when the electronic system1000is off. Some embodiments of the invention use a mass-storage device (such as a magnetic or optical disk and its corresponding disk drive) as the permanent storage device1035.

Other embodiments use a removable storage device (such as a flash drive, memory cards, etc.) as the permanent storage device. Like the permanent storage device1035, the system memory1020is a read-and-write memory device. However, unlike storage device1035, the system memory is a volatile read-and-write memory, such as random-access memory. The system memory stores some of the instructions and data that the processor needs at runtime. In some embodiments, the invention's processes are stored in the system memory1020, the permanent storage device1035, and/or the read-only memory1030. From these various memory units, the processing unit(s)1010retrieve instructions to execute and data to process in order to execute the processes of some embodiments.

The bus1005also connects to the input and output devices1040and1045. The input devices enable the user to communicate information and select commands to the electronic system. The input devices1040may include alphanumeric keyboards and pointing devices (also called “cursor control devices”). The input devices1040, in some embodiments, may include cameras, sensors, microphones, near field communication (NFC) readers, and/or radio-frequency identification (RFID) readers. The input devices1040, in some embodiments, may include pushbutton, switches, and/or knobs. The output devices1045may include printers, speakers, light sources (e.g., flashlights), and display devices, such as cathode ray tubes (CRT), liquid-crystal displays (LCD), light-emitting diode (LED) displays. Some embodiments may include devices, such as a touchscreen, that function as both input and output devices. The output devices1045, in some embodiments, may display images generated and/or received by the electronic system.

Finally, as shown inFIG.10, bus1005also couples electronic system1000to a network1025through a network adapter (not shown). In this manner, the computer may be a part of a network of computers (such as a local area network (“LAN”), a wide area network (“WAN”), an Intranet, or a network of networks, such as the Internet. Any or all components of electronic system1000may be used in conjunction with the invention.

In a first aspect, an automated method of providing health security for cleaning a building is provided. The method may be performed by the processor of a janitorial service provider's server. The method receives a request from a first electronic device for cleaning a building. The request includes a time and a date of cleaning, a set of one or more health issues of occupants of the building, and the identification of items that require cleaning in the building. The method identifies several cleaning products for cleaning the items that require cleaning in the building. The method identifies chemical ingredients of the cleaning products. The method identifies a first set of one or more cleaning products from the several cleaning products for cleaning of the building based on the health issues of occupants of the building and the chemical ingredients of the cleaning products. The method provides the time and date, an identification of the building, and the identification of the first set of one or more cleaning products to electronic devices of several janitorial workers. The method receives a request from a second electronic device in the electronic devices of the janitorial workers to clean the building using the first set of cleaning products at the time and date of cleaning. A threshold time before the time and date of cleaning, the method sends a request to the second electronic device to turn on geolocation tracking, enable a camera of the second electronic device, and take geolocated images of a second set of cleaning products carried by the janitorial worker. The method receives, from the second electronic device, a set of one or more geolocated images of the second set of cleaning products. The method analyzes the set of one or more geolocated images. Based on the analysis, the method determines that the second electronic device is within a threshold distance of the building and the second set of cleaning products match the first set of products. The method provides a clearance to the janitorial worker to perform the cleaning of the building based on the determination.

In an embodiment of the first aspect, the method receives, by the server from the second electronic device, adenosine triphosphate (ATP) measurements made by a microbial detection sensor on a first surface in the building measurements. The method selects, by the processor of the server, at least one cleaning product in the first set of one or more cleaning products to clean the first surface based on the ATP measurements. The method sends, by the processor of the server, an instruction to the person associated with the second electronic device to use the at least one product on the first surface.

In another embodiment of the first aspect, the method receives, by the server from the second electronic device, ATP measurements made by a microbial detection sensor on a first surface in the building measurements. The method receives, by the server from the second electronic device, ATP measurements made by a microbial detection sensor on a first surface in the building measurements. The method selects, by the processor of the server, one or more cleaning products in the first set of one or more cleaning products to clean the first surface based on the ATP measurements. The method updates a profile of a user of the first client device to recommend the use of the one or more cleaning products for cleaning the first surface in furfure cleaning jobs of the building.

In another embodiment of the first aspect, the method receives cleaning product preferences from the first client device. the method updates a profile of a user of the first client device, by the processor of the server, based on the received product preferences, where identifying a first set of one or more cleaning products in the plurality of cleaning products for cleaning of the building further includes identifying a first set of one or more cleaning products based on the cleaning product preferences in the profile of the user of the first client device.

In another embodiment of the first aspect, identifying the first set of one or more cleaning products for cleaning of the building includes receiving, by the processor of the server, a range of temperature predictions at the time and date of cleaning from a weather information database and identifying the first set of one or more cleaning products from cleaning products that are recommended to work well in the predicted range of temperature at the time and date of cleaning.

In another embodiment of the first aspect, identifying the first set of one or more cleaning products for cleaning of the building includes receiving, by the processor of the server, precipitation predictions at the time and date of cleaning from a weather information database and identifying the first set of one or more cleaning products from cleaning products that are recommended to work well for the predicted precipitation at the time and date of cleaning.

In another embodiment of the first aspect, identifying the first set of one or more cleaning products for cleaning of the building further includes receiving, by the processor of the server, precipitation predictions at the time and date of cleaning from a weather information database and identifying the first set of one or more cleaning products from cleaning products that have less environmental impact in the predicted precipitation.

In another embodiment of the first aspect, identifying the first set of one or more cleaning products for cleaning of the building further include receiving, by the processor of the server, humidity predictions at the time and date of cleaning from a weather information database and identifying the first set of one or more cleaning products from cleaning products based on the humidity predications at the time and date of cleaning.

In another embodiment of the first aspect, the method further provides a plurality of time and date recommendations for cleaning of the building, by the server, based on information regarding precipitations and upcoming weather events in the region where the building located. The method receives the time and the date for cleaning of the building from the first electronic device based on the plurality of time and date recommendations.

In another embodiment of the first aspect, the method further provides a plurality of time and date recommendations for cleaning of the building, by the server, based on peak energy consumption times received from an environmental information database. The method receives the time and the date for cleaning of the building from the first electronic device based on the plurality of time and date recommendations.

In another embodiment of the first aspect, identifying the first set of cleaning products based on the health issues of occupants of the building and the ingredients of the plurality of cleaning products includes determining that an occupant of the building has asthma and eliminating any product in the plurality of products that contains phthalates.

In another embodiment of the first aspect, identifying the first set of cleaning products based on the health issues of occupants of the building and the ingredients of the plurality of cleaning products includes determining that an occupant of the building has asthma and eliminating any product in the plurality of products that contain QUATS.

In another embodiment of the first aspect, identifying the first set of cleaning products based on the health issues of occupants of the building and the ingredients of the plurality of cleaning products includes determining that an occupant of the building has one of a respiratory system irritation condition, a skin irritation condition, and an eye irritation condition and eliminating any product in the plurality of products that contains methylisothiazolinone.

In another embodiment of the first aspect, identifying the first set of cleaning products based on the health issues of occupants of the building and the ingredients of the plurality of cleaning products includes determining that an occupant of the building has one of a respiratory system irritation condition, a skin irritation condition, and an eye irritation condition and eliminating any product in the plurality of products that contains ammonium hydroxide.

In another embodiment of the first aspect the items that require cleaning in the building includes marble, where identifying the plurality of cleaning products for cleaning the items that require cleaning in the building includes identifying products that do not contain vinegar or lemon.

In another embodiment of the first aspect the items that require cleaning in the building includes granite, where identifying the plurality of cleaning products for cleaning the items that require cleaning in the building includes identifying products that do not contain bleach, vinegar, lemon, and hydrogen peroxide.

In a second aspect, a non-transitory computer-readable memory storing a program which when executed by a processor of a server provides health security for cleaning a building is provided. The program includes a set of instructions for receiving a request from a first electronic device for cleaning a building. The request includes a time and a date of cleaning, a set of one or more health issues of occupants of the building, and an identification of items that require cleaning in the building. The program includes a set of instructions for identifying a plurality of cleaning products for cleaning the items that require cleaning in the building. The program includes a set of instructions for identifying chemical ingredients of the plurality of cleaning products. The program includes a set of instructions for identifying a first set of one or more cleaning products in the plurality of cleaning products for cleaning of the building based on the health issues of occupants of the building and the chemical ingredients of the plurality of cleaning products. The program includes a set of instructions for providing the time and date, an identification of the building, and the identification of the first set of one or more cleaning products to electronic devices of a plurality of janitorial workers. The program includes a set of instructions for receiving a request from a second electronic device in the electronic devices of the plurality of janitorial workers to clean the building using the first set of cleaning products at the time and date of cleaning. The program includes a set of instructions for sending, a threshold time before the time and date of cleaning, a request to the second electronic device to turn on geolocation tracking, enable a camera of the second electronic device, and take geolocated images of a second set of cleaning products carried by the janitorial worker. The program includes a set of instructions for receiving, from the second electronic device, a set of one or more geolocated images of the second set of cleaning products. The program includes a set of instructions for analyzing the set of one or more geolocated images. The program includes a set of instructions for determining, based on the analysis, that the second electronic device is within a threshold distance of the building and the second set of cleaning products match the first set of products. The program includes a set of instructions for providing a clearance to the janitorial worker to perform the cleaning of the building based on the determination.

In an embodiment of the second aspect, the program further includes a set of instructions for receiving, from the second electronic device, ATP measurements made by a microbial detection sensor on a first surface in the building measurements. The program further includes a set of instructions for selecting, by the processor of the server, at least one cleaning product in the first set of one or more cleaning products to clean the first surface based on the ATP measurements. The program further includes a set of instructions for sending, by the processor of the server, an instruction to the person associated with the second electronic device to use the at least one product on the first surface.

In another embodiment of the second aspect, the program further includes a set of instructions for receiving, from the second electronic device, ATP measurements made by a microbial detection sensor on a first surface in the building measurements. The program further includes a set of instructions for selecting one or more cleaning products in the first set of one or more cleaning products to clean the first surface based on the ATP measurements. The program further includes a set of instructions for updating a profile of a user of the first client device to recommend the use of the one or more cleaning products for cleaning the first surface in furfure cleaning jobs of the building.

In another embodiment of the second aspect, the set of instructions for identifying the first set of one or more cleaning products in the plurality of cleaning products for cleaning of the building includes sets of instructions for receiving a range of temperature predictions at the time and date of cleaning from a weather information database and identifying the first set of one or more cleaning products from cleaning products that are recommended to work well in the predicted range of temperature at the time and date of cleaning.

While the invention has been described with reference to numerous specific details, one of ordinary skill in the art will recognize that the invention may be embodied in other specific forms without departing from the spirit of the invention. In addition, a number of the figures conceptually illustrate processes. The specific operations of these processes may not be performed in the exact order shown and described. The specific operations may not be performed in one continuous series of operations, and different specific operations may be performed in different embodiments. Furthermore, the process could be implemented using several sub-processes, or as part of a larger macro process.

The above description presents the best mode contemplated for carrying out the present embodiments, and of the manner and process of practicing them, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which they pertain to practice these embodiments. The present embodiments are, however, susceptible to modifications and alternate constructions from those discussed above that are fully equivalent. Consequently, the present invention is not limited to the particular embodiments disclosed. On the contrary, the present invention covers all modifications and alternate constructions coming within the spirit and scope of the present disclosure. For example, the steps in the processes described herein need not be performed in the same order as they have been presented and may be performed in any order(s). Further, steps that have been presented as being performed separately may in alternative embodiments be performed concurrently. Likewise, steps that have been presented as being performed concurrently may in alternative embodiments be performed separately.