Contact creation and utilization

By creating contacts associated with documents, the complex problem of content transfer in collaborative projects is solved, efficient content management and unified communication across applications are achieved, and the user experience is improved.

CN114926141BActive Publication Date: 2025-10-03MICROSOFT TECHNOLOGY LICENSING LLC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210386601.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2016-03-16
Filing Date
2017-03-16
Publication Date
2025-10-03
Estimated Expiration
2037-03-16

AI Technical Summary

Technical Problem

In collaborative projects, communication often spans multiple applications, resulting in complex content transfer and loss of context. Users need to manually transfer content between different applications, lacking unified management.

Method used

By creating contacts associated with documents, you can transfer and manage content across applications, use contact data to send and receive communications between different applications, identify related document content, and merge and modify it.

Benefits of technology

It simplifies the process of transferring content between different applications, improves user interaction efficiency, reduces waiting time, and improves the efficiency of data transfer across applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114926141B_ABST
    Figure CN114926141B_ABST
Patent Text Reader

Abstract

A non-limiting example of the present disclosure describes the creation and management of contacts associated with a document. A contact can be created for a document in a first application. The contact can be used to add content from a second application to the document. The contact can be stored. Contact data for the contact can be sent to one or more processing devices. The exemplary created contact can be used to transfer content from one or more applications to a document in another application. Other examples are also described.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the Chinese patent application with application date of March 16, 2017, application number 201780017495.0, and invention name “Contact Creation and Utilization”.

[0002] CROSS-REFERENCE TO RELATED APPLICATIONS

[0003] This application was filed as a PCT international patent application on March 16, 2017, and claims priority to U.S. patent application No. 15 / 072,156, filed on March 16, 2016, the disclosure of which is hereby incorporated by reference in its entirety. Background Art

[0004] User studies have shown that communication in collaborative projects often occurs in applications beyond a single document. Project collaboration may span multiple applications and include content in different formats. If collaboration occurs outside the application for a document, the document lacks and is unaware of communications outside the document. In this case, when the user sits down to work on the document, the user must recall in which application the communication occurred. Furthermore, the user must perform additional steps to transfer content from one application to a document in a different application. In this case, much of the context of the communication may be lost. This application is directed to the general technical environment of improved processing of devices for transferring data between applications. Summary of the Invention

[0005] A non-limiting example of the present disclosure describes the creation and management of contacts associated with a document. A contact may be created for a document in a first application. The contact may be used to add content from a second application to the document. The contact may be stored. Contact data for the contact may be sent to one or more processing devices. The exemplary created contact may be used to transfer content from one or more applications to a document in another application.

[0006] In another non-limiting example of the present disclosure, a contact created for one or more documents may be used to transfer content from at least a first application to a document in a second application. A communication corresponding to the contact may be received. The communication may include contact data for the contact and content transmitted from the first application. A document corresponding to the contact may be identified. The document may be associated with the second application. In this example, the communication may be parsed to determine one or more portions of the content to be included in the document. The document may be modified to include one or more portions of the content within the document.

[0007] This summary is provided to introduce some concepts in a simplified form, which are further described in the detailed description below. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to limit the scope of the claimed subject matter. Other aspects, features, and / or advantages of the examples will be set forth in part in the description below and in part will be apparent from the description or may be learned through practice of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0008] Non-limiting and non-exhaustive examples are described with reference to the following figures.

[0009] Figure 1 is a block diagram illustrating an example of a computing device with which aspects of the present disclosure may be practiced.

[0010] Figure 2A and 2B is a simplified block diagram of a mobile computing device with which aspects of the present disclosure may be practiced.

[0011] Figure 3 is a simplified block diagram of a distributed computing system in which aspects of the present disclosure may be practiced.

[0012] Figure 4 An exemplary system is shown that is implementable on one or more computing devices upon which aspects of the disclosure may be practiced.

[0013] Figure 5

[0046] An exemplary method for managing exemplary contacts that can be utilized to practice aspects of the present disclosure.

[0014] Figure 6 is an exemplary method for creating exemplary contacts that can be utilized to practice aspects of the present disclosure.

[0015] Figure 7 is an exemplary method of communication processing with which aspects of the present disclosure may be practiced.

[0016] Figure 8 is an exemplary processing device diagram illustrating the creation of exemplary contacts with which aspects of the present disclosure may be practiced.

[0017] Figure 9A and 9B is an exemplary processing device diagram illustrating application communications including exemplary contacts with which aspects of the present disclosure may be practiced.

[0018] Figure 10A and 10B is an exemplary processing device diagram illustrating modifications to a document corresponding to an exemplary contact with which aspects of the present disclosure may be practiced. DETAILED DESCRIPTION

[0019] The examples described herein provide for the creation and management of contacts that can be used to identify one or more documents. The exemplary contacts as described herein may include identity data for communications that can be added to any of a number of different applications. The programming operations described herein may be performed to associate the exemplary contacts with one or more documents or files. The exemplary contacts may include contact data, including any but not limited to: a contact identifier / name, a phone number, an email address, information associations with applications / services, shared attributes, and associated documents, among other examples. However, those skilled in the art will recognize that the contact data may vary and may be expanded to include any data that can be used to communicate with one or more other processing devices. Furthermore, in the examples, the form and field values ​​of the contact data may be modifiable.

[0020] In some examples, documents can be stored in an application different from the application in which the communication occurred. As an example, a contact can be used in a communication occurring in a first application, where the contact can be used to capture content and transfer the captured content to a document in another application. In some examples, application content can be retrieved from any data source, including, but not limited to, websites, documents, stored files, message threads, chat conversations, and the like. For example, consider communication applications such as messaging applications (e.g., Short Message Service (SMS)), email applications, social networking applications, voice / video calling applications, collaborative workspace applications, and the like, in which users can collaborate with one another on communications. Multiple users can collaborate on school or work projects, event plans, and the like, while simultaneously exchanging portions of multiple communications and / or content. Users can communicate in a first application (e.g., a communication application) but manage the collaboration in separate documents (e.g., a Word document, a spreadsheet document, an information collection document, and the like) running in a different application. A contact can be created for a document in the first application, which, when used, enables content to be transferred from the first application to modify a document in the second application. In some examples, multiple documents can be modified based on the transferred contacts corresponding to the exemplary contacts. Those skilled in the art will recognize that the present disclosure is not limited to the application examples described herein. The operations described here can be applied to any type of application, where content can be in any data format. In this example, bidirectional communication can occur between different applications. For example, content can be sent from a first application to a second application. Updates to the content within a document in the second application can occur, and the updates can be sent back to the communication occurring in the first application.

[0021] Thus, the present disclosure provides multiple technical advantages, including, but not limited to: generation and management of exemplary contacts for incorporating content into documents / files, scalability to multiple processing devices and applications to enable contacts to be captured and sent between different applications / devices, improved user interaction during collaboration across different applications, more efficient operation of processing devices performing data transfers across applications (e.g., saving computing cycles / computing resources), and reduced latency for content transfers between processing devices / applications, among other examples.

[0022] Figure 1-3 and the related description provide a discussion of various operating environments in which examples of the present invention may be practiced. Figure 1-3 The devices and systems shown and discussed are for purposes of example and explanation and are not intended to limit the wide variety of computing device configurations that may be used to practice the examples of the invention described herein.

[0023] Figure 1 1 is a block diagram illustrating the physical components of a computing device 102 (e.g., a mobile processing device) with which examples of the present disclosure can be practiced. For example, computing device 102 can be an exemplary computing device for implementing processes performed in connection with exemplary contact creation and management as described herein. In a basic configuration, computing device 102 can include at least one processing unit 104 and system memory 106. Depending on the configuration and type of computing device, system memory 106 can include, but is not limited to, volatile storage (e.g., random access memory), non-volatile storage (e.g., read-only memory), flash memory, or any combination of these. System memory 106 can include an operating system 107 and one or more program modules 108 suitable for running software programs / modules 120 such as an IO manager 124, other utilities 126, and applications 128. As an example, system memory 106 can store instructions for execution. Other examples of system memory 106 can store data associated with applications. For example, operating system 107 can be suitable for controlling the operation of computing device 102. Furthermore, examples of the present invention can be practiced in conjunction with a graphics library, other operating systems, or any other application and are not limited to any particular application or system. The basic configuration is Figure 1 122 are shown in FIG. 12. The computing device 102 may have additional features or functionality. For example, the computing device 102 may also include additional data storage devices (removable and / or non-removable), such as magnetic disks, optical disks, or tapes. Such additional storage Figure 1 10 and 110. In FIG.

[0024] As described above, a number of program modules and data files may be stored in system memory 106. When executed on processing unit 104, program modules 108 (e.g., input / output (I / O) manager 124, other utilities 126, and applications 128) may perform processes including, but not limited to, one or more stages of the operations described throughout this disclosure. Other program modules that may be used in accordance with examples of the present invention may include email and contact applications, word processing applications, spreadsheet applications, database applications, slide presentation applications, drawing or computer-aided applications, photo editing applications, authoring applications, and the like.

[0025] Furthermore, examples of the present invention may be practiced in electrical circuits comprising discrete electronic components, packaged or integrated electronic chips containing logic gates, circuits utilizing a microprocessor, or on a single chip containing electronic components or a microprocessor. For example, examples of the present invention may be practiced via a system on a chip (SOC) wherein Figure 1 Each or many of the components shown in can be integrated into a single integrated circuit. Such a SOC device may include one or more processing units, a graphics unit, a communication unit, a system virtualization unit, and various application functions, all of which are integrated (or "burned") into a chip substrate as a single integrated circuit. When operated by an SOC, the functions described herein can be operated by dedicated logic integrated with other components of the computing device 102 on a single integrated circuit (chip). Other technologies capable of performing logical operations (e.g., AND, OR, and NOT) can also be used to practice the examples of the present disclosure, including but not limited to mechanical, optical, fluid, and quantum technologies. In addition, the examples of the present invention can be implemented in a general-purpose computer or any other circuit or system.

[0026] The computing device 102 may also have one or more input devices 112, such as a keyboard, a mouse, a pen, a voice input device, a device for voice input / recognition, a touch input device, and the like. It may also include an output device 114, such as a display, speakers, a printer, and the like. The aforementioned devices are examples, and other devices may be used. The computing device 104 may include one or more communication connections 116 that allow for communication with other computing devices 118. Examples of suitable communication connections 116 include, but are not limited to, RF transmitter, receiver, and / or transceiver circuitry; a universal serial bus (USB); parallel and / or serial ports.

[0027] The term computer-readable media as used herein includes computer storage media. Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storing information such as computer-readable instructions, data structures, or program modules. System memory 106, removable storage device 109, and non-removable storage device 110 are all examples of computer storage media (i.e., memory storage). Computer storage media may include RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other article that can be used to store information and can be accessed by computing device 102. Any such computer storage media may be part of computing device 102. Computer storage media does not include carrier waves or other propagated or modulated data signals.

[0028] Communication media may 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 includes any information delivery media. The term "modulated data signal" may describe a signal that has one or more 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), infrared, and other wireless media.

[0029] Figure 2A and 2B A mobile computing device 200 is shown, such as a mobile phone, smartphone, personal digital assistant, tablet personal computer, phablet, tablet computer, laptop computer, etc., with which examples of the present invention may be implemented. The mobile computing device 200 may be an exemplary computing device for processing associated with exemplary contact creation and management as described herein. For example, the mobile computing device 200 may be implemented to execute applications and / or application command controls. Application command controls involve the presentation and control of commands for use with applications through a user interface (UI) or a graphical user interface (GUI). In one example, an application command control may be specifically programmed to work with a single application. In other examples, an application command control may be programmed to work across more than one application. Reference Figure 2A, shows an example of a mobile computing device 200 for implementing the examples. In a basic configuration, the mobile computing device 200 is a handheld computer with input and output elements. The mobile computing device 200 typically includes a display 205 and one or more input buttons 210 that allow a user to enter information into the mobile computing device 200. The display 205 of the mobile computing device 200 may also function as an input device (e.g., a touch screen display). If included, an optional side input element 215 allows further user input. The side input element 215 may be a rotary switch, a button, or any other type of manual input element. In alternative examples, the mobile computing device 200 may include more or fewer input elements. For example, in some examples, the display 205 may not be a touch screen. In yet another alternative example, the mobile computing device 200 is a portable telephone system, such as a cellular phone. The mobile computing device 200 may also include an optional keyboard 235. The optional keyboard 235 may be a physical keyboard or a "soft" keyboard generated on the touch screen display or any other soft input panel (SIP). In various examples, the output elements include a display 205 for displaying a GUI, a visual indicator 220 (e.g., a light emitting diode), and / or an audio transducer 225 (e.g., a speaker). In some examples, the mobile computing device 200 includes a vibration transducer for providing tactile feedback to the user. In yet another example, the mobile computing device 200 includes input and / or output ports, such as an audio input (e.g., a microphone jack), an audio output (e.g., a headphone jack), and a video output (e.g., an HDMI port), for sending signals to or receiving signals from external devices.

[0030] Figure 2B 2 is a block diagram illustrating the architecture of one example of a mobile computing device. That is, a mobile computing device 200 can incorporate a system (i.e., architecture) 202 to implement some examples. In one example, the system 202 is implemented as a "smartphone" capable of running one or more applications (e.g., a browser, email, calendar, contact manager, messaging client, game, and media client / player). In some examples, the system 202 is integrated into a computing device, such as an integrated personal digital assistant (PDA), a tablet computer, and a wireless phone.

[0031] One or more application programs 266 can be loaded into memory 262 and run on or in association with operating system 264. Examples of application programs include phone dialers, email programs, personal information management (PIM) programs, word processing programs, spreadsheet programs, Internet browser programs, messaging programs, and the like. System 202 also includes a non-volatile storage area 268 within memory 262. Non-volatile storage area 268 can be used to store persistent information that should not be lost if system 202 loses power. Application programs 266 can use and store information in non-volatile storage area 268, such as email or other messages used by email applications. A synchronization application (not shown) also resides on system 202 and is programmed to interact with a corresponding synchronization application residing on a host computer to synchronize information stored in non-volatile storage area 268 with corresponding information stored on the host computer. It should be appreciated that other applications can be loaded into memory 262 and run on the mobile computing device 200 described herein.

[0032] The system 202 has a power source 270, which is implemented as one or more batteries. The power source 270 may also include an external power source, such as an AC adapter or a power docking station to replenish or recharge the batteries.

[0033] The system 202 may include a peripheral device port 230 that performs the function of facilitating a connection between the system 202 and one or more peripheral devices. Transmissions to and from the peripheral device port 230 are under the control of an operating system (OS) 264. In other words, communications received by the peripheral device port 230 may be propagated to the application 266 via the operating system 264, and vice versa.

[0034] System 202 may also include a radio interface layer 272 that performs the functions of sending and receiving radio frequency communications. Radio interface layer 272 facilitates wireless connectivity between system 202 and the "outside world" via a communications carrier or service provider. Transmissions to and from radio interface layer 272 occur under the control of operating system 264. In other words, communications received by radio interface layer 272 can be propagated to application programs 266 via operating system 264, and vice versa.

[0035] The visual indicator 220 can be used to provide visual notifications, and / or the audio interface 274 can be used to generate audible notifications via the audio transducer 225. In the example shown, the visual indicator 220 is a light-emitting diode (LED), and the audio transducer 225 is a speaker. These devices can be directly coupled to the power supply 270 so that when activated, they remain on for the duration indicated by the notification mechanism, even if the processor 260 and other components may be shut down to conserve battery power. The LED can be programmed to remain on indefinitely until the user takes action to indicate the device's power status. The audio interface 274 is used to provide audible signals to the user and receive audible signals from the user. For example, in addition to being coupled to the audio transducer 225, the audio interface 274 can also be coupled to a microphone to receive audible input, such as to facilitate telephone conversations. According to examples of the present invention, the microphone can also be used as an audio sensor to facilitate controlling notifications, as described below. The system 202 can also include a video interface 276, which enables the operation of the onboard camera 230 to record still images, video streams, etc.

[0036] The mobile computing device 200 implementing the system 202 may have additional features or functionality. For example, the mobile computing device 200 may also include additional data storage devices (removable and / or non-removable), such as magnetic disks, optical disks, or tapes. Such additional storage Figure 2B denoted by non-volatile storage area 268.

[0037] As described above, data / information generated or captured by the mobile computing device 200 and stored via the system 202 is stored locally on the mobile computing device 200, or the data may be stored on any number of storage media accessible to the device via the radio 272 or via a wired connection between the mobile computing device 200 and a separate computing device associated with the mobile computing device 200 (e.g., a server computer in a distributed computing network such as the Internet). It should be appreciated that such data / information may be accessed via the mobile computing device 200 via the radio 272 or via a distributed computing network. Similarly, such data / information may be readily transferred between computing devices for storage and use according to well-known data / information transfer and storage means, including electronic mail and collaborative data / information sharing systems.

[0038] Figure 3 One example of an architecture for a system for providing an application that reliably accesses target data on a storage system and handles communication failures to one or more client devices as described above is shown. Figure 3The system can be an exemplary system for processing related to the exemplary contact creation and management described herein. The target data accessed, interacted with, or edited in association with the programming module 108, the application 120, and the storage / memory can be stored in different communication channels or other storage types. For example, a directory service 322, a web portal 324, a mailbox service 326, an instant messaging repository 328, or a social networking site 330 can be used to store various documents, and the application 128, the IO manager 124, other utilities 126, and the storage system can use any of these types of systems to implement data utilization, as described above. The server 320 can provide a storage system for use by clients operating on the general computing device 102 and the mobile device 200 via the network 315. For example, the network 315 can include the Internet or any other type of local area network or wide area network, and the client node can be implemented as a computing device 102 embodied in a personal computer, a tablet computing device, and / or a mobile computing device 200 (e.g., a mobile processing device). Any of these examples of the client computing device 102 or 200 can obtain content from the repository 316.

[0039] Figure 4 An exemplary system 400 is shown that can be implemented on one or more computing devices, on which various aspects of the present disclosure can be practiced. System 400 can be an exemplary system for processing related to the exemplary contact creation and management described herein, as described herein. The exemplary system 400 presented is a combination of interdependent components that interact to form an integrated whole for program generation based on user example operations for learning. The components of system 400 can be hardware components or software implemented on and / or executed by hardware components. In an example, system 400 can include any of hardware components (e.g., ASICs, other devices for executing / running an OS) and software components running on the hardware (e.g., applications, application programming interfaces, modules, virtual machines, runtime libraries). In one example, exemplary system 400 can provide an environment for running software components, complying with constraints set for operation, and utilizing resources or facilities of the system / processing device, where the components can be software (e.g., applications, programs, modules) running on one or more processing devices. For example, the software (e.g., applications, operating instructions, modules) can run on a processing device such as a computer, a mobile device (e.g., a smartphone / phone, a tablet), and / or any other electronic device. As an example of a process device operating environment, refer to Figure 1-3In other examples, the components of the systems disclosed herein can be distributed across multiple devices. For example, input can be entered on a client device (e.g., a processing device) and information can be processed or accessed from other devices in a network, such as one or more server devices.

[0040] Those skilled in the art will appreciate that systems such as system 400 may vary in size and may include more than Figure 4 More or fewer components may be used than those described in [ 400 ]. In some examples, the interfaces between the components of system 400 may occur remotely, for example, where the components of system 400 may be distributed across one or more devices in a distributed network. In some examples, one or more data repositories / storage devices or other memory are associated with system 400. For example, components of system 400 may have one or more data repositories / memory devices / repositories associated therewith. Data associated with the components of system 400 and processing operations / instructions performed by the components of system 400 may be stored thereon. Components of system 400 may interface with the operating system of a processing device to perform processing operations related to creating and managing exemplary contacts and transferring content between documents in applications or between different applications. One or more components of system 400 may be used to provide exemplary processing for creating exemplary contacts, processing communications involving exemplary contacts, and creating and / or modifying documents. Furthermore, the application service component of presentation system 400 may interface with other application services. An application service may be any resource that can extend the functionality of one or more components of system 400. Application services may include, but are not limited to, web search services, email applications, calendars, device management services, address book services, information services, line of business (LOB) management services, customer relationship management (CRM) services, commissioning services, accounting services, payroll services, and services and / or websites hosted or controlled by a third party, among other examples. Application services may also include other websites and / or applications hosted by a third party, such as social media websites, photo sharing websites, video and music streaming websites, search engine websites, sports, news, or entertainment websites, and the like. Application services may also provide analytics, data compilation, and / or storage services, among other things, in association with components of system 400.

[0041] Furthermore, the components of system 400 can have processing devices and can be configured to process any type of input, including but not limited to speech / voice input, text input, gesture input, handwriting input, and other examples. System 400 can be scalable and configurable to operate on a variety of processing devices, including but not limited to: desktop computers, laptop computers, mobile processing devices such as phones, tablets, tablet computers, wearable processing devices (e.g., watches, glasses, headphones, etc.), in-vehicle processing devices, and any other device with at least one processor, among other examples. Exemplary system 400 includes application component 406, which includes user interface component 408, contact management component 410, and messaging service component 412, wherein each of the identified components may include one or more additional components.

[0042] System 400 may also include one or more storage devices 414, which may store data associated with the operation of one or more components of system 400. Storage device 414 is any physical or virtual memory space. In one example, storage device 414 may be a component of a processing device, such as the processing device example described above. In this example, storage device 414 may interface with other components of system 400. Data associated with any component of system 400 may be stored in storage device 414, where the components may be connected to storage device 414 via a distributed network including cloud computing platforms and infrastructure services. Example storage device 414 may be any of a first-party source, a second-party source, and a third-party source. Among other examples, storage device 414 may store any data used to process processing operations performed by components of system 400, retained data from processing operations, stored programs, code, or application programming interfaces (APIs), training data, links to resources internal and external to system 400, and knowledge data. Furthermore, in this example, components of system 400 may utilize knowledge data in their processing. One or more components of system 400 may use knowledge to improve the processing of any application component 406, where the knowledge data may be obtained from resources internal or external to system 400. In an example, the knowledge data may be stored in storage device 414 or retrieved from one or more resources external to system 400 via a knowledge acquisition operation. As an example, storage device 414 may store exemplary contacts / contact data, documents / files associated with exemplary contacts, communications corresponding to the contacts, and connections between applications and / or third-party services, among other examples.

[0043] exist Figure 4In the example, processing device 402 can be any device that includes at least one processor and at least one memory / storage device. Examples of processing device 402 can include, but are not limited to, processing devices such as desktop computers, servers, phones, tablets, phablets, tablet computers, laptops, watches, and any other collection of electronic components, such as devices with one or more processors or circuits. In one example, processing device 402 can be a device of a user that is executing an application / service. In the example, processing device 402 can communicate with application component 406 via network 404. In one aspect, network 404 is a distributed computing network, such as the Internet. Application services can communicate with application component 406 via network 404. Processing device 402 can be, for example, Figure 1-3 In some examples, processing device 402 may include multiple connected devices.

[0044] Application components 406 are a collection of components for creating and managing exemplary contacts and the transmission of data associated with the exemplary contacts. Application components 406 may include a user interface component 408, a contact management component 410, and a messaging service component 412. In alternative examples, one or more additional components may be created to manage the operations described throughout this disclosure. In various examples, application components 406 may be configured to execute independently of other application components 406. As an example, the processing performed by any application component 406 may be performed by a processing device or incorporated into a product separately from the processing performed by other components, such as user interface component 408 or messaging service component 412. Application components 406 may be stored on one or more processing devices (e.g., client devices), or access to one or more application components 406 may be distributed, such as over a distributed network.

[0045] User interface component 408 is one or more components configured to facilitate interaction with a user of a processing device. User interface component 408 provides transparency and organization to the user of the processing device, allowing the user to interact with multiple applications to create and manage exemplary contacts. For example, user interface component 408 may include generating and displaying one or more user interface elements that can be displayed on the processing device during the execution of one or more applications. User interface elements may be graphical icons representing information associated with an application. User interface component 408 may also function as a front-end for displaying back-end processing (e.g., a graphical user interface) performed by other application components 406. In an example, a user interface definition file may be used to define user interface elements that facilitate interaction between the processing device and applications / services that may be associated with exemplary contacts. The user interface definition file may include programming instructions or operations for managing and displaying user interface elements associated with user interface component 408. For example, user interface elements may be used to illustrate operations including, but not limited to, creating an exemplary contact, modifying / managing an exemplary contact, selecting content to include in a file / document transferred to another application, searching for contacts, accessing applications / services, and / or other resources.

[0046] Contact management component 410 is a component of system 400 that can be used to create and manage exemplary contacts. Contact management component 410 can be one or more executable programs, application programming interfaces (APIs), or any other collection of processing operations, functions, routines, protocols, and / or tools used to build and execute software applications on one or more processing devices. As mentioned above, the exemplary contacts described herein may include identity data. Identity data is data that can be added to communications for transferring information across one or more applications. Identity data may include, but is not limited to, a contact identifier / name, a phone number, an email address, information associations with applications / services, shared attributes, and associated documents, among other examples. Contact management component 410 may also perform processing operations to associate an exemplary contact with one or more documents, files, or other types of content. Exemplary identity data for a contact may be contact data. Contact data is any data associated with an exemplary contact that can be used to identify content transferred from one application to another. For example, an example of contact data may be a phone number or an email address. However, in many examples, different forms of identity data are associated with the exemplary contact. For example, contact data may be used to send data between applications / services, where other identity data such as a contact identifier / name may be used as an identifier for the user to easily locate an exemplary contact, e.g., in a contact list.

[0047] The contact management component 410 can interface with other application components such as the user interface component 408 and the messaging service component 412 to create an exemplary contact. In an example, the user interface component 408 can provide a user interface element that, when selected, can trigger the processing device to initiate the creation of the exemplary contact. In an example, a processing operation can be performed (e.g., via an API, macro, extension / add-on, etc.) to enable the creation of the exemplary contact through one or more different applications. The processing operation can trigger the processing device to display the user interface element so that the relevant fields for creating the exemplary contact can be completed. Figure 5 and Figure 6 The processing operations related to creating an exemplary contact are described in the description of . Figure 8 、 9A 9B and 9B show examples of created contacts stored for use. Contact management component 410 can perform processing operations related to the creation and storage of contacts. As an example, the exemplary contacts can include contact data that can be used to transfer communications from a first application and / or processing device to another application and / or processing device. Communications can be the transmission of electronic data in any form or format, including but not limited to: messages, signals, waves, packets, data streams, etc. In other examples, contact data can be used to send data between documents in the same application. In other examples, the exemplary contacts can be configured to enable two-way communication between different applications. For example, content can be sent from a first application to a second application. Updates to content within a document in the second application can occur, and updates can be sent back to communications occurring in the first application.

[0048] When creating a contact, content management component 410 can interface with messaging service component 412 to obtain and / or register an identifier for data transfer. Messaging service component 412 can be a first-party service, a second-party service, or a third-party service that is used to assign contact data to the exemplary contact. For example, a phone number, email address, etc. can be assigned to the exemplary contact, enabling content management component 410 to send communications associated with the contact to another application and / or device. As an example, communications can be sent via a network 404, such as the Internet. Messaging service component 412 can be one or more executable programs, application programming interfaces (APIs), or any other collection of processing operations, functions, routines, protocols, and / or tools for building and executing software applications on one or more processing devices. In one example, messaging service component 412 can interface with contact management component 410 to programmatically make and receive phone calls and / or send and receive text messages using a web service API. For example, content management component 410 can interface with a third-party messaging service that can be configured to assign contact data to the exemplary contact. The content management component 410 can be configured to manage the utilization of created contacts to obtain contacts from a first application and transfer content to a document in a second application. However, alternative examples can transfer content from one document to another document within the same application. While examples can include transferring content from a first application (e.g., chat, email, messaging application, etc.) to a document in a second application (e.g., word processing application, spreadsheet application, presentation application, collaboration application, etc.), the association between contacts and documents does not limit data transfer to requiring multiple applications.

[0049] Additionally, content management component 410 can be configured to receive and process communications received over network 404. In an example, a communication can be initiated by an application executing on a processing device, such as processing device 402. Figure 7 and 9A -10B describes exemplary processing operations related to receiving and processing communications. Content management component 410 can receive communications associated with exemplary contacts. For another example of a communication, see Figure 9A and 9Band the accompanying description. Communications can include content from applications as well as contact data associated with contacts. In one example, communications can be received from a processing device 402 executing one or more applications. In other examples, communications can be received from other processing devices that collaborate with the execution of applications. Whenever a contact is included in a communication occurring within an application, the communication can be sent to one or more processing devices associated with the contact management component 410 for further processing.

[0050] In an alternative example, communications can be propagated from an application to a messaging service of messaging service component 412. As an example, messaging service component 412 can assign contact data to an exemplary contact, receive communications associated with the assigned contact data, and forward the communications to contact management component 410. In other cases, messaging service component 412 can be used to assign contact data to a contact and manage updates to the contact data without involving the transmission of communications. For example, communication transmission and processing can be handled by processing operations performed by contact management component 410, where contact management component 410 can interface with multiple applications to enable the capture of content within the applications and the transmission of communications including contact data to content management component 410 for further processing. In one example, contact management component 410 can interface with messaging service component 412 to modify or update the contact data of an exemplary contact. For example, the phone number assigned to the contact can be changed.

[0051] Contact management component 410 may receive a communication and identify a document associated with an exemplary contact. One or more contacts may be associated with a document. In some examples, more than one document may be associated with one or more exemplary contacts. Processing operations may be performed to identify documents corresponding to the exemplary contacts. Contact management component 410 may also perform processing operations to evaluate the communication for portions of content to be included in the document. In some examples, all portions of the content within the communication may be included in the document. Operations may be performed to parse the communication to identify one or more portions of content from the communication that may be included in the document. In an example, operations may be performed to evaluate the relevance of a portion of the content included in the document. For example, the communication may include multiple portions of the content that may be included. Consider an example where a document is intended to compile content for a school project, such as an astronomy presentation for a science class. Users may collaborate in a chat application to coordinate content to be included in the presentation and / or a time to meet and discuss the presentation. In the communication thread, other topics unrelated to the presentation may be discussed. For example, a user may mention to another user that a portion of content should be included in the presentation, and then engage in an unrelated communication exchange with the other user discussing a favorite TV show or movie. In such an example, processing operations can be performed to evaluate a data stream provided from the communication, where the operations can identify to include portions of content related to the presentation and exclude discussions of television programs / movies. In doing so, the processing operations performed by the contact management component 410 can evaluate data from the communication and documents, including but not limited to: attribute data and metadata, content included in the document, keywords, user identification associated with a portion of the content, the type of content, and user designation of the content (e.g., a user can mark application content for inclusion in a document), among other examples.

[0052] Contact management component 410 can identify whether to include any portion of content within the document. If it is determined that one or more portions of content are to be included within the document, contact management component 410 can format the content for insertion into the document. Processing operations can be performed to format a portion of the content within the document. In some examples, the data format of the content can be changed.

[0053] Processing operations may be further performed to create a new document and / or modify an existing document to include at least a portion of the content from the communication. In one example, the modification of an existing document may include inserting a portion of the content into a specific location of the document. For example, the content included in the communication may be used to evaluate the content within the document in order to determine relevant points in the document for inserting the content. As an example, consider a document prepared for an astronomical presentation, where a conversation between users about the aurora may be included between content in documents discussing different types of auroras. In this case, the included content may act as a placeholder to remind the user to update the document. In other examples, the document may be modified by including portions of the content at the beginning (e.g., to indicate recently added content) or at a point after other existing content within the document. Those skilled in the art will recognize that programming developers are able to change the insertion of content within a document.

[0054] The contact management component 410 and the messaging service component 412 can further interface to enable bidirectional communication of content between documents and / or applications. In the example of content being sent from a first application to a document in a second application, the application component 406 can be configured to enable updates to the content within the document (of the second application) to be sent back to the first application. For example, a question can be asked in the first application, where the question can be added to a document in the second application. Collaborating users can locate and find the answer and update the document. Exemplary contacts can be utilized to enable the answer to the question to be sent back to the first application.

[0055] Figure 5 is an exemplary method 500 for managing exemplary contacts that can be utilized to practice aspects of the present disclosure. As an example, the method 500 can be performed by an exemplary processing device and / or system such as Figure 1-4 In one example, Figure 4 The system 400 of FIG. 5 depicts an example of components that may be used to implement the method 500. In an example, the method 500 may be performed on a device including at least one processor configured to store and execute operations, programs, or instructions. For example, the method 500 may be performed by a computer such as Figure 4 4. However, method 500 is not limited to these examples. In at least one example, method 500 can be performed (e.g., computer-implemented operations) by one or more components of a distributed network, such as a web service / distributed network service (e.g., a cloud service). The operations performed in method 500 can correspond to operations performed by a system and / or service executing a computer program, an application programming interface (API), or machine learning, among other example processes.

[0056] Method 500 begins at operation 502, where a request to create a contact is submitted. By way of example, among other examples, the request may be made by a user such as Figure 4 Initiated by a processing device such as processing device 402 described in . For example, the client device may be executing an application in which an exemplary contact may be created. In the example, the processing device may receive a selection of a user interface element within the application to initiate contact creation. Examples of exemplary contacts have been previously described, including Figure 4 Description.

[0057] The process may proceed to operation 504 where contact data for an exemplary contact is received. In response to a request (operation 502) to create a contact, the request may be processed by a processing device. In one example, data associated with contact creation may be sent from a processing device (e.g., processing device 402) to at least one service that may assign contact data to the exemplary contact. Examples of contact data have been previously described, e.g., in Figure 4 As described in [ 504 ], the assigned contact data may be received at the processing device that initiated the contact creation request (operation 504). In an alternative example, the processing device that requested the creation of the exemplary contact may store the contact data that may be assigned during the creation of the exemplary contact. For example, the contact data may be retrieved from an application / service associated with contact creation and may be stored for assignment to the contact when the processing device requests contact creation.

[0058] Flow may proceed to operation 506, where the exemplary contacts are stored. The exemplary contacts may be stored on a processing device, such as processing device 402. However, the storage of the exemplary contacts (operation 506) may be extended to processing devices associated with a distributed network. In one example, the contacts may be stored locally on a processing device (operation 506) and on at least one processing device associated with an application / service that manages contacts and documents accessible via a network connection.

[0059] In some examples, the process may proceed to operation 508, where the created contact may be used in application communications. Examples of communications have been previously described, including Figure 4 As an example, the exemplary contact may be used in a communication (e.g., a message, an SMS message, an email, a chat / conversation, a thread, a call to a delimiter within an application (where the call to the delimiter signals the capture of content within the application), etc.). Use of the exemplary contact may trigger the capture of content within the application and include it in a transmission to an application / service associated with managing contacts / contact data. For example, a communication may be sent from a client device to a server that executes, for example, Figure 4 The content included in the communication may be incorporated into at least one document associated with the contact.

[0060] In the example, a processing device may access (operation 510) a document corresponding to an exemplary contact. For example, a processing device such as processing device 402 of system 400 may launch a document associated with the contact. In one example, the document may be stored in a storage device (e.g., storage device 414) associated with an application / service accessible via a distributed network.

[0061] The process may proceed to operation 512 where the modified document may be displayed on the processing device. In an example, the modified document may include contacts from the application communication. For example, the application communication may occur in a first application and the content from the application communication may be incorporated into an exemplary document in another application. In an alternative example, the content from the application communication may be incorporated into a document of the same application. In an example, the modified document may be incorporated into a document in a manner such as Figure 4 The document may be further modified based on operations received at a processing device such as processing device 402 described in

[15] . Updates to the document may be saved and / or sent for storage over a distributed network. In some examples, updates to content within a document may be sent to another document and / or application / service. For example, a portion of a document may be updated (in a second application) and the update may be sent back to the first application.

[0062] Figure 6 is an exemplary method 600 for creating exemplary contacts that can be utilized to practice aspects of the present disclosure. As an example, the method 600 can be performed by an exemplary processing device and / or system such as Figure 1-4 In one example, Figure 4 System 400 of the present invention describes an example of components that can be used to implement method 600. In an example, method 600 can be performed on a device including at least one processor configured to store and execute operations, programs, or instructions. However, method 600 is not limited to these examples. In at least one example, method 600 can be performed (e.g., computer-implemented operations) by one or more components of a distributed network, such as a web service / distributed network service (e.g., a cloud service). In an example, the operations performed in method 600 can correspond to operations performed by a system and / or service executing a computer program, an application programming interface (API), or a machine learning process, among other examples.

[0063] Method 600 begins at operation 602, where a request to create an example contact is received. The example contact may be associated with one or more documents. For example, a document such as Figure 4 The request is received by a processing device such as the processing device 402 described in the description of FIG. The request may be received (operation 602) by an application / service (including one or more processing devices) that manages exemplary contacts.

[0064] The process may proceed to operation 604, where an exemplary contact may be created for one or more documents. The creation of the exemplary contact (operation 604) may include storing (operation 606) the contact (and associated contact data) on a storage device associated with an application / service for contact management. In an example, a communication associated with the created contact may be received, where the exemplary contact may be used to identify a document and include content within the document. In one example, the creation (operation 604) may include communicating with a communication service (e.g., Figure 4 The messaging service component 412 described in ) is connected to obtain contact data to be assigned to the contact, wherein the contact data is at least one selected from the group consisting of: a telephone number and an email address.

[0065] Flow may proceed to operation 608, where the contact data for the contact may be sent to one or more processing devices. In one example, the contact data for the contact may be sent to a processing device such as processing device 402, which may store and utilize the exemplary contact / contact data. In other examples, the contact data may be sent to other applications / services that may be associated with the distribution of the contact data (e.g., a phone number or email address).

[0066] In some examples, method 600 may proceed to decision operation 610, where it is determined whether an update to the contact data has occurred. If an update to the exemplary contact has been received (e.g., a name change, a contact data change, a deletion, etc.), the process branches to "yes" and returns to operation 606, where the stored contact is updated. If no update to the exemplary contact has been received, the process branches to "no" and the process ends or remains idle until further processing associated with the exemplary contact is initiated.

[0067] Figure 7 is an exemplary method 700 for communication processing, with which aspects of the present disclosure may be practiced. As an example, the method 700 may be performed by an exemplary processing device and / or system such as Figure 1-4 In one example, Figure 4System 400 of the present invention describes an example of components that can be used for implementation of method 700. In an example, method 700 can be performed on a device including at least one processor configured to store and execute operations, programs, or instructions. However, method 700 is not limited to these examples. In at least one example, method 700 can be performed (e.g., computer-implemented operations) by one or more components of a distributed network, such as a web service / distributed network service (e.g., a cloud service). In an example, the operations performed in method 700 can correspond to operations performed by a system and / or service executing a computer program, an application programming interface (API), or a machine learning process, as well as other examples.

[0068] Method 700 begins at operation 702, where a communication associated with a contact is received. As an example, the communication may be received (operation 702) at a processing device associated with an application / service that manages contacts / contact data.

[0069] The process may proceed to operation 704 where documents associated with the contact are determined based on the received communication. As an example, the communication may specify data (e.g., metadata) identifying the contact and / or contact data. This information may be used to find documents associated with the exemplary contact.

[0070] The process may proceed to operation 706, where the received communication is parsed to determine portions of content from the communication to be included in a document corresponding to an exemplary contact. In the example, portions of content that may be included in the communication include, but are not limited to, conversations, messages, emails, files, links, video data, image data, handwritten input, and audio content, among other examples. The processing operations associated with parsing (operation 706) are described in the description of the contact management component 410 of system 400. In response to determining that one or more portions of the communication are to be included in the document, the process may proceed to operation 708, where the content from the communication is formatted for insertion into the document. Examples of formatting are described in the description of the contact management component 410 of system 400 and may include, but are not limited to, changing the data format of the content, aligning the content for insertion into the document, modifying the content (including typographical corrections), validating link data, adding emphasis, adding comment data, and the like.

[0071] At operation 710, processing operations may be performed to modify a document associated with the contact. In one example, the document may be modified to include one or more portions of content from the communication. For example, formatted content may be included in the document. In some examples, the processing operations performed may determine a specific insertion point for inserting the content within the document. Flow may proceed to operation 712, where the modified document is stored. In one example, the modified document may be stored on a storage device of an application / service accessible via a distributed network. In some examples, the stored document may be sent from such an application / service to one or more processing devices.

[0072] Figure 8 is an example processing device view 800 illustrating the creation of an example contact with which aspects of the present disclosure may be practiced. The processing device view 800 is an example of a processing device view of a processing device during the creation of an example contact. In one example, the processing device view 800 may be from a device such as Figure 4 800 illustrates a processing device view of a client device of processing device 402 as described in [ 801 ]. As an example, processing device view 800 illustrates data fields that may be included for contact creation. In the example shown in processing device view 800 , a contact for "Science 101" is being created. For example, the processing device may be used to create a folder for Science 101, which may be designated as a contact. Creating a contact may present a user interface element that enables a user to create and manage exemplary contacts via the processing device. For example, contact data may be shared to associate the contact data with one or more documents managed by a distributed application / service. A folder for Science 101 may be added as a contact, for example, where Science 101 may appear in a contact list associated with a user account and / or processing device. Science 101 may then be available for inclusion in communications like any other contact information. In the example, the created contact may be associated with an application / service that manages documents via a distributed network. For example, documents in a shared folder (of a distributed application / service) may be added as contacts that may be included in collaborative communications. When the created contact is utilized in a communication (eg, collaborative communication within an application), content from the communication can be captured and sent to a document associated with the contact (eg, Science 101).

[0073] Figure 9A and 9B 900 and 910, respectively, illustrate application communications including exemplary contacts with which aspects of the present disclosure may be practiced. Figure 9A) shows an exemplary contact using Science 101 in a communication. For example, an SMS message (902) may be initiated in which a user attempts to include the contact Science 101 in the "To" field of the SMS message 902. As shown in the processing device view 900, the processing device may recognize the received input and provide an auto-complete suggestion that includes the contact within the "To" field of the SMS message 902. When the processing device receives the input of "Sc", the processing device may process the received input and return results from the contact list shown in the processing device view 900. The processing device view 910 ( Figure 9B ) shows that contact Science 101 is included in the communication. Communication thread 912 is shown in processing device view 910, in which the inclusion of an exemplary contact (e.g., Science 101) triggers the capture of content from communication thread 912, where the content can be captured and included in a document associated with the exemplary contact. As shown in processing device view 910, content from a presentation (e.g., report Auora.ppt) is included within communication thread 912. Further communications are included in communication thread 912, for example, in which a user indicates that such presentation content should be included in a document that the user is compiling for a classroom presentation. For example, content from communication thread 912 can be sent for processing to determine portions of the content to be included in a document associated with the contact of Science 101.

[0074] Figure 10A and 10B Exemplary processing device views 1000 and 1010, respectively, illustrate modifications to documents corresponding to exemplary contacts with which aspects of the present disclosure may be practiced. Figure 9A and 9BIn the example described in , processing device view 1000 shows a processing device view that displays document 1002. As an example, document 1002 (e.g., an Aurora document) is a collaborative or shared document. In one instance, document 1002 can be a document maintained by a distributed application / service (e.g., a file hosting service). The file hosting service can be any of a first-party application service and a third-party application service. As shown in processing device view 1000, content from an SMS message (e.g., a presentation report Auora.ppt) is included in document 1002. Processing device view 1010 is a processing device view that shows a further presentation of content from document 1002 (e.g., an Aurora document). As shown in processing device view 1010, conversation content 1012 is included in document 1002. Processing device view 1010 shows that conversation content 1012 is included at a specific location in document 1002. For example, the context of the conversation content 1012 may be evaluated where, for example, it is determined that the conversation content 1012 is associated with a portion of the document 1002 that is relevant to the description of Aurora.

[0075] Reference throughout this specification to "one example" or "an example" means that a particular described feature, structure, or characteristic is included in at least one example. Thus, the use of these terms may refer to more than just one example. Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more examples.

[0076] However, one skilled in the relevant art will recognize that the examples may be practiced without one or more of the specific details, or with other methods, resources, materials, etc. In other instances, well-known structures, resources, or operations are not shown or described in detail simply to avoid obscuring aspects of the examples.

[0077] Although sample examples and applications have been illustrated and described, it should be understood that the examples are not limited to the precise configurations and resources described above. Various modifications, changes, and variations that will be apparent to those skilled in the art may be made in the arrangement, operation, and details of the methods and systems disclosed herein without departing from the scope of the claimed examples.

Claims

1. A method for automatically generating a document by capturing the content of a conversation between users on a network, the method comprising: associating a contact with the conversation, wherein the conversation is a direct conversation between the users and the users collaborate during the conversation, and wherein the contact is used to passively capture content from the conversation; associating the contact with at least one document; receiving content of the conversation, wherein the content of the conversation includes one or more indications of at least one of the users collaborating in the direct conversation that the content is relevant to a subject matter of the at least one document; automatically identifying a portion of the content of the conversation to include in the at least one document based on a relevance of the content to the at least one document; and The portion of the content is automatically transferred to the at least one document.

2. The method according to claim 1, further comprising: receiving a request from the contact to create the conversation, wherein the contact is related to the at least one topic of the conversation and the contact is associated with at least one application; determining, based on the identified portion of the content, a location in the at least one document to be updated with the portion of the content; formatting the identified portion of the content based on the application; and The portion of the content is transferred to the at least one document.

3. The method according to claim 1, wherein: The content of the conversation comprises, at least in part, a reference to the at least one document indicated by the at least one of the users in the conversation; and The method also includes providing the at least one document associated with the contact.

4. The method according to claim 3, further comprising: The content of the conversation is parsed to determine one or more portions of the content from the conversation to be included in the at least one document.

5. The method according to claim 4, further comprising: The one or more portions of the content are formatted for insertion into the at least one document.

6. The method according to claim 4, further comprising: The at least one document is modified to include the one or more portions of the content.

7. The method according to claim 6, wherein: The modifying the at least one document further comprises: The one or more portions of the content are inserted into specific locations of the at least one document.

8. The method according to claim 1, further comprising: A communication service is interfaced to obtain contact data to be assigned to the contact associated with the conversation, wherein the contact data includes at least one of a telephone number or an email address.

9. The method according to claim 1, further comprising: The at least one document is stored in a storage device managed by at least one selected from the group consisting of a first party service and a third party service.

10. A system for automatically generating documents by passively capturing the content of conversations between users on a network, the system comprising: at least one processor; as well as a memory operatively connected to the at least one processor, configured to store computer-executable instructions that, when executed by the at least one processor, cause the at least one processor to perform operations comprising: associating a contact with the conversation, wherein the conversation is a direct conversation between the users and the users collaborate during the conversation, and wherein the contact is used to passively capture content from the conversation; associating the contact with at least one document; receiving content of the conversation, wherein the content of the conversation includes one or more indications of at least one of the users collaborating in the direct conversation that the content is relevant to a subject matter of the at least one document; automatically identifying one or more portions of the content of the conversation to include in the at least one document based on a relevance of the content of the conversation to the at least one document; and The one or more portions of the content are automatically transferred to the at least one document.

11. The system according to claim 10, wherein: The memory stores additional computer-executable instructions for: A request is received to create the contact associated with the conversation.

12. The system according to claim 10, wherein: The memory stores additional computer-executable instructions for: receiving a communication associated with the contact, wherein the communication includes, at least in part, an indication of a reference by the at least one of the users to the at least one document associated with the conversation; and The at least one document associated with the contact is provided.

13. The system according to claim 12, wherein: The memory stores additional computer-executable instructions for: The communication is parsed to determine the one or more portions of the content from the communication to be included in the at least one document.

14. The system according to claim 13, wherein: The memory stores additional computer-executable instructions for: The one or more portions of the content are formatted for insertion into the at least one document.

15. The system according to claim 12, wherein: The memory stores additional computer-executable instructions for: The at least one document is modified to include the one or more portions of the content.

16. The system according to claim 15, wherein: The modifying the at least one document further comprises: The one or more portions of the content are inserted into specific locations of the at least one document.

17. The system according to claim 10, wherein: The memory stores additional computer-executable instructions for: A communication service is interfaced with to obtain contact data for the contact to be assigned to the conversation, the contact data comprising at least one of a telephone number or an email address.

18. The system according to claim 10, wherein: The memory stores additional computer-executable instructions for: The generated at least one document is stored in a storage device managed by at least one selected from the group consisting of a first party service and a third party service.

19. A method for automatically generating a document by capturing the content of a conversation between users on a network, the method comprising: receiving content of the conversation via a contact, wherein the conversation is a direct conversation between the users and the users collaborate during the conversation, wherein the conversation includes contact data of the contacts and content from the conversation, and wherein the content of the conversation includes one or more indications of at least one of the users in the direct conversation that the content is relevant to a subject for the capture; automatically identifying, by the contact, at least one document associated with the conversation; automatically identifying at least a portion of the content of the conversation for inclusion in the at least one document based on a relevance of the content of the conversation to the at least one document; and The at least a portion of the content is automatically transferred to the at least one document.

20. The method according to claim 19, wherein The content includes: chat conversations, messages, emails, files, links, video data, image data, handwritten input or audio content.

21. A method comprising: receiving, in a direct conversation between a plurality of users, an indication from a user that content identified in the conversation is relevant to a document; passively capturing content from the conversation using contacts associated with the conversation and the document; causing the content to be included in the document based on receiving the indication; as well as Updates to the document are received, and upon receipt of the updates to the document, the updates are sent to the conversation so that the updates are presented in the conversation.

22. The method according to claim 21, wherein The conversation belongs to a first application and the document belongs to a second application.

23. The method according to claim 22, further comprising: accessing the document before causing the content to be included in the document; as well as A location in the document is determined where the content is to be included.

24. The method according to claim 23, further comprising: The content is formatted based on the location in the second application before causing the content to be included in the document.

25. The method of claim 21, wherein: The indication of the user in the conversation includes a reference to the content in the conversation; and The method also includes receiving the content associated with the reference.

26. The method of claim 21, wherein: The content includes attachments in the conversation; and The indication of the user in the conversation includes a reference to the attachment in the conversation.

27. The method of claim 21, further comprising: Prior to receiving the indication, the contact is associated with the conversation and the document.

28. A system comprising: processor; as well as a memory storing computer-executable instructions that, when executed by the processor, cause operations to be performed, the operations comprising: receiving, in a direct conversation between a plurality of users in a first application, an indication from a user that content identified in the conversation should be included in a document in a second application, wherein contacts associated with the conversation and the document are used to passively transfer content from the conversation to the document; transferring a portion of the content to the second application based on receiving the indication so that the portion of the content is included in the document to update the document; receiving updates to the document; and Upon receiving the update to the document, the update is sent to the first application so that the update is presented in the dialog.

29. The system of claim 28, wherein: The memory stores additional computer-executable instructions for: Prior to transferring the portion of the content to the second application, the content is parsed to determine the portion of the content to be included in the document.

30. The system of claim 29, wherein: Determining the portion of the content to include in the document is based on a relevance of the content to the document.

31. The system of claim 28, wherein: The memory stores additional computer-executable instructions for: accessing the document before transferring the portion of the content to the second application; and A location in the document is determined where the portion of the content is to be included in the document.

32. The system of claim 28, wherein: The memory stores additional computer-executable instructions for: Prior to transferring the portion of the content to the second application, the portion of the content is formatted based on the second application for insertion into the document.

33. The system of claim 28, wherein: The indication of the user in the conversation includes a reference to the content in the conversation; and The memory stores further computer-executable instructions for receiving the content associated with the reference.

34. The system of claim 28, wherein: The content includes attachments in the conversation; and The indication of the user in the conversation includes a reference to the attachment in the conversation.

35. The system of claim 28, wherein: The memory stores additional computer-executable instructions for: Prior to receiving the indication, the contact is associated with the conversation and the document.

36. The system of claim 28, wherein: The memory stores additional computer-executable instructions for: A request to create the contact is received.

37. The system of claim 36, wherein: The memory stores additional computer-executable instructions for: The contact is created in response to receiving the request to create the contact, the creating comprising interfacing with a communication service to obtain contact data to be assigned to the contact, the contact data comprising at least one of a telephone number or an email address.

38. A method comprising: receiving an indication from a user associated with a direct conversation between a plurality of users that content is to be included in a document; receiving a contact, wherein the contact is associated with the document; passively capturing the content using the contact and transferring the content to the document; and Causing display of the content in the document.

39. The method of claim 38, further comprising: Causing display of the content in the conversation.

40. The method of claim 38, further comprising: Prior to causing the display of the content, the content is inserted into the document.

Citation Information

Patent Citations

  • Making document changes by replying to electronic messages

    US20120278401A1

  • Inline user addressing in chat and document editing sessions

    US8938669B1