(19)
(11)EP 3 221 803 B1

(12)EUROPEAN PATENT SPECIFICATION

(45)Mention of the grant of the patent:
20.05.2020 Bulletin 2020/21

(21)Application number: 15797828.9

(22)Date of filing:  18.11.2015
(51)International Patent Classification (IPC): 
G06F 16/14(2019.01)
(86)International application number:
PCT/US2015/061210
(87)International publication number:
WO 2016/081532 (26.05.2016 Gazette  2016/21)

(54)

RELEVANT FILE IDENTIFICATION USING AUTOMATED QUERIES TO DISPARATE DATA STORAGE LOCATIONS

IDENTIFIZIERUNG EINER RELEVANTEN DATEI MIT AUTOMATISIERTEN ANFRAGEN AN VERSCHIEDENE DATENSPEICHERORTE

IDENTIFICATION DE FICHIERS PERTINENTS À L'AIDE D'INTERROGATIONS AUTOMATISÉES POUR DES EMPLACEMENTS DE STOCKAGE DE DONNÉES DISPARATES


(84)Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

(30)Priority: 20.11.2014 US 201414549410

(43)Date of publication of application:
27.09.2017 Bulletin 2017/39

(73)Proprietor: Microsoft Technology Licensing, LLC
Redmond, WA 98052-6399 (US)

(72)Inventors:
  • KESLIN, Jonathan
    Redmond, Washington 98052-6399 (US)
  • DAVID, Mary
    Redmond, Washington 98052-6399 (US)
  • PEREZ, Carlos
    Redmond, Washington 98052-6399 (US)
  • PANKHURST, Reed
    Redmond, Washington 98052-6399 (US)
  • STICKLER, Joshua
    Redmond, Washington 98052-6399 (US)
  • BERRY, Manfred
    Redmond, Washington 98052-6399 (US)
  • TENNOE, Marius
    Redmond, Washington 98052-6399 (US)
  • MELNYCHUK, Oleg
    Redmond, Washington 98052-6399 (US)
  • ESCUTIA, Ricardo
    Redmond, Washington 98052-6399 (US)
  • HERSTAD, Berit
    Redmond, Washington 98052-6399 (US)
  • TORRES, Melissa
    Redmond, Washington 98052-6399 (US)
  • PAZUCHANICS, Skye Lee
    Redmond, Washington 98052-6399 (US)

(74)Representative: Grünecker Patent- und Rechtsanwälte PartG mbB 
Leopoldstraße 4
80802 München
80802 München (DE)


(56)References cited: : 
US-A1- 2009 281 990
US-A1- 2011 167 061
US-A1- 2010 180 200
US-A1- 2014 081 963
  
      
    Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


    Description

    BACKGROUND



    [0001] Users often work with many file, which may be locally saved, or from one or more networks. When working with a variety of applications, users need access to files to open a new file, to send a file to another user, to save a file, to share a file, and other use scenarios. Users may have to find files they need through manual search. Some approaches provide a list of most recently used files or a list of files from a current or last used location. However, in the multi-dimensional file storage, use, and attribute environments of today's computing, these approaches may be limited and one-dimensional.

    [0002] US 2010/180200 A1 relates to an electronic assistant. A system for assisting with a current workflow being performed on a computing device includes a watcher for extracting a context from the current workflow, a harvester for identifying at least one document associated with a concept that matches the context, and a suggestion generator for displaying the document to the user of the computing device, where the document is suggested to aid the user in performing the current workflow.

    [0003] US 2009/281990 A1 relates to a method for extracting one or more document identifiers from a document currently displayed on the user's computer screen. The method further comprises searching an enterprise network, using the one or more document identifiers, for one or more related documents that are related to the document currently displayed on the user's computer screen. The one or more related documents may then be filtered, and the user may be notified of the one or more filtered related documents.

    SUMMARY



    [0004] It is the object of the present invention to provide a method and system for automatically suggesting one or more files.

    [0005] This object is solved by the subject matter of the independent claims.

    [0006] Preferred embodiments are defined in the dependent claims.

    [0007] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to exclusively identify key features or essential features of the claimed subject matter, nor is it intended as an aid in determining the scope of the claimed subject matter.

    [0008] Embodiments are directed to relevant file identification using automated queries to disparate data storage locations for actions such as save, open, load, view, share, or similar ones. The automatic suggestion may include detection of an action on a locally stored file or a remotely stored file associated with a user such as viewing of a library or folder, generation of one or more queries to determine files relevant to the user, and submittal the one or more queries to one or more local data stores at the computing device and remote data stores. The one or more files determined to be relevant to the user may then be suggested based on results of the submitted one or more queries.

    [0009] These and other features and advantages will be apparent from a reading of the following detailed description and a review of the associated drawings. It is to be understood that both the foregoing general description and the following detailed description are explanatory and do not restrict aspects as claimed.

    BRIEF DESCRIPTION OF THE DRAWINGS



    [0010] 

    FIG. 1 includes a conceptual diagram illustrating an example file suggestion configuration, where a file suggestion module within an operating system may service applications within the same operating system;

    FIG. 2 includes a conceptual diagram illustrating another example file suggestion configuration, where a file suggestion module within an application may service the same application;

    FIG. 3 includes a conceptual diagram illustrating a further example file suggestion configuration, where a file suggestion module within a coordinated application set may service applications within the same coordinated application set;

    FIG. 4 includes a conceptual diagram illustrating a yet further example file suggestion configuration, where a cloud-based third party file suggestion service may service applications in remote computing devices;

    FIG. 5 illustrates an example user experience for suggesting files with summary information;

    FIG. 6 illustrates another example user experience, where suggested files may be presented along with files of a user in the user's local or network directory;

    FIG. 7 is a block diagram of an example general purpose computing device, which may be used to implement automatic file suggestion; and

    FIG. 8 illustrates a logic flow diagram of a method to automatically suggest files, according to embodiments.


    GLOSSARY



    [0011] Content - any form of structured data and streaming data that is associated with audio, video, graphics, images, and text.

    [0012] User - a person with whom the content to be saved is associated.

    [0013] Subscriber - an account holder with access to applications and cloud storage at a collaborative service.

    [0014] Collaborative Service - a set of coordinated applications and associated cloud storage hosted by a plurality of servers providing access to the functionality of the applications and collaboration opportunities through web browser or locally installed client application user experiences to a plurality of users. The collaborative service may provide its services to "clients" or "tenants", who in turn may allow users or subscribers to access the provided services.

    [0015] Cloud storage - one or more data stores accessible through networks.

    [0016] Permission level - a security setting that enables a user to control access to the content within a data storage.

    [0017] Computing device - a device comprising at least a memory and a processor that includes a desktop computer, a laptop computer, a tablet computer, a smart phone, a vehicle mount computer, or a wearable computer.

    [0018] Memory - a component of a computing device configured to store one or more instructions to be executed by one or more processors.

    [0019] A processor - a component of a computing device coupled to a memory and configured to execute programs in conjunction with instructions stored by the memory.

    [0020] File - any form of structured data that is associated with audio, video, graphics, images, and text.

    [0021] Third party service - an independent service separate from a system used by the initiating user and the target user, another service, or an application.

    [0022] Operating system - a system configured to manage hardware and software components of a computing device that provides common services and applications.

    [0023] Integrated module - a component of an application or service that is integrated within the application or service such that the application or service is configured to execute the component.

    [0024] Application - a program that when executed enables a user to communicate, create, edit, and share content.

    [0025] Computer-readable memory device - a computer-readable storage medium implemented via one or more of a volatile computer memory, a non-volatile memory, a hard drive, a flash drive, a floppy disk, or a compact disk, and comparable hardware media that includes instructions thereon to automatically save content to a location.

    [0026] User experience - a visual display associated with an application or service through which a user interacts with the application or service.

    [0027] User action - an interaction between a user and a user experience of an application or a user experience provided by a service that includes one of touch input, gesture input, voice command, eye tracking, gyroscopic input, pen input, mouse input, and keyboards input.

    [0028] Application programming interface (API) - a set of routines, protocols, and tools for an application or service that enable the application or service to interact or communicate with one or more other applications and services managed by separate entities.

    [0029] Confidence level - a percentage of confidence that candidate files are selected according to selection criteria that correspond to a user's interests.

    [0030] Productivity service - a service to which a user subscribes to access one or more applications that when executed enable a user to communicate, view, create, edit, analyze, and share content.

    [0031] Wireless communication - a communication medium to facilitate a communication session through a selected communication mode between two or more devices in the absence of a physical connection through an electrically or optically conductive medium.

    [0032] Wired communication - a communication medium to facilitate a communication session through a selected communication mode between two or more devices with a physical connection through an electrically or optically conductive medium.

    DETAILED DESCRIPTION



    [0033] As briefly described above, upon detecting a user action such as save, load, open, view, share, or comparable ones on a file, a file suggestion module or an application may determine other relevant files for the user performing the action. The relevancy may be determined through one or more queries based on a number of criteria, where the queries are executed on local or remote data stores related to the user. For example, files on the local computing device of the user, files in an enterprise network associated with the user, files on a social network subscribed by the user may be evaluated for various relevancy criteria. Files determined to be relevant may be prioritized, ordered, and/or grouped for suggestion to the user and presented through a user interface of an application performing the detected action.

    [0034] In the following detailed description, references are made to the accompanying drawings that form a part hereof, and in which are shown by way of illustrations, specific embodiments, or examples. These aspects may be combined, other aspects may be utilized, and structural changes may be made without departing from the scope of the present disclosure. The following detailed description is therefore not to be taken in a limiting sense, and the scope of the present invention is defined by the appended claims.

    [0035] While some embodiments will be described in the general context of program modules that execute in conjunction with an application program that runs on an operating system on a personal computer, those skilled in the art will recognize that aspects may also be implemented in combination with other program modules.

    [0036] Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that embodiments may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and comparable computing devices. Embodiments may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

    [0037] Some embodiments may be implemented as a computer-implemented process (method), a computing system, or as an article of manufacture, such as a computer program product or computer readable media. The computer program product may be a computer storage medium readable by a computer system and encoding a computer program that comprises instructions for causing a computer or computing system to perform example process(es). The computer-readable storage medium is a computer-readable memory device. The computer-readable storage medium can for example be implemented via one or more of a volatile computer memory, a non-volatile memory, a hard drive, a flash drive, a floppy disk, or a compact disk, and comparable hardware media.

    [0038] Throughout this specification, the term "platform" may be a combination of software and hardware components for automatic file suggestion. Examples of platforms include, but are not limited to, a hosted service executed over a plurality of servers, an application executed on a highest prioritized computing device, and comparable systems. The term "server" generally refers to a computing device executing one or more software programs typically in a networked environment. However, a server may also be implemented as a virtual server (software programs) executed on one or more computing devices viewed as a server on the network. More detail on these technologies and example operations is provided below.

    [0039] FIG. 1 includes a conceptual diagram 100 illustrating an example file suggestion configuration, where a file suggestion module within an operating system may service applications within the same operating system.

    [0040] In one example configuration, a computing device 102 such as a laptop computer may have an operating system 104. A number of applications such as application 106 may be executed within the infrastructure provided by the operating system 104. The applications may include any application such as word processing applications, spreadsheet applications, presentations applications, communication applications, imaging applications, audio / video processing applications, graphic processing applications, and comparable ones. Application 106 may process files as part of its operation such as open, save, load, modify. Application 106 may also enable the user 101 to view, edit, share, or perform other actions on the files. The files processed by the application 106 may be stored locally on the computing device 102, such as in local storage 108. Application 106 may also process files stored remotely such as cloud storage 118, which may be accessible over one or more networks (or clouds) such as network 120.

    [0041] In some embodiments, a file suggestion module 110 operating within the operating system 104 may detect an action associated with a locally stored file or a remotely stored file being processed by the application 106 and coordinate with one or more local search engines 112 generation of one or more queries to determine files relevant to the user 101. The queries may be based on criteria such as whether a user initiating the action is an author of a file, whether the user has edited the file, whether the file is shared with the user, whether the user opened the file in the past, whether the file was presented at a meeting that the user attended, whether the file was emailed to the user, whether the user submitted a post to a social network or a professional network associated with the file, whether the user commented on the file, and/or whether the user joined a group or team site on which the file is listed. The criteria listed above are not an exhaustive list and are intended to provide illustrative examples.

    [0042] In other embodiments, file suggestion module 110 may coordinate the generation and submission of the queries with remote search engines such as cloud search engines 116 over the network 120. The search engines may execute the queries on the local storage 108 and/or cloud storage 118. The files from the local storage 108 and/or cloud storage 118 may be prioritized, ordered, and/or grouped for presentation based on the criteria used for the queries, a chronological recency of the one or more criteria, and similar factors. The prioritized, ordered, and/or grouped files may then be presented to the user 101 through a user experience of the application 106 or a generic user experience managed by the file suggestion module 110. In one example, application 106 may allow the user 101 to view a library or a directory of files associated with himself or herself. The library or directory of files may include document folders on the computing device 102, on a different online file library website, or a remote file share library. The suggested files may be presented separately or along with the files (and folders) of the viewed library or directory.

    [0043] In further embodiments, summary information associated with each file may be displayed along with a representation of each file. The summary information may include one or more of a name of the file, an owner of the file, a storage location of the file, one or more images associated with the file, a type of the file, and a modification date of the file. The summary information may also include a reason for selection of the file to be suggested to the user to give confidence to the user about the selection of the suggested file. The suggested files may be displayed, for example, in grid or list format. The suggested files may also be displayed along with regular files in a folder or directory of the user distinguished through one or more of a textual scheme, graphical scheme, color scheme, shading scheme, or similar scheme. The additional summary information may also distinguish the suggested files from the regular files.

    [0044] The computing device 102 may include a desktop computer, a laptop computer, a tablet computer, a vehicle mount computer, a smart phone, or a wearable computing device. The user 101 may be enabled to interact with the user experience and select among the suggested files through one or more of touch input, gesture input, voice command, eye tracking, gyroscopic input, pen input, mouse input, and/or keyboard input.

    [0045] FIG. 2 includes a conceptual diagram 200 illustrating another example file suggestion configuration, where a file suggestion module within an application may service the same application.

    [0046] The components in diagram 200 such as cloud search engines 216, cloud storage 218, network 220, operating system 204, application 206, file suggestion module 210, local storage 208, and local search engines 212 may be similarly structured and function similar to their counterparts in FIG. 1. The computing device 202 is illustrated as a smart phone in FIG. 2. Differently from FIG. 1, the file suggestion module 210 in diagram 200 may be an integrated part of the application 206 and thus work within the application 206 enabling presentation of suggested files to user 201.

    [0047] FIG. 3 includes a conceptual diagram 300 illustrating a further example file suggestion configuration, where a file suggestion module within a coordinated application set may service applications within the same coordinated application set.

    [0048] The components in diagram 300 such as cloud search engines 332, cloud storage 334, network 330, operating system 304, file suggestion module 318, local storage 322, and local search engines 320 may be similarly structured and function similar to their counterparts in FIG. 1 or 2. The computing device 302 is illustrated as a laptop computer in FIG. 3. Differently from FIG. 1 and 2, a coordinated application set 310 may provide functionalities of a variety of applications (applications 312, 314, 316) to the user 301 under one umbrella. The file suggestion module 318 in diagram 300 may be an integrated part of the coordinated application set 310 and provide file suggestion services to the applications within the coordinated application set 310. For example, the coordinated application set 310 may be a productivity suite and include applications such as word processing applications spreadsheet applications, presentation applications, communication applications, calendaring applications, and note taking applications.

    [0049] FIG. 4 includes a conceptual diagram 400 illustrating a yet further example file suggestion configuration, where a cloud-based third party file suggestion service may service applications in remote computing devices.

    [0050] The components in diagram 400 such as cloud search engines 416, cloud storage 418, network 420, operating system 404, application 406, local storage 408, and local search engines 412 may be similarly structured and function similar to their counterparts in FIG. 1 and 2. The computing device 402 is illustrated as a client device connected to a server in FIG. 4. Differently from FIG. 1 or 2, the system in diagram 400 includes a file suggestion service 410, which may be accessed by multiple applications executed on multiple devices via network 420 and enable presentation of suggested files to user 401. For example, file suggestion service 410 may be a third party hosted service that can be accessed through standardized application programming interfaces (APIs) by any application that is compatible with it.

    [0051] In some embodiments, a confidence level in the determination and/or prioritization of the relevant files may be determined based on the criteria used, how strongly a file meets the criteria (or how many criteria the file meets). The suggested files may then be selected among those that have a confidence level above a predefined threshold.

    [0052] FIG. 5 illustrates an example user experience for suggesting files with summary information.

    [0053] The example user experience 500 in FIG. 5 is associated with an application 502. As mentioned above, suggested files may also be presented through a generic user experience managed by the file suggestion module or the operating system for different applications. The user experience 500 may include one or more command menus 504 and present suggested files 506, 512, and 510 in a number of textual and/or graphical formats. In the example illustration, each file is represented by a file name 524, a type of file, a location of the file 522, an owner or author of the file 518, and an indication of when the file was last edited 516. The representation may also include an icon 514, a graphic, or one or more images 508 associated with the file. The graphic representation may be an icon of the file type or thumbnail images from the file (e.g., selected images from a video file).

    [0054] In some embodiments, graphic, color, or shading schemes may be employed to indicate further information associated with the files, for example, a file type, a priority of the files, whether a file is currently being processed by someone else, whether the file has been recently used, or similar information. The indications may include shading (as in file 510) or a graphic 520, for example.

    [0055] FIG. 6 illustrates another example user experience, where suggested files may be presented along with files of a user in the user's local or network directory.

    [0056] User experience 600 is an example of a generic file user interface 602 managed by the file suggestion module or the operating system (or a file management system within the operating system). In section 606 of the user experience available storage containers such as local file directories, networked file directories, shared files, etc. may be listed as links to provide those containers' contents. In section 604, suggested files may be presented as discussed above in conjunction with FIG. 5. In addition to the suggested files, the user interface 602 may present files in a selected container (e.g., "My Documents") in a traditional manner in section 610.

    [0057] For example, the files in the selected container may be displayed in a list format with icons 612 representing each file type, file names 614, last modification dates 616, sharing information 618, and last modified by information 619. The user experiences in FIG. 5 and 6 are for illustration purposes only and any user experience with any configuration may be used to present suggested files with various presentation schemes.

    [0058] The examples in FIGs. 1 through 6 have been described using specific network environments, systems, services, applications, and processes to automatically suggest files. Embodiments to automatically suggest files are not limited to the specific network environments, systems, services, applications, and processes according to these examples.

    [0059] Relevant file identification using automated queries to disparate data storage locations, as described in the embodiments above, may help reduce processor load by enabling faster selection of files as opposed to manual selection, which may involve multiple operations for each file to be selected. Network bandwidth usage may also be reduced through prevention of individual, manual file search operations. User efficiency may be improved by allowing users to see relevant files without having to remember or think about where to search. Through the summary information presented with the suggested files, users' interaction performance may be increased allowing users to select relevant files rapidly.

    [0060] FIG. 7 and the associated discussion are intended to provide a brief, general description of a general purpose computing device, which may be used to automatically suggest files.

    [0061] For example, computing device 700 may be used as a server, desktop computer, portable computer, smart phone, special purpose computer, or similar device. In an example basic configuration 702, the computing device 700 may include one or more processors 704 and a system memory 706. A memory bus 708 may be used for communicating between the processor 704 and the system memory 706. The basic configuration 702 is illustrated in FIG. 7 by those components within the inner dashed line.

    [0062] Depending on the desired configuration, the processor 704 may be of any type, including but not limited to a microprocessor (µP), a microcontroller (µC), a digital signal processor (DSP), or any combination thereof. The processor 704 may include one more levels of caching, such as a level cache memory 712, one or more processor cores 714, and registers 716. The example processor cores 714 may (each) include an arithmetic logic unit (ALU), a floating point unit (FPU), a digital signal processing core (DSP Core), or any combination thereof. An example memory controller 718 may also be used with the processor 704, or in some implementations the memory controller 718 may be an internal part of the processor 704.

    [0063] Depending on the desired configuration, the system memory 706 may be of any type including but not limited to volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.) or any combination thereof. The system memory 706 may include an operating system 720, an application 722, and program data 724. The application 722 may include a file suggestion module 726 and a search engine 727, which may be integrated modules of the application 722 or independent modules. The file suggestion module 726 and the search engine 727 may perform tasks associated with detection of user actions, generation of queries, and determination of relevant files for suggestion to the user as described herein. The program data 724 may include, among other data, process data 728 related to relevancy criteria and relevant files, as described herein.

    [0064] The computing device 700 may have additional features or functionality, and additional interfaces to facilitate communications between the basic configuration 702 and any desired devices and interfaces. For example, a bus/interface controller 730 may be used to facilitate communications between the basic configuration 702 and one or more data storage devices 732 via a storage interface bus 734. The data storage devices 732 may be one or more removable storage devices 736, one or more non-removable storage devices 738, or a combination thereof. Examples of the removable storage and the non-removable storage devices include magnetic disk devices such as flexible disk drives and hard-disk drives (HDDs), optical disk drives such as compact disk (CD) drives or digital versatile disk (DVD) drives, solid state drives (SSD), and tape drives to name a few. Example computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.

    [0065] The system memory 706, the removable storage devices 736 and the non-removable storage devices 738 are examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVDs), solid state drives, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which may be used to store the desired information and which may be accessed by the computing device 700. Any such computer storage media may be part of the computing device 700.

    [0066] The computing device 700 may also include an interface bus 740 for facilitating communication from various interface devices (for example, one or more output devices 742, one or more peripheral interfaces 744, and one or more communication devices 746) to the basic configuration 702 via the bus/interface controller 730. Some of the example output devices 742 include a graphics processing unit 748 and an audio processing unit 750, which may be configured to communicate to various external devices such as a display or speakers via one or more A/V ports 752. One or more example peripheral interfaces 744 may include a serial interface controller 754 or a parallel interface controller 756, which may be configured to communicate with external devices such as input devices (for example, keyboard, mouse, pen, voice input device, touch input device, etc.) or other peripheral devices (for example, printer, scanner, etc.) via one or more I/O ports 758. An example communication device 746 includes a network controller 760, which may be arranged to facilitate communications with one or more other computing devices 762 over a network communication link via one or more communication ports 764. The one or more other computing devices 762 may include servers, client devices, and comparable devices.

    [0067] The network communication link may be one example of a communication media. Communication media may typically be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and may include any information delivery media. A "modulated data signal" may be a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), microwave, infrared (IR) and other wireless media. The term computer readable media as used herein may include both storage media and communication media.

    [0068] The computing device 700 may be implemented as a part of a general purpose or specialized server, mainframe, or similar computer that includes any of the above functions. The computing device 700 may also be implemented as a personal computer including both laptop computer and non-laptop computer configurations.

    [0069] Example embodiments may also include methods to automatically suggest files. These methods can be implemented in any number of ways, including the structures described herein. One such way may be by machine operations, of devices of the type described in the present disclosure. Another optional way may be for one or more of the individual operations of the methods to be performed in conjunction with one or more human operators performing some of the operations while other operations may be performed by machines. These human operators need not be collocated with each other, but each can be only with a machine that performs a portion of the program. In other embodiments, the human interaction can be automated such as by pre-selected criteria that may be machine automated.

    [0070] FIG. 8 illustrates a logic flow diagram for process 800 of a method to automatically suggest files, according to embodiments. Process 800 may be implemented on a server or other computing devices.

    [0071] Process 800 begins with operation 810, where an action associated with a file is detected. The action may include a save action, a view action, a comment action, an open action, a share action, or similar actions. For example, the view action may include a user viewing a library or a directory of files associated with themselves and optionally indicating interest in a file by hovering over it or selecting it. Other example actions may involve a selected file more directly.

    [0072] At operation 820, one or more queries may be generated to determine relevance of other files to the user who is performing the action. The queries may be based on criteria such as whether the user initiating the action is an author of a file, whether the user has edited the file, whether the file is shared with the user, whether the user opened the file in the past, whether the file was presented at a meeting that the user attended, whether the file was emailed to the user, whether the user submitted a post to a social network or a professional network associated with the file, whether the user commented on the file, and/or whether the user joined a group or team site on which the file is listed.

    [0073] At operation 830, the queries may be submitted to local or remote data stores to be executed on files at those data stores. The data stores may include the user's file directories, the user's cloud directories, networked data stores, public data stores, to name a few.

    [0074] At optional operation 840, relevant files determined based on the results of the submitted queries may be prioritized, ordered for display, and/or grouped for display based on the query results and the used criteria. At operation 850, the prioritized, ordered, and/or grouped relevant files may be suggested through a user experience with or without the user's own files in a selected directory. In some embodiments, other operations may occur between querying a search provider and displaying the results. For example, upon receiving the search results a query may be submitted for related information about the resultant files such as appropriate file type icons.

    [0075] The operations included in process 800 are for illustration purposes. Relevant file identification using automated queries to disparate data storage locations may be implemented by similar processes with fewer or additional steps, as well as in different order of operations using the principles described herein.

    [0076] In some examples, a computing device to automatically suggest one or more files is described. The computing device may include a display device, a memory configured to store instructions, and a processor coupled to the display device and the memory. The processor may be configured to detect an action on one of a locally stored file or a remotely stored file associated with a user; generate one or more queries to determine files relevant to the user; submit the one or more queries to one or more local data stores at the computing device and remote data stores; and automatically suggest, through the display device, the one or more files determined to be relevant to the user based on results of the submitted one or more queries.

    [0077] In other examples, the one or more queries may be generated based on one or more criteria including, but not limited to whether the user initiating the action is an author of a file, whether the user has edited the file, whether the file is shared with the user, whether the user opened the file in the past, whether the file was presented at a meeting that the user attended, whether the file was emailed to the user, whether the user submitted a post to one of a social network or a professional network associated with the file, whether the user commented on the file, and whether the user joined a group or team site on which the file is listed. The processor may also determine the one or more files to be relevant to the user based on a chronological recency of the one or more criteria.

    [0078] In further examples, the processor may be further configured to prioritize the one or more files determined to be relevant to the user based on the results of the one or more queries and a chronological recency of the one or more criteria, order and group the one or more files determined to be relevant to the user based on the results of the one or more queries and a chronological recency of the one or more criteria, and/or display the ordered and grouped one or more files determined to be relevant to the user along with summary information associated with each file. The summary information may include one or more of a name of the file, an owner of the file, a storage location of the file, one or more images associated with the file, a type of the file, and a modification date of the file. The summary information may also include a reason for selection of the file to be suggested to the user.

    [0079] In yet other examples, the one or more queries may be generated and submitted by one or more search engines independent from a file suggestion module configured to automatically suggest the one or more files. At least one of the one or more search engines may be local and at least another of the one or more search engines may be a remote search engine. The processor may also be configured to determine a confidence level for each of a plurality of candidate files based on the results of the submitted one or more queries and select the one or more files to be suggested in response to a determination that the confidence level is above a predefined threshold. The action on one of the locally stored file or the remotely stored file may include one of an open action, a save action, a share action, a comment action, or a view action.

    [0080] In other examples, a system to automatically suggest one or more files is described. The system may include a first computing device configured to provide access to an application, a second computing device configured to manage storage of a plurality of files, and a third computing device communicatively coupled to the first computing device and the second computing device. The third computing device may be configured to execute a file suggestion module, which may detect an action on one of a locally stored file or a remotely stored file associated with a user; generate one or more queries based on one or more criteria to determine files relevant to the user; submit the one or more queries to one or more local data stores at the computing device and remote data stores; and automatically suggest, through the display device, the one or more files determined to be relevant to the user based on results of the submitted one or more queries and present summary information for each of the one or more files, the summary information comprising one or more of: a name of the file, an owner of the file, a storage location of the file, one or more images associated with the file, a type of the file, and a modification date of the file.

    [0081] In further examples, the file suggestion module may be an integrated part of the application, an integrated part of a coordinated set of applications including the application, a part of an operating system of the third computing device providing file suggestion services to applications within the operating system, or a part of a third party service accessible by a plurality of computing devices over one or more networks. The one or more queries may be generated by one or more of a search engine at the third computing device, a search engine at the second computing device, and a search engine at a fourth computing device accessible over one or more networks.

    [0082] In yet other examples, a method to automatically suggest one or more files is described. The method may include detecting one of an open action, a save action, a share action, a comment action, or a view action on one of a locally stored file or a remotely stored file associated with a user; generating one or more queries based on one or more criteria to determine files relevant to the user; submitting the one or more queries to one or more local data stores at the computing device and remote data stores; determining the one or more files to be relevant to the user based on results of the submitted one or more queries; one or more of: prioritizing, ordering, and grouping the one or more files based on the results of the one or more queries and a chronological recency of the one or more criteria; and automatically suggesting the one or more files.

    [0083] In yet further examples, automatically suggesting the one or more files may include automatically suggesting, through a display device, the one or more files determined to be relevant to the user along with a plurality of files in a selected file directory associated with the user. The method may also include displaying the suggested one or more files in one of a list or a grid form on one of a user experience of an application processing the file or on a separate user experience.

    [0084] In some examples, a means to automatically suggest one or more files is described. The means to automatically suggest one or more files may include a means for detecting one of an open action, a save action, a share action, a comment action, or a view action on one of a locally stored file or a remotely stored file associated with a user; a means for generating one or more queries based on one or more criteria to determine files relevant to the user; a means for submitting the one or more queries to one or more local data stores at the computing device and remote data stores; a means for determining the one or more files to be relevant to the user based on results of the submitted one or more queries; a means for one or more of: prioritizing, ordering, and grouping the one or more files based on the results of the one or more queries and a chronological recency of the one or more criteria; and a means for automatically suggesting the one or more files.

    [0085] The above specification, examples and data provide a complete description of the manufacture and use of the composition of the embodiments. Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims and embodiments.


    Claims

    1. A computing device to automatically suggest one or more files, the computing device comprising:

    a display device;

    a memory (706) configured to store instructions; and

    a processor (704) coupled to the display device and the memory, wherein the processor is configured to execute a file suggestion module (318) configured to:

    detect one of an open action, a save action, a share action, or a comment action on one of a locally stored file or a remotely stored file associated with a user and processed by an application (312, 314, 316);

    upon detection of the action, generate one or more queries to determine files relevant to the user, wherein the one or more queries are generated based on one or more criteria, the one or more criteria including at least one of whether the user initiating the action is an author of the file, whether the file is shared with the user,

    whether the file was emailed to the user, whether the user submitted a post to one of a social network or a professional network associated with the file, and whether the user joined a group or team site on which the file is listed;

    submit the one or more queries to one or more local data stores at the computing device and to one or more remote data stores;

    determine a confidence level for each given file of the determined relevant files based on how many criteria of the one or more criteria the given file meets; and

    automatically suggest, through the display device, among the one or more files determined to be relevant to the user based on results of the submitted one or more queries, only the determined relevant files having a confidence level above a predefined threshold,

    wherein the file suggestion module is an integrated part of a coordinated set of applications (310) including the application and provides file suggestion services to the applications within the coordinated set of applications.


     
    2. The computing device of claim 1, wherein the one or more criteria further include:

    whether the user has edited the file,

    whether the user opened the file in the past,

    whether the file was presented at a meeting that the user attended, and

    whether the user commented on the file.


     
    3. The computing device of claim 2, wherein the processor is further configured to:

    order and group the one or more files determined to be relevant to the user based on the results of the one or more queries and a chronological recency of the one or more criteria; and

    display the ordered and grouped one or more files determined to be relevant to the user along with summary information associated with each file.


     
    4. The computing device of claim 3, wherein the summary information comprises one or more of: a name of the file, an owner of the file, a storage location of the file, one or more images associated with the file, a type of the file, and a modification date of the file.
     
    5. The computing device of claim 1, wherein the one or more queries are generated and submitted by one or more search engines independent from a file suggestion module configured to automatically suggest the one or more files.
     
    6. The computing device of claim 5, wherein at least one of the one or more search engines is local and at least another of the one or more search engines is a remote search engine.
     
    7. A system to automatically suggest one or more files, the system comprising:

    a first computing device (402) configured to provide a user access to an application (312, 314, 316, 406);

    a second computing device (418) configured to manage storage of a plurality of files associated with the user; and

    a third computing device communicatively coupled to the first computing device and the second computing device, wherein the third computing device is configured to execute a file suggestion module (410) configured to:

    detect one of an open action, a save action, a share action, or a comment action on one of a locally stored file or a remotely stored file associated with the user;

    upon detection of the action, generate one or more queries to determine files relevant to the user, wherein the one or more queries are generated based on one or more criteria, the one or more criteria including at least one of whether the user initiating the action is an author of the file, whether the file is shared with the user, whether the file was emailed to the user, whether the user submitted a post to one of a social network or a professional network associated with the file, and whether the user joined a group or team site on which the file is listed;

    submit the one or more queries to one or more local data stores at the second computing device and to one or more remote data stores;

    determine a confidence level for each given file of the determined relevant files based on how many criteria of the one or more criteria the given file meets;

    automatically suggest, through a display device associated with the first computing device, among the one or more files determined to be relevant to the user based on results of the submitted one or more queries, only the determined relevant files having a confidence level above a predefined threshold; and

    present summary information for each of the suggested one or more files, the summary information comprising one or more of: a name of the file, an owner of the file, a storage location of the file, one or more images associated with the file, a type of the file, and a modification date of the file,

    wherein the file suggestion module is an integrated part of a coordinated set of applications (310) including the application and provides file suggestion services to the applications within the coordinated set of applications.


     
    8. The system of claim 7, wherein the file suggestion module is part of an operating system of the third computing device providing file suggestion services to applications within the operating system.
     
    9. The system of claim 7, wherein the file suggestion module is part of a third party service accessible by a plurality of computing devices over one or more networks.
     
    10. A method executed by a file suggestion module (318) in a computing device to automatically suggest one or more files, the method comprising:

    detecting (810) one of an open action, a save action, a share action, or a comment action on one of a locally stored file or a remotely stored file associated with a user and processed by an application (312, 314, 316);

    upon detection of the detected action, generating (820) one or more queries to determine files relevant to the user, wherein the one or more queries are generated based on one or more criteria, the one or more criteria including at least one of whether the user initiating the action is an author of the file, whether the file is shared with the user, whether the file was emailed to the user, whether the user submitted a post to one of a social network or a professional network associated with the file, and whether the user joined a group or team site on which the file is listed;

    submitting (830) the one or more queries to one or more local data stores at the computing device and to one or more remote data stores;

    determining the one or more files to be relevant to the user based on results of the submitted one or more queries;

    determining a confidence level for each given file of the determined relevant files based on how many criteria of the one or more criteria the given file meets;

    one or more of: prioritizing, ordering, and grouping (840) the one or more files based on the results of the one or more queries and a chronological recency of the one or more criteria; and

    automatically suggesting (850), among the one or more files determined to be relevant to the user based on results of the submitted one or more queries, only the determined relevant files having a confidence level above a predefined threshold,

    wherein the file suggestion module is an integrated part of a coordinated set of applications (310) including the application and provides file suggestion services to the applications within the coordinated set of applications.


     
    11. The method of claim 10, wherein automatically suggesting the one or more files comprises:
    automatically suggesting, through a display device, the one or more files determined to be relevant to the user along with a plurality of files in a selected file directory associated with the user.
     
    12. A computer-readable medium storing thereon computer-executable instructions that, when carried out by a processor, cause the processor to perform the method of any of claims 10 to 11.
     


    Ansprüche

    1. Computervorrichtung, die automatisch eine oder mehrere Dateien vorschlägt, wobei die Computervorrichtung umfasst:

    eine Anzeigevorrichtung;

    einen Speicher (706), der zum Speichern von Anweisungen eingerichtet ist; und

    einen Prozessor (704), der mit der Anzeigevorrichtung und dem Speicher gekoppelt ist, wobei der Prozessor dazu eingerichtet ist, ein Dateivorschlagsmodul (318) auszuführen, das eingerichtet ist für das:

    Erfassen einer Öffnungsaktion, einer Speicheraktion, einer Freigabeaktion oder einer Kommentaraktion für eine lokal gespeicherte Datei oder eine entfernt gespeicherte Datei, die einem Benutzer zugeordnet und von einer Anwendung (312, 314, 316) verarbeitet wird;

    Erzeugen beim Erfassen der Aktion einer oder mehrerer Abfragen, um für den Benutzer relevante Dateien zu bestimmen, wobei die eine oder mehreren Abfragen basierend auf einem oder mehreren Kriterien erzeugt werden, wobei das eine oder die mehreren Kriterien wenigstens eines davon enthalten, ob der Benutzer, der die Aktion initiiert, ein Autor der Datei ist, ob die Datei für den Benutzer freigegeben ist, ob die Datei per E-Mail an den Benutzer gesendet wurde, ob der Benutzer einen Beitrag an ein soziales Netzwerk oder ein mit der Datei verknüpftes professionelles Netzwerk gesendet hat und ob der Benutzer einer Gruppen- oder Teamwebsite beigetreten ist, auf der die Datei aufgeführt ist;

    Übermitteln der einen oder mehreren Abfragen an einen oder mehrere lokale Datenspeicher auf der Computervorrichtung und an einen oder mehrere entfernte Datenspeicher;

    Bestimmen eines Vertrauensgrades für jede gegebene Datei der bestimmten relevanten Dateien basierend auf der Anzahl der Kriterien des einen oder der mehreren Kriterien, die die gegebene Datei erfüllt; und

    automatisches Vorschlagen, über die Anzeigevorrichtung, aus der einen oder den mehreren Dateien, die aufgrund der Ergebnisse der übermittelten einen oder mehreren Abfragen als für den Benutzer relevant bestimmt wurden, lediglich der bestimmten relevanten Dateien mit einem Vertrauensgrad über einem vordefinierten Schwellenwert,

    wobei das Dateivorschlagsmodul ein integrierter Teil eines koordinierten Satzes von Anwendungen (310) einschließlich der Anwendung ist und Dateivorschlagsdienste für die Anwendungen innerhalb des koordinierten Satzes von Anwendungen bereitstellt.


     
    2. Computervorrichtung nach Anspruch 1, bei der das eine oder die mehreren Kriterien weiterhin umfassen:

    ob der Benutzer die Datei bearbeitet hat,

    ob der Benutzer die Datei in der Vergangenheit geöffnet hat,

    ob die Datei bei einer Besprechung präsentiert wurde, an der der Benutzer teilgenommen hat,

    und ob der Benutzer die Datei kommentiert hat.


     
    3. Computervorrichtung nach Anspruch 2, bei der der Prozessor weiterhin dazu eingerichtet ist:

    die einen oder mehreren Dateien, die für den Benutzer relevant sind, basierend auf den Ergebnissen der einen oder mehreren Abfragen und einer chronologischen Aktualität des einen oder der mehreren Kriterien zu ordnen und zu gruppieren; und

    die geordnete und gruppierte eine oder mehrere Dateien, die für den Benutzer relevant sind, sowie zusammenfassende Informationen zu jeder Datei anzuzeigen.


     
    4. Computervorrichtung nach Anspruch 3, bei der die zusammenfassenden Informationen einen oder mehrere der folgenden Bestandteile umfassen: einen Namen der Datei, einen Eigentümer der Datei, einen Speicherort der Datei, ein oder mehrere der Datei zugeordnete Bilder, einen Typ der Datei und ein Änderungsdatum der Datei.
     
    5. Computervorrichtung nach Anspruch 1, bei der die eine oder mehreren Abfragen von einer oder mehreren Suchmaschinen unabhängig von einem Dateivorschlagsmodul erzeugt und gesendet werden, das dazu eingerichtet ist, die eine oder mehreren Dateien automatisch vorzuschlagen.
     
    6. Computervorrichtung nach Anspruch 5, bei der wenigstens eine der einen oder mehreren Suchmaschinen lokal ist und wenigstens eine andere der einen oder mehreren Suchmaschinen eine entfernte Suchmaschine ist.
     
    7. System, das automatisch eine oder mehrere Dateien vorschlägt, wobei das System umfasst:

    eine erste Computervorrichtung (402), die dazu eingerichtet ist, einem Benutzer Zugriff auf eine Anwendung (312, 314, 316, 406) zu gewähren;

    eine zweite Computervorrichtung (418), die dazu eingerichtet ist, die Speicherung einer Vielzahl von Dateien zu verwalten, die dem Benutzer zugeordnet sind; und

    eine dritte Computervorrichtung, die kommunikativ mit der ersten Computervorrichtung und der zweiten Computervorrichtung gekoppelt ist, wobei die dritte Computervorrichtung dazu eingerichtet ist, ein Dateivorschlagsmodul (410) auszuführen, das eingerichtet ist für das:

    Erfassen einer Öffnungasktion, einer Speicheraktion, einer Freigabeaktion oder einer Kommentaraktion für eine lokal gespeicherte Datei oder eine entfernt gespeicherte Datei, die dem Benutzer zugeordnet ist;

    Erzeugen beim Erfassen der Aktion einer oder mehrerer Abfragen, um für den Benutzer relevante Dateien zu bestimmen, wobei die eine oder mehreren Abfragen basierend auf einem oder mehreren Kriterien erzeugt werden, wobei das eine oder die mehreren Kriterien wenigstens eines davon enthalten, ob der Benutzer, der die Aktion initiiert, ein Autor der Datei ist, ob die Datei für den Benutzer freigegeben ist, ob die Datei per E-Mail an den Benutzer gesendet wurde, ob der Benutzer einen Beitrag an ein soziales Netzwerk oder ein mit der Datei verknüpftes professionelles Netzwerk gesendet hat und ob der Benutzer einer Gruppen- oder Teamwebsite beigetreten ist, auf der die Datei aufgeführt ist;

    Übermitteln der einen oder mehreren Abfragen an einen oder mehrere lokale Datenspeicher auf der zweiten Computervorrichtung und an einen oder mehrere entfernte Datenspeicher;

    Bestimmen eines Vertrauensgrades für jede gegebene Datei der bestimmten relevanten Dateien basierend auf der Anzahl der Kriterien des einen oder der mehreren Kriterien, die die gegebene Datei erfüllt;

    automatisches Vorschlagen, über die Anzeigevorrichtung, die mit der ersten Computervorrichtung assoziiert ist, aus der einen oder den mehreren Dateien, die aufgrund der Ergebnisse der übermittelten einen oder mehreren Abfragen als für den Benutzer relevant bestimmt wurden, lediglich der bestimmten relevanten Dateien mit einem Vertrauensgrad über einem vordefinierten Schwellenwert; und

    Darstellen von Übersichtsinformationen für jede der vorgeschlagenen einen oder mehreren Dateien, wobei die Übersichtsinformationen eine oder mehrere der folgenden Komponenten umfassen: einen Namen der Datei, einen Eigentümer der Datei, einen Speicherort der Datei, ein oder mehrere der Datei zugeordnete Bilder; einen Dateityp und ein Änderungsdatum der Datei,

    wobei das Dateivorschlagsmodul ein integrierter Teil eines koordinierten Satzes von Anwendungen (310) einschließlich der Anwendung ist und Dateivorschlagsdienste für die Anwendungen innerhalb des koordinierten Satzes von Anwendungen bereitstellt.


     
    8. System nach Anspruch 7, bei dem das Dateivorschlagsmodul Teil eines Betriebssystems der dritten Computervorrichtung ist, das Dateivorschlagsdienste für Anwendungen innerhalb des Betriebssystems bereitstellt.
     
    9. System nach Anspruch 7, bei dem das Dateivorschlagsmodul Teil eines Drittanbieter-Dienstes ist, auf den mehrere Computervorrichtungen über ein oder mehrere Netzwerke zugreifen können.
     
    10. Verfahren, das von einem Dateivorschlagsmodul (318) in einer Computervorrichtung ausgeführt wird, um automatisch eine oder mehrere Dateien vorzuschlagen, wobei das Verfahren umfasst:

    Erfassen (810) einer Öffnungsaktion, einer Speicheraktion, einer Freigabeaktion oder einer Kommentaraktion für eine lokal gespeicherte Datei oder eine entfernt gespeicherte Datei, die einem Benutzer zugeordnet ist und von einer Anwendung (312, 314, 316) verarbeitet wird;

    Erzeugen (820) beim Erfassen der erfassten Aktion einer oder mehrerer Abfragen, um für den Benutzer relevante Dateien zu bestimmen, wobei die eine oder mehreren Abfragen basierend auf einem oder mehreren Kriterien erzeugt werden, wobei das eine oder die mehreren Kriterien wenigstens eines davon enthalten, ob der Benutzer, der die Aktion initiiert, ein Autor der Datei ist, ob die Datei für den Benutzer freigegeben ist, ob die Datei per E-Mail an den Benutzer gesendet wurde, ob der Benutzer einen Beitrag an ein soziales Netzwerk oder ein mit der Datei verknüpftes professionelles Netzwerk gesendet hat und ob der Benutzer einer Gruppen- oder Teamwebsite beigetreten ist, auf der die Datei aufgeführt ist;

    Übermitteln (830) der einen oder mehreren Abfragen an einen oder mehrere lokale Datenspeicher auf der Computervorrichtung und an einen oder mehrere entfernte Datenspeicher;

    Bestimmen der Relevanz der einen oder der mehreren Dateien für den Benutzer auf der Basis der Ergebnisse der übermittelten einen oder mehreren Abfragen;

    Bestimmen eines Vertrauensgrades für jede gegebene Datei der bestimmten relevanten Dateien basierend auf der Anzahl der Kriterien des einen oder der mehreren Kriterien, die die gegebene Datei erfüllt;

    einer oder mehrere von: Priorisieren, Ordnen und Gruppieren (840) der einen oder mehreren Dateien basierend auf den Ergebnissen der einen oder mehreren Abfragen und einer chronologischen Aktualität des einen oder der mehreren Kriterien; und

    automatisches Vorschlagen (850), aus der einen oder den mehreren Dateien, die aufgrund der Ergebnisse der übermittelten einen oder mehreren Abfragen als für den Benutzer relevant bestimmt wurden, lediglich der bestimmten relevanten Dateien mit einem Vertrauensgrad über einem vordefinierten Schwellenwert,

    wobei das Dateivorschlagsmodul ein integrierter Teil eines koordinierten Satzes von Anwendungen (310) einschließlich der Anwendung ist und Dateivorschlagsdienste für die Anwendungen innerhalb des koordinierten Satzes von Anwendungen bereitstellt.


     
    11. Verfahren nach Anspruch 10, bei dem das automatische Vorschlagen der einen oder mehreren Dateien umfasst:
    automatisches Vorschlagen, durch die Anzeigevorrichtung, der einen oder mehreren Dateien, die als für den Benutzer relevant bestimmt sind, zusammen mit mehreren Dateien in einem ausgewählten Dateiverzeichnis, das dem Benutzer zugeordnet ist.
     
    12. Computerlesbares Medium, auf dem computerausführbare Anweisungen gespeichert sind, die, wenn sie von einem Prozessor ausgeführt werden, den Prozessor veranlassen, das Verfahren nach einem der Ansprüche 10 bis 11 auszuführen.
     


    Revendications

    1. Dispositif informatique pour suggérer automatiquement un ou plusieurs fichiers, le dispositif informatique comprenant :

    un dispositif d'affichage ;

    une mémoire (706) configurée pour stocker des instructions ; et

    un processeur (704) couplé au dispositif d'affichage et à la mémoire, dans lequel le processeur est configuré pour exécuter un module de suggestion de fichier (318) configuré pour :

    détecter une d'une action d'ouverture, d'une action d'enregistrement, d'une action de partage ou d'une action de commentaire sur un d'un fichier stocké localement ou d'un fichier stocké à distance associé à un utilisateur et traité par une application (312, 314, 316) ;

    sur détection de l'action, générer une ou plusieurs requêtes pour déterminer des fichiers pertinents pour l'utilisateur, dans lequel l'une ou plusieurs requêtes sont générées selon un ou plusieurs critères, l'un ou plusieurs critères incluant au moins une de déterminations que l'utilisateur à l'origine de l'action est ou non un auteur du fichier, que le fichier est ou non partagé avec l'utilisateur, que le fichier a été ou non envoyé par courriel à l'utilisateur, que l'utilisateur a ou non soumis une publication sur un ou plusieurs d'un réseau social ou d'un réseau professionnel associé au fichier, et que l'utilisateur a ou non rejoint un site de groupe ou d'équipe sur lequel le fichier est répertorié ;

    soumettre l'une ou plusieurs requêtes à un ou plusieurs magasins de données locaux sur le dispositif informatique et à un ou plusieurs magasins de données distants ;

    déterminer un niveau de confiance pour chaque fichier donné des fichiers pertinents déterminés selon un nombre de critères de l'un ou plusieurs critères que le fichier donné satisfait ; et

    suggérer automatiquement, via le dispositif d'affichage, parmi l'un ou plusieurs fichiers déterminés pour être pertinents pour l'utilisateur selon des résultats de l'une ou plusieurs requêtes soumises, uniquement les fichiers pertinents déterminés présentant un niveau de confiance au-dessus d'un seuil prédéfini,

    dans lequel le module de suggestion de fichier est une partie intégrante d'un ensemble coordonné d'applications (310) incluant l'application et fournit des services de suggestion de fichier aux applications au sein de l'ensemble coordonnées d'applications.


     
    2. Le dispositif informatique de la revendication 1, dans lequel l'une ou plusieurs critères comprennent en outre :

    que l'utilisateur a ou non modifié le fichier,

    que l'utilisateur a ou non ouvert le fichier antérieurement,

    que le fichier a été ou non présenté à une réunion à laquelle l'utilisateur assistait, et

    que l'utilisateur a ou non commenté le fichier.


     
    3. Le dispositif informatique de la revendication 2, dans lequel le processeur est configuré en outre pour :

    trier et grouper l'un ou plusieurs fichiers déterminés pour être pertinents pour l'utilisateur selon les résultats de l'une ou plusieurs requêtes et un caractère récent chronologiquement de l'un ou plusieurs critères ; et

    afficher l'un ou plusieurs fichiers triés et groupés déterminés pour être pertinents pour l'utilisateur accompagnés d'informations de synthèse associées à chaque fichier.


     
    4. Le dispositif informatique de la revendication 3, dans lequel les informations de synthèse comprennent un ou plusieurs de : un nom du fichier, un propriétaire du fichier, un emplacement de stockage du fichier, une ou plusieurs images associées au fichier, un type du fichier, et une date de modification du fichier.
     
    5. Le dispositif informatique de la revendication 1, dans lequel l'une ou plusieurs requêtes sont générées et soumises par un ou plusieurs moteurs de recherche indépendants d'un module de suggestion de fichier configuré pour suggérer automatiquement l'un ou plusieurs fichiers.
     
    6. Le dispositif informatique de la revendication 5, dans lequel au moins un de l'un ou plusieurs moteurs de recherche est local et au moins un autre de l'un ou plusieurs moteurs de recherche est un moteur de recherche distant.
     
    7. Système pour suggérer automatiquement un ou plusieurs fichiers, le système comprenant :

    un premier dispositif informatique (402) configuré pour fournir un accès utilisateur à une application (312, 314, 316, 406) ;

    un deuxième dispositif informatique (418) configuré pour gérer un stockage d'une pluralité de fichiers associés à l'utilisateur ; et

    un troisième dispositif informatique couplé en communication au premier dispositif informatique et au deuxième dispositif informatique, dans lequel le troisième dispositif informatique est configuré pour exécuter un module de suggestion de fichier (410) configuré pour :

    détecter une d'une action d'ouverture, d'une action d'enregistrement, d'une action de partage ou d'une action de commentaire sur un d'un fichier stocké localement ou d'un fichier stocké à distance associé à l'utilisateur ;

    sur détection de l'action, générer une ou plusieurs requêtes pour déterminer des fichiers pertinents pour l'utilisateur, dans lequel l'une ou plusieurs requêtes sont générées selon un ou plusieurs critères incluant au moins un de déterminations que l'utilisateur à l'origine de l'action est ou non un auteur du fichier, que le fichier est ou non partagé avec l'utilisateur, que le fichier a été ou non envoyé par courriel à l'utilisateur, que l'utilisateur a ou non soumis une publication sur un ou plusieurs d'un réseau social ou d'un réseau professionnel associé au fichier, et que l'utilisateur a ou non rejoint un site de groupe ou d'équipe sur lequel le fichier est répertorié ;

    soumettre l'une ou plusieurs requêtes à un ou plusieurs magasins de données locaux sur le deuxième dispositif informatique et à un ou plusieurs magasins de données distants ;

    déterminer un niveau de confiance pour chaque fichier donné des fichiers pertinents déterminés selon un nombre de critères de l'un ou plusieurs critères que le fichier donné satisfait ;

    suggérer automatiquement, via un dispositif d'affichage associé au premier dispositif informatique, parmi l'un ou plusieurs fichiers déterminés pour être pertinents pour l'utilisateur selon des résultats de l'une ou

    plusieurs requêtes soumises, uniquement les fichiers pertinents déterminés présentant un niveau de confiance au-dessus d'un seuil prédéfini ; et

    présenter des informations de synthèse pour chacun des un ou plusieurs fichiers prédéfinis, les informations de synthèse comprenant un ou plusieurs de : un nom du fichier, un propriétaire du fichier, un emplacement de stockage du fichier, une ou plusieurs images associées au fichier, un type du fichier, et une date de modification du fichier,

    dans lequel le module de suggestion de fichier est une partie intégrante d'un ensemble coordonné d'applications (310) incluant l'application et fournit des services de suggestion de fichier aux applications au sein de l'ensemble coordonnées d'applications.


     
    8. Le système de la revendication 7, dans lequel le module de suggestion de fichier fait partie d'un système d'exploitation du troisième dispositif informatique fournissant des services de suggestion de fichier à des applications au sein du système d'exploitation.
     
    9. Le système de la revendication 7, dans lequel le module de suggestion de fichier fait partie d'un service tiers accessible par une pluralité de dispositifs informatiques sur un ou plusieurs réseaux.
     
    10. Procédé exécuté par un module de suggestion de fichier (318) dans un dispositif informatique pour suggérer automatiquement un ou plusieurs fichiers, le procédé comprenant :

    détection (810) d'une d'une action d'ouverture, d'une action d'enregistrement, d'une action de partage ou d'une action de commentaire sur un d'un fichier stocké localement ou d'un fichier stocké à distance associé à un utilisateur et traité par une application (312, 314, 316) ;

    sur détection de l'action détectée, génération (820) d'une ou plusieurs requêtes pour déterminer des fichiers pertinents pour l'utilisateur, dans lequel l'une ou plusieurs requêtes sont générées selon un ou plusieurs critères incluant au moins une de déterminations que l'utilisateur à l'origine de l'action est ou non un auteur du fichier, que le fichier est ou non partagé avec l'utilisateur, que le fichier a été ou non envoyé par courriel à l'utilisateur, que l'utilisateur a ou non soumis une publication sur un ou plusieurs d'un réseau social ou d'un réseau professionnel associé au fichier, et que l'utilisateur a ou non rejoint un site de groupe ou d'équipe sur lequel le fichier est répertorié ;

    soumission (830) d'une ou plusieurs requêtes à un ou plusieurs magasins de données locaux sur le dispositif informatique et à un ou plusieurs magasins de données distants ;

    détermination de l'un ou plusieurs fichiers à être pertinents pour l'utilisateur selon des résultats de l'une ou plusieurs requêtes soumises ;

    détermination d'un niveau de confiance pour chaque fichier donné des fichiers pertinents déterminés selon un nombre de critères de l'un ou plusieurs critères que le fichier satisfait ;

    un ou plusieurs de : gestion des priorités, tri et groupement (840) de l'un ou plusieurs fichiers selon les résultats de l'une ou plusieurs requêtes et un caractère récent chronologiquement de l'un ou plusieurs critères ; et

    suggestion automatique (850), parmi l'un ou plusieurs fichiers déterminés pour être pertinents pour l'utilisateur selon des résultats de l'une ou plusieurs requêtes soumises, uniquement des fichiers pertinents déterminés présentant un niveau de confiance au-dessus d'un seuil prédéfini,

    dans lequel le module de suggestion de fichier est une partie intégrante d'un ensemble coordonné d'applications (310) incluant l'application et fournit des services de suggestion de fichier aux applications au sein de l'ensemble coordonnées d'applications.


     
    11. Le procédé de la revendication 10, dans lequel une suggestion automatique de l'un ou plusieurs fichiers comprend :
    une suggestion automatique, via un écran d'affichage, de l'un ou plusieurs fichiers déterminés pour être pertinents pour l'utilisateur accompagnés d'une pluralité de fichiers dans un répertoire de fichiers sélectionné associé à l'utilisateur.
     
    12. Support lisible par un ordinateur stockant en son sein des instructions exécutables par un ordinateur qui, lorsqu'exécutées par un processeur, font exécuter au processeur le procédé de l'une quelconque des revendications 10 à 11.
     




    Drawing





























    Cited references

    REFERENCES CITED IN THE DESCRIPTION



    This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

    Patent documents cited in the description