Meeting proposal generator
By providing a comprehensive user-friendly interface system between the electronic calendar and the communication channel application, analyzing communication content using natural language processing and automatically generating and confirming electronic calendar entries, the cumbersome multi-party agreement process in the prior art is solved, and efficient time and location agreements are achieved.
Patent Information
- Application Number
- CN202411165119.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-08-15
- Filing Date
- 2024-08-23
- Publication Date
- 2025-02-25
AI Technical Summary
The prior art requires frequent switching between electronic calendar applications and communication channel applications when identifying and coordinating time and location agreements between multi-party electronic devices, resulting in cumbersome and inefficient processes.
By providing a comprehensive system and method, using a user-friendly interface to generate and confirm electronic calendar entries, send and receive meeting proposals directly through the graphical user interface of the communication channel application, avoiding switching applications. The system uses natural language processing and other technologies to analyze communication content, automatically extract meeting intentions and parameters, generate electronic calendar proposals, and automatically add them to the electronic calendar after confirmation by each party.
It realizes efficient proposal and confirmation of time and location between multiple parties, simplifies user operation processes, improves productivity and user experience, and reduces the need for multiple communications and application switching.
Smart Images

Figure CN119520703A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of U.S. Provisional Application No. 63 / 578,563, filed on August 24, 2023, entitled “Meeting Proposal Generator,” the entire contents of which are incorporated herein by reference for all purposes. Background Art
[0003] The present disclosure relates generally to productivity tools, and more particularly to systems and methods for automatically generating meeting proposals between electronic devices based at least in part on observations of one or more of the electronic devices.
[0004] In today's fast-paced environment, electronic device users often rely on electronic calendars within electronic devices to plan and schedule activities. When multiple parties are involved, it may be quite challenging to identify the time and / or location that works for all parties, requiring considerable back-and-forth communication between the parties to reach an agreement about time and / or location. Multiple different communication channels can facilitate this back-and-forth communication such as via text messages, telephone conversations, etc. Unfortunately, the process for identifying available time and / or location and adding activity entries to an electronic calendar often requires multiple steps via a dedicated graphical user interface (GUI) of an electronic calendar application. This may require a user to switch between an electronic calendar application and an application associated with a communication channel where an activity is being proposed and / or discussed.
[0005] Therefore, there is a need for improved systems and methods for automatically generating electronic calendar entry proposals and establishing confirmation activities based on those proposals. Summary of the invention
[0006] The following describes a summary of certain embodiments disclosed herein. It should be understood that these aspects are presented only to provide the reader with a concise summary of these specific embodiments, and these aspects are not intended to limit the scope of the present disclosure. In fact, the present disclosure may encompass a number of aspects that may not be described below.
[0007] The present disclosure solves the shortcomings of the prior art by providing a comprehensive system and method for generating electronic calendar entries for electronic calendar proposals and confirmations via a communication channel application, thereby providing an efficient mechanism for proposing time and / or location between parties and not requiring switching between the communication channel application and the electronic calendar application. The system includes a user-friendly interface that is intended to revolutionize the generation of electronic calendar entries, making it more efficient and more enjoyable for users, and thereby enhancing productivity and innovation in various fields. Specifically, an interface between an electronic calendar application and a communication channel application (e.g., a text messaging application, a conference application, a chat application, etc.) can be used to send a proposed time and / or location for a meeting between parties utilizing the communication channel application. In some embodiments, natural language processing and / or other techniques can be used to analyze communications between parties via the communication channel application to determine the intention of a meeting between the parties. When the intention does not include relevant information about the meeting (e.g., time and / or location), an electronic suggestion for creating a meeting proposal can be displayed in a graphical user interface (GUI) of the communication channel application. One of the parties (e.g., a "proposer") may identify one or more proposals for relevant information about a meeting, and cause the identified proposals to be sent to the other party (e.g., a "recipient"). The GUI of the communication channel application of the recipient may be controlled to display the one or more proposals provided by the proposer, and to enable selection of a particular one of the one or more proposals. In response to receiving a selection of a particular one of the one or more proposals, an interface between the electronic calendar application and the communication channel application may be used to generate an electronic calendar entry including the selection of the particular one of the one or more proposals. In addition, the calendar entry may include the other party communicating via the communication channel application, so that a calendar entry request (e.g., a meeting request) is transmitted to the other party. Because the other party has confirmed that they agree to the proposals (e.g., by proposing the proposals or by selecting from the received proposals), the electronic calendar entry request may be automatically accepted without further input from the other party via its electronic device. For example, the interface may identify that an electronic calendar entry request has been received, and provide a command to cause the electronic calendar application to generate an accepted calendar entry for the request.
[0008] With respect to various aspects of the present disclosure, there may be various improvements to the above-mentioned features. Other features may also be incorporated in these various aspects. These improvements and additional features may exist individually or in any combination. For example, the various features discussed below with respect to one or more embodiments in the illustrated embodiments may be incorporated into any of the above-mentioned aspects of the present disclosure individually or in any combination. The brief summary presented above is intended only to familiarize the reader with certain aspects and contexts of the embodiments of the present disclosure, without limiting the claimed subject matter. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Various aspects of the present disclosure may be better understood upon reading the following detailed description and referring to the drawings described below, in which like reference numerals refer to like parts.
[0010] Figure 1 is a block diagram of an electronic device for providing automatic electronic calendar suggestions according to one or more embodiments of the present application;
[0011] Figure 2 is a flow chart illustrating a process for triggering an automatic electronic calendar offer according to one or more embodiments of the present application;
[0012] Figure 3 is a flow chart illustrating a process for implementing automatic electronic calendar proposals according to one or more embodiments of the present application;
[0013] Figure 4 is a flow chart illustrating a process for identifying missing information to be added to an electronic calendar proposal based on an identified context in accordance with one or more embodiments of the present application;
[0014] Figure 5 is a schematic diagram of an electronic device using a text-based communication channel according to one or more embodiments of the present application, wherein the communication can cause a processor to trigger automatic generation of an electronic calendar proposal;
[0015] FIG. 6A to FIG. 6D (collectively referred to as " FIG. 6 ") is a schematic diagram of a graphical user interface (GUI) transition for generating an electronic calendar proposal according to one or more embodiments of the present application;
[0016] Figure 7 is a schematic diagram showing GUI interactions for transmitting electronic calendar proposals according to one or more embodiments of the present application;
[0017] Figure 8 is a schematic diagram showing a GUI state after transmitting an electronic calendar proposal according to one or more embodiments of the present application;
[0018] Fig.9Aand Fig. 9B (collectively referred to as "FIG. 9") is a schematic diagram illustrating a GUI state according to one or more embodiments of the present application, in which an electronic calendar proposal is opened so that a plurality of selectable options are selected therefrom, thereby producing a confirmed electronic calendar entry;
[0019] Fig.10 is a schematic diagram illustrating a GUI interaction according to one or more embodiments of the present application, wherein an indication of a confirmed electronic calendar entry is transmitted back to a proposing electronic device;
[0020] Fig.11 is a schematic diagram showing a GUI interaction according to one or more embodiments of the present application, wherein an indication of a confirmed electronic calendar entry is opened at a proposing electronic device, thereby causing previously retained entries not associated with the confirmed electronic calendar entry to be removed; and
[0021] Fig.12 is a schematic diagram showing proposing an electronic calendar of an electronic device after receiving and / or opening an indication of a confirmed electronic calendar entry according to one or more embodiments of the present application. DETAILED DESCRIPTION
[0022] When introducing the elements of various embodiments of the present disclosure, the articles "one", "an" and "the" are intended to mean one or more elements present in the elements. The terms "including", "comprising" and "having" are intended to be inclusive, and mean that there may be additional elements other than the listed elements. In addition, it should be understood that the reference to "one embodiment" or "embodiment" of the present disclosure is not intended to be interpreted as excluding the existence of additional embodiments that also incorporate the features. In addition, specific features, structures or characteristics can be combined in any appropriate manner in one or more embodiments. The use of the terms "roughly", "close to", "about", "close to" and / or "substantially" should be understood to mean including close to a target (e.g., design, value and amount), such as within the limits of any suitable or conceivable error (e.g., within 0.1% of the target, within 1% of the target, within 5% of the target, within 10% of the target, within 25% of the target, etc.). In addition, it should be understood that any exact value, number, measurement value, etc. provided herein can be conceived to include approximate values of these exact values, numbers, measurement values, etc. (e.g., within the limits of suitable or conceivable error). Additionally, the term "set" may include one or more. That is, a set may include a single set of one member, but a set may also include sets of multiple members.
[0023] The present disclosure relates to facilitating the efficient generation of electronic calendar entries by enabling electronic calendar entry proposals via a communication channel application graphical user interface (GUI). In particular, in some embodiments, natural language processing (NLP) and / or other techniques may be used to analyze communications between parties via a communication channel application. After identifying indications that the parties desire to meet, the GUI may be controlled to provide graphical suggestions to generate a meeting proposal. After receiving an indication to generate a meeting proposal, the GUI may be controlled to present parameter options for the meeting, such as location options and / or time options. A selection of parameters may be received via the GUI, and the selected parameters may be provided to the other party / parties of the communication. The other party may select from the selected parameters to confirm one or more specific parameters of the meeting. In response, an accepted electronic calendar entry using one or more confirmed specific parameters may be generated for each of the parties to the communication.
[0024] Figure 1 1 is a block diagram of an electronic device 100 according to an embodiment of the present disclosure. The electronic device 100 may include, among other things, one or more processors 102 (collectively referred to herein as a single processor for convenience, which may be implemented in any suitable form of processing circuitry), a memory 104, a non-volatile storage device 106, a display 108, an input structure 112, an input / output (I / O) interface 114, a network interface 116, and a power supply 118. Figure 1 The various functional blocks shown may include hardware elements (including circuits), software elements (including machine executable instructions), or a combination of hardware and software elements (which may be referred to as logical components). Processor 102, memory 104, non-volatile storage device 106, display 108, input structure 112, input / output (I / O) interface 114, network interface 116, and / or power supply 118 may each be directly or indirectly communicatively coupled to each other (e.g., through or via another component, a communication bus, a network) to transmit and / or receive signals between each other. It should be noted that Figure 1 This is merely one example of a particular implementation and is intended to illustrate the types of components that may be present in electronic device 100 .
[0025] By way of example, the electronic device 100 may include any suitable computing device, including a desktop or laptop computer, a portable or handheld electronic device (such as a wireless electronic device or a smart phone), a tablet computer, a wearable electronic device, and other similar devices. In additional or alternative embodiments, the electronic device 100 may include an access point, such as a base station, a router (e.g., a wireless router or a Wi-Fi router), a hub, a switch, etc. It should be noted that Figure 1 The processor 102 and other related items in the embodiment may be embodied in whole or in part as software, hardware, or both. Figure 1 The processor 102 and other related items in the electronic device 100 may be a single independent processing module, or may be fully or partially combined in any of the other elements in the electronic device 100. The processor 102 may be implemented using a combination of a general-purpose microprocessor, a microcontroller, a digital signal processor (DSP), a field programmable gate array (FPGA), a programmable logic device (PLD), a controller, a state machine, a gated logic, a discrete hardware component, a dedicated hardware finite state machine, or any other suitable entity that can perform calculations or other manipulations of information. The processor 102 may include one or more application processors, one or more baseband processors, or both, and perform various functions described herein.
[0026] exist Figure 1 In the electronic device 100 of the present invention, the processor 102 can be operably coupled with the memory 104 and the non-volatile storage device 106 to execute various algorithms. For example, the storage device 106 can store a communication channel application 110A, which includes one or more computer-readable instructions that cause the processor 102 to perform at least a portion of the functions useful for facilitating communication between the user of the electronic device 100 and other users of other electronic devices. For example, the communication channel application 110 may include a text messaging application (such as a short messaging service (SMS) application and / or other text-based messaging applications), a conferencing application (such as a video conferencing and / or audio conferencing application), a productivity software application that includes a communication feature (such as Apple, of etc.) and / or online communication platforms.
[0027] In some embodiments, the storage device 106 may also store a natural language processing (NLP) engine 110B, which may include one or more computer-readable instructions that cause the processor 102 to perform natural language processing on the communication facilitated by the communication channel application 110A. The NLP engine 110B may perform natural language processing on the communication of the communication channel application 110A to identify when the parties to the communication expect to meet. In some cases, as will be discussed in more detail below, after such expectations are identified by the NLP engine 110B, an indication of the identified expectation may be provided to an electronic calendar interface 110C, which communicatively couples the communication channel application 110A and the electronic calendar application 110D, which may also be stored in the storage device 106. Although the depicted embodiment shows the NLP engine 110B stored in the storage device 106 local to the electronic device 100, in some embodiments, the NLP engine 110B may be implemented remotely from the electronic device 100, for example, by data transmission of communication data performed via the transceiver 120.
[0028] The electronic calendar interface 110C may include one or more computer-readable instructions that cause the processor 102 to facilitate at least a portion of the electronic calendar entry proposal and / or confirmation techniques described herein. For example, after receiving an indication from the NLP engine 110B that the parties have indicated a desire to meet, in some embodiments, the electronic calendar interface 110C may cause the graphical user interface (GUI) of the communication channel application 110A to provide a graphical suggestion to generate a meeting proposal to be sent to the other parties of the communication. After receiving an indication to generate a meeting proposal, the electronic calendar interface 110C may generate a meeting proposal parameter selection GUI within the communication channel application 110A, thereby enabling the user to select the proposed parameters to be sent to the other parties of the communication. For example, the electronic calendar interface 110C may access the electronic calendar application 110D to identify an available meeting time that may be selected as a proposed parameter. To this end, the electronic calendar interface may access the electronic calendar application 110D to obtain the user's calendar events. As will be discussed in more detail below, the meeting proposal parameter selection GUI may include a graphical view of one or more electronic calendars maintained and / or accessible by the electronic calendar application 110D, while providing an enabling representation for selecting one or more proposed dates and / or times as time parameters for the meeting proposal. In addition, the electronic calendar interface 110C may access one or more context applications 110E, which may provide additional context about the communication and a subset of parameters that are most likely to be desired for the meeting proposal. For example, the context application 110E may include an electronic map application that may provide additional context about a preferred location for the meeting (e.g., as determined based on the locations of the communicating parties and / or terms provided in the communication). In some embodiments, these context applications 110E may be used to form part of the meeting proposal parameter selection GUI.
[0029] Once the meeting proposal parameters are selected, the electronic calendar interface 110C of the proposing electronic device 100 (e.g., the "proposer") can cause an indication of the meeting proposal to be sent (e.g., via the transceiver 120) to the other party of the communication, and the receiving electronic device (e.g., the "recipient") may include a corresponding interface that enables viewing each of the proposed parameters and selecting a subset of the proposed parameters. In some embodiments, the electronic calendar interface 110C can cause the electronic calendar of the proposer to temporarily block / retain each of the proposed time and / or location until a confirmed selection of the subset of the proposed parameters is returned from the electronic device of the recipient. To this end, the electronic calendar interface 110C can send one or more commands to generate an electronic calendar entry for each of the proposed parameters.
[0030] After receiving the selection of the subset of proposed parameters from the recipient's electronic device, the electronic calendar interface 110C can cause a confirmed calendar entry including the selected subset of proposed parameters (e.g., time and / or location) to be created in the proposer's electronic calendar. In addition, other previously blocked / reserved calendar entries can be removed. To this end, the electronic calendar interface 110C can send one or more commands to the electronic calendar application 110D to remove previously requested calendar entries including proposed parameters that are not in the selected subset of proposed parameters. In this way, blocked / reserved calendar entries can be removed except for one calendar entry that matches the selected subset of proposed parameters.
[0031] Such programs or instructions executed by the processor 102 may be stored in any suitable article of manufacture including one or more tangible computer-readable media. The tangible computer-readable media may include, individually or collectively, the memory 104 and / or the non-volatile storage 106 to store instructions or routines. The memory 104 and the non-volatile storage 106 may include any suitable article of manufacture for storing data and executable instructions, such as random access memory, read-only memory, rewritable flash memory, hard drives, and optical disks. In addition, the programs (e.g., operating systems) encoded on such computer program products may also include instructions that can be executed by the processor 102 to enable the electronic device 100 to provide various functions.
[0032] In some embodiments, the display 108 can facilitate a user viewing images generated on the electronic device 100. In some embodiments, the display 108 can include a touch screen that can facilitate a user to interact with a user interface of the electronic device 100. In addition, it should be understood that in some embodiments, the display 108 can include one or more liquid crystal displays (LCDs), light emitting diode (LED) displays, organic light emitting diode (OLED) displays, active matrix organic light emitting diode (AMOLED) displays, or some combination of these and / or other display technologies.
[0033] The input structures 112 of the electronic device 100 can enable a user to interact with the electronic device 100 (e.g., pressing a button to increase or decrease the volume level). The I / O interface 114 can enable the electronic device 100 to dock with various other electronic devices, as can the network interface 116. In some embodiments, the I / O interface 114 may include an I / O port for a hardwired connection for charging and / or content manipulation using a standard connector and protocol (such as a Lightning connector, a universal serial bus (USB), or other similar connectors and protocols). The network interface 116 may include, for example, one or more interfaces for a personal area network (PAN), such as an ultra-wideband (UWB) or Network; Local Area Network (LAN) or Wireless Local Area Network (WLAN), such as one of the IEEE 802.11x family of protocols (e.g., ) networks; and / or wide area networks (WANs), such as any standards associated with the Third Generation Partnership Project (3GPP), including, for example, 3rd generation (3G) cellular networks, Universal Mobile Telecommunications System (UMTS), 4th generation (4G) cellular networks, (LTE) cellular network, Long Term Evolution Licensed Assisted Access (LTE-LAA) cellular network, 5th Generation (5G) cellular network and / or New Radio (NR) cellular network, 6th Generation (6G) or beyond 6G cellular network, satellite network, non-terrestrial network, etc. In particular, the network interface 116 may include, for example, one or more interfaces for cellular communication standards using 5G specifications, which include millimeter wave (mmWave) frequency ranges (e.g., 24.25 GHz to 300 GHz) that define and / or implement frequency ranges for wireless communication. The network interface 116 of the electronic device 100 may allow communication through the aforementioned networks (e.g., 5G, Wi-Fi, LTE-LAA, etc.).
[0034] The network interface 116 may also include, for example, one or more interfaces for broadband fixed wireless access networks (eg, ), mobile broadband wireless network (mobile ), asynchronous digital subscriber line (e.g., ADSL, VDSL), terrestrial digital video broadcasting Network and its extension DVB handheld devices Networks, ultra-wideband (UWB) networks, alternating current (AC) power lines, etc.
[0035] As shown, the network interface 116 may include a transceiver 120. In some embodiments, all or part of the transceiver 120 may be disposed within the processor 102. The transceiver 120 may support transmission and reception of various wireless signals via one or more antennas, and thus may include a transmitter and a receiver. The power supply 118 of the electronic device 100 may include any suitable power source, such as a rechargeable lithium polymer (Li-poly) battery and / or an alternating current (AC) power converter.
[0036] Figure 2 2 is a flow chart illustrating a process 200 for triggering automatic electronic calendar proposals according to one or more embodiments of the present application. As described above, one or more messages are received via the communication channel application 110A (block 202). For example, a text message may be received, an audio communication (correspondence) may be received, etc.
[0037] Natural language processing (NLP) (box 204) can be performed on the received message. To this end, the message can be sent to the NLP engine 110B for analysis. In some embodiments, by submitting each message independently to the NLP engine 110B, the context of each message can be individually performed on a message-by-message basis. In other embodiments, for efficient processing, NLP can be performed for message clusters. These clusters can be defined based on the number of sequential messages (e.g., batching a specific number of sequential message blocks at a time for analysis by the NLP engine 110B), time blocks (e.g., submitting all messages received within a specific time block (e.g., 5 seconds)), the time between blocks (e.g., submitting message clusters where all messages appear within a threshold amount of time between each other), etc.
[0038] A determination is made as to whether the natural language processing of the message indicates that the communicating parties desire to meet (decision block 206). If the message does not indicate a desire to meet, process 200 is repeated. However, if the message does indicate a desire to meet, a determination is made as to whether the message includes parameters for the desired meeting (decision block 208). For example, the parameters may include at least a time for the meeting. In some embodiments, the parameters may include a location for the meeting.
[0039] When it is determined that the parameters are indicated in the message, a recommendation to generate a calendar event may be presented via the communication channel application 110A (block 210). For example, a selectable banner may be provided indicating that an electronic calendar entry may be generated based on the identified meeting desire and the parameters discerned from the communication message. Upon selection of the banner, the electronic calendar interface 110C may cause the electronic calendar entry to be generated by providing a command to the electronic calendar application 110D.
[0040] Returning to decision block 208, when it is determined that the parameter is missing, a graphical indication may be provided to indicate that an electronic calendar event proposal may be generated (block 212). For example, a selectable banner may be provided within the communication channel application 110A. When the selectable banner is selected, a process for generating an electronic calendar proposal may be initiated.
[0041] Figure 3 300 is a flow chart illustrating a process 300 for generating automatic electronic calendar proposals according to one or more embodiments of the present application. The process 300 begins by receiving a request to generate an electronic calendar event proposal (block 302). As described above, the request may be received in response to a selection of a selectable banner suggesting generation of an electronic calendar proposal.
[0042] Process 300 attempts to gather previously proposed meeting parameter details by extracting meeting parameters previously discussed in communication messages between the communicating parties (block 304). For example, as will be discussed in the following examples, certain contextual clues and / or explicit meeting parameters may be provided in the communication, such as time of day, date, location, meeting type, etc.
[0043] The electronic calendar proposal graphical panel may be presented via the GUI of the communication channel application 110A (block 306). As will be exemplified below, in some embodiments, the electronic calendar proposal graphical panel may be pre-populated with at least a portion of the extracted meeting parameters from block 304. For example, the title of the meeting may be pre-populated with one or more words from the communication message.
[0044] One or more parameter selection panels may be provided in the GUI, thereby enabling the proposer to select one or more proposed parameters for the meeting (block 308). For example, the parameter selection panel may present a view of the proposer's electronic calendar with selectable time points, in which the proposed time parameters for the meeting may be selected for the proposal. The parameter selection panel may also provide a map with selectable locations, in which the location may be selected for the proposal. Figure 4 As discussed in more detail, contextual information from the communication message may provide some level of information about the missing parameters, such as providing an indication that the meeting may occur at "evening hours" without a specific time indication and / or an indication that the location will be where "drinks" will be provided without an indication of a specific location where drinks will be provided. As will be discussed in more detail below, Figure 4 The process provides context awareness, resulting in a more applicable display within the parameter selection panel.
[0045] Once a selection is made via the GUI, selections from one or more parameter selection panels may be received (block 310), and a data message (e.g., an "electronic calendar proposal") including the extracted meeting characteristics and the received selections may be generated for transmission to a recipient's electronic device (block 312). For example, a data object may be generated including the selected time, location, and / or other details of the meeting. A representation of the generated data object may be provided in the communication channel application 110A along with an affordance for sending the data object to the recipient's electronic device.
[0046] As mentioned above, Figure 44 is a flow chart illustrating a process 400 for identifying missing information to be added to an electronic calendar proposal based on an identified context in accordance with one or more embodiments of the present application. Contextual information from the communication message may provide some level of information about the missing parameters, such as providing an indication that a meeting may occur at "evening hours" without a specific time indication and / or an indication that a location will be a place to provide "drinks" without an indication of a specific location to provide drinks. Figure 4 The process 400 uses context awareness to generate a more applicable selection display for selecting parameters for an offer.
[0047] Process 400 begins by identifying and / or receiving an indication of missing meeting parameters that should be obtained (block 402). For example, in some embodiments, at least a time should be associated with a meeting. If a time is not provided in a communication message or there may be multiple times based on the communication message (e.g., the time is only described as "evening time"), the parameter is identified as missing.
[0048] Context information associated with the missing meeting feature is obtained (block 404). For example, an indication provided in the communication message to meet "at evening time" may provide context for the parameters of the meeting time. Additionally, an indication in the communication message that the parties will "have drinks" may provide context for the parameters of the meeting location. Additionally, another context point for location may be the current location of the parties and / or the predicted location of the parties approaching the meeting time.
[0049] Process 400 includes determining whether the meeting time is missing based on the context information (decision block 406). For example, as discussed herein, a communication message may indicate a time of day and may even be context information indicating a time range. However, the communication may not indicate a specific time that would enable the communicating parties to understand when the meeting will occur. In this case, the meeting time will be identified as missing.
[0050] If the meeting time is missing, a time selection process 407 may be performed. The time selection process 407 may be performed to enable the user to select a time proposal for the meeting. In some embodiments, this may be facilitated by providing a default GUI view based on the identified time context of the meeting. Thus, the time selection process 407 may include identifying a possible time proposal range based on the contextual information (block 408). For example, the machine learning model may identify a possible time proposal range based on the communication message.
[0051] As used herein, machine learning can refer to algorithms and statistical models used by computer systems to perform specific tasks with or without explicit instructions. For example, a machine learning process can generate a mathematical model based on a sample of clean data (referred to as "training data") to make predictions or decisions without being explicitly programmed to perform a specific task. Different machine learning algorithms can be used to analyze the data, depending on the inference to be made.
[0052] In some embodiments, a supervised machine learning algorithm can be implemented using a mathematical model of a data sample set called "training data" and containing both inputs and expected outputs. Each data sample may include one or more inputs and corresponding expected one or more outputs, also referred to as supervisory signals. In the mathematical model, each data sample may be represented by an array or vector (sometimes referred to as a feature vector), and the training data may be represented by a matrix. By iteratively optimizing the objective function, the supervised machine learning algorithm can learn a function (e.g., an optimal function) that can be used to predict the output associated with a new input. That is, the optimal function allows the supervised machine learning algorithm to correctly predict the corresponding output of certain inputs that are not presented in the training data. Such algorithms that improve the accuracy of their outputs or predictions over time are referred to as having learned to perform a specific task.
[0053] Supervised learning algorithms can include classification and regression. Classification algorithms are used when the output is restricted to a finite set of values, and regression algorithms are used when the output can have any value within a certain range. Similarity learning is a closely related area of supervised machine learning that is related to regression and classification, but the goal is to learn from examples using a similarity function that measures how similar or related two objects are.
[0054] Additionally and / or alternatively, in some embodiments, an unsupervised machine learning algorithm may be implemented (e.g., when a particular output type is unknown). An unsupervised learning algorithm may take a set of data samples containing only inputs and look for structure in the data samples, such as grouping or clustering of the data samples. Thus, an unsupervised learning algorithm learns from data samples that have not yet been labeled, classified, or categorized. Instead of responding to feedback, an unsupervised learning algorithm identifies commonalities in the data and reacts (e.g., predicts an output) based on the presence or absence of such commonalities in each new piece of data.
[0055] Cluster analysis is the assignment of a set of observations into subsets (called clusters) such that observations within the same cluster are similar according to one or more predetermined criteria, while observations drawn from different clusters are dissimilar. Different clustering techniques make different assumptions about the structure of the data, which is usually defined by some similarity measure and evaluated, for example, by internal compactness or similarity systems or algorithms of the same cluster.
[0056] Once possible proposal time ranges are identified, a calendar time slot proposal selector may be provided (block 410). Examples of such a time slot proposal selector are described in Figure 6C , which will be discussed in more detail below. The time slot offer selector enables a user to select one or more time slot offers for a meeting between communication participants. A selected time slot is received via the GUI (block 412).
[0057] Process 400 may also include determining whether the meeting location is missing (decision block 414). For example, if the communication message does not specify a specific location for the meeting, the location may be determined to be missing.
[0058] If the location is determined to be missing, a location selection process 415 may be implemented. As with the time slot for the meeting, contextual information about the location of the meeting may also be used to facilitate the selection of a proposed location. Thus, in some embodiments, the location selection process 415 may include identifying possible location proposals based on the identified contextual information about the location (box 416). For example, the location and / or predicted location of the communicant may be used to identify a feasible and / or desired location for the meeting. In addition, the type of meeting (e.g., a meeting for "drinks") may indicate the type of location that may be selected as a proposed location (e.g., a location that serves drinks). As with the time slot proposals, in some embodiments, possible location proposals may be identified via machine learning.
[0059] A map selector may be provided via a GUI that presents possible location suggestions (block 418). Fig.6D An example of such a location selector is provided, which is described in more detail below. The location selector includes an affordance for selecting one or more location proposals to be incorporated into the meeting proposal. The selected location proposal may be received via a map selector (block 420).
[0060] Once the missing meeting features are selected and received, a meeting proposal may be generated (block 422). As described herein, this may require generating a meeting proposal object that includes the meeting features obtained via the communication message and / or the missing meeting features obtained via process 407, process 415, etc.
[0061] Figure 5 5 is a schematic diagram 500 of electronic devices 502A and 502B using a text-based communication channel according to one or more embodiments of the present application, wherein the communication can cause the processor to trigger the automatic generation of electronic calendar proposals. As shown, electronic device 502A initiates the communication by providing message 504 to electronic device 502B. Message 504 is received and displayed by electronic device 502B. As described above with respect to Figure 2As indicated, the electronic device 502B may perform NLP on the message to determine whether the message indicates a meeting. Here, the electronic device 502B determines that the message "Morning" does not indicate a meeting.
[0062] A response message 506 is provided from electronic device 502B back to electronic device 502A. Electronic device 502A may receive and display response message 506. In the example shown, message 506 includes a meeting indication (e.g., which may be performed by electronic device 502A upon receiving the message and / or determined by electronic device 502B). If electronic device 502B is an electronic device that performs NLP to identify that message 506 indicates a meeting, additional data may be sent with message 506, thereby notifying electronic device 502A of the determination, so that electronic device 502A can perceive the message indicating a meeting.
[0063] In this regard, in some embodiments, the creation of a calendar entry and / or an electronic suggestion for a meeting proposal may be triggered for electronic devices 502A and / or 502B to provide. However, in some embodiments (such as the depicted embodiment), the electronic suggestion may be triggered when a confirmation message 508 is generated and / or sent in response to a received message 506 indicating a meeting. For example, here, a confirmation message 508 is generated and sent to electronic device 502B to indicate an affirmative response to the received message 506 proposing a meeting, thereby indicating that the user of electronic device 502A is interested in meeting with the user of electronic device 502B.
[0064] As described above, the generation and / or receipt of the confirmation message 508 and / or the message indicating the meeting can trigger the generation of an electronic suggestion for a calendar entry and / or a meeting proposal. Figure 2 As discussed, when a minimum amount of meeting information can be collected from a communication message, an electronic suggestion for generating a calendar entry can be triggered. In some embodiments, when at least a portion of the minimum amount of meeting information cannot be collected from a communication message, an electronic suggestion for creating a meeting proposal can be triggered. In order to identify the meeting information present in the communication message, electronic device 502A and / or 502B can identify a subset of communication messages related to the meeting (e.g., by identifying a first message indicating a meeting and all other messages generated and / or sent after the first message but before presenting the electronic suggestion). NLP or other machine learning techniques can be used to identify the meeting information on the message subset, and the meeting information can be extracted to identify whether there is minimum meeting information.
[0065] exist Figure 5 In the example provided, the minimum amount of meeting information may include the time of the meeting and / or the location of the meeting. This information is not provided in messages 504, 506, and / or 508. Therefore, a suggestion to generate a meeting proposal may be triggered. Fig. 6A 600, wherein the GUI 600 provides an electronic suggestion 602 in response to generating, transmitting and / or receiving messages 506 and / or 508. As shown, in some embodiments, the electronic suggestion 602 may include an overlay presented on a portion of the GUI of the communication channel application 110A. The electronic suggestion 602 may include at least a portion of the meeting information extracted from the communication message. For example, in the depicted embodiment, the title 604 for the proposed meeting may include an indication of the event type and the name of the proposer, which may be identified based on the meeting information of the extracted communication message. In addition, contextual information that can help determine the missing meeting information may also be extracted. At least a portion of this contextual information may be provided in the electronic suggestion 602. For example, the message 506 does not provide a time, but provides a proposed day for the meeting (e.g., "next Friday"). In addition, the message 506 does not provide a location for the meeting, but provides a context for the type of meeting (e.g., "Drinks"). This information can be used to narrow the scope of the time and / or location proposal. For example, the range of times may be narrowed to time slots in which "next Friday" occurs, and may also be narrowed to times that are generally suitable for particular types of meetings. Thus, a contextual indication 606 is provided in the electronic suggestion 602 .
[0066] As will be discussed in more detail below, additional inferences may also be identified that may further influence the default view of the meeting proposal GUI. For example, "Drinks" may refer to cocktails, which may be used to infer that the meeting will take place at some time during the evening hours and / or at a bar or similar venue, as these are typical time ranges and / or venues for typical "Drinks" event types. An inference indication 608 (e.g., an evening time inference) may be provided in the electronic suggestion 602.
[0067] Electronic suggestion 602 may also include selectable affordance 610. In some embodiments, selectable affordance may be electronic suggestion 602 itself, where the selection occurs upon selecting at least a portion of electronic suggestion 602. Selection of selectable affordance 610 may trigger presentation of revocation of electronic suggestion 602 and / or presentation of meeting proposal generator GUI element 612, such as Figure 6B Indicated in Figure 6BIn the depicted embodiment, the meeting proposal generator GUI element 612 includes a sliding GUI panel that provides a title 604 of the meeting proposal and an indication 614 of the missing meeting information that can be indicated via the meeting proposal generator GUI element 612 (e.g., time and location in the depicted embodiment). In some embodiments, various selectable affordances 616 can be presented, enabling a user to select specific missing meeting information to be set via the meeting proposal generator GUI element 612. In some embodiments, a sequential indication process can be selected via a sequential indication selection affordance 618. When selected, the sequential indication selection affordance 618 enables each of the portions of the missing meeting information to be sequentially indicated via the meeting proposal generator GUI element 612.
[0068] Figure 6C 6 is a schematic diagram of a time selection GUI 620 for facilitating providing a proposed meeting time slot of a meeting proposal generator GUI element 612 according to one or more embodiments of the present application. The time selection GUI 620 can present a calendar view 622 of an electronic calendar of a local electronic device (e.g., electronic device 502A). The electronic calendar view 622 can display a date and / or time range based on context information provided in the communication message. For example, in Figure 6C , electronic calendar view 622 defaults to "next Friday" the 8th, as indicated by message 506, and also provides a default view for the "evening time" time slot, as inferred from message 506. It will be appreciated that the default view may be changed by selecting a different date and / or time affordance within electronic calendar view 622.
[0069] The electronic calendar view 622 may be populated with existing electronic calendar entries 624 that may be obtained from the electronic calendar application 110D via the interface 110C. The electronic calendar view 622 enables quick selection of a proposed time slot 626 via an interaction (e.g., touch, selection, etc.) within the electronic calendar view 622. As shown, multiple proposed time slots may be selected, enabling the user to propose multiple meeting time options. The start time, end time, duration, etc. may be adjusted by moving and / or adjusting the proposed time slot 626. For example, the edge of one of the proposed time slots 626 may be moved, which will adjust the time associated with the edge and the duration of the associated proposed time slot 626. Once all the proposed time slots are selected, a completion affordance 628 may be selected, indicating that all proposed time slots 626 have been selected and are ready for transmission to another electronic device (e.g., electronic device 502B).
[0070] Fig.6D6 is a schematic diagram of a location selection GUI 630 for facilitating providing a proposed meeting location of a meeting proposal generator GUI element 612 according to one or more embodiments of the present application. The location selection GUI 630 can present a map view 632 with possible meeting location proposals. The map view 632 can display default location proposal recommendations based on contextual information provided in the communication message. For example, in Fig.6D , map view 632 may default to a map with locations around where meeting participants may be during evening hours (time period inferred from message 506). In some embodiments, these locations may be displayed in map view 632 (e.g., here at point 634). In some embodiments, when a proposed time slot 626 has been selected, the time associated with the proposed time slot 626 may be used as the context for the proposed location. The proposed locations may be filtered based on availability during the context and / or proposed time slot 626 time period. Therefore, locations closed during these time periods may be filtered from map view 632. The predicted locations of meeting participants may be identified using context information, such as other meeting locations before or after the proposed time slot 626. In some embodiments, machine learning may be used to predict participant locations (e.g., based on participant location patterns, etc.). It will be appreciated that the default view may be changed by adjusting map view 632.
[0071] Map view 632 enables quick selection of proposed locations 636 via interaction (e.g., touching, selecting, etc.) within map view 632 (e.g., at a location represented within map view 632). As shown, multiple proposed locations 636 can be selected, enabling the user to propose multiple meeting location options. Once all proposed locations 636 are selected, a completion affordance 638 can be selected, indicating that all proposed time slots 626 have been selected and are ready for transmission to another electronic device (e.g., electronic device 502B). Keyword affordance 640 can provide an indication of one or more specific keywords that are queried to identify proposed locations 636. The keywords can be based on meeting information extracted from a communication message. If necessary, the keywords can be changed via keyword affordance 640 to adjust the proposed locations 636. For example, if a participant expects "drink" to mean coffee rather than a cocktail, the keyword "drink" can be replaced with "coffee" in keyword affordance 640.
[0072] When keyword affordance 640 is changed prior to selecting a proposed time slot via time selection GUI 620, a context shift may occur based on the changed keyword, thereby causing a default view shift of location selection GUI 630 and / or electronic calendar view 622. For example, when "beverage" is changed to "coffee," this may indicate a possible adjustment from "evening time" to "morning time," which may cause the default view of electronic calendar view 622 to be adjusted to a different time range and / or may cause the default view of location selection GUI 630 to be adjusted to a view covering the predicted location of the participant during the morning time.
[0073] As mentioned above about Figure 3 As described, after providing and / or receiving the missing meeting feature, a data message including the meeting feature may be generated. Figure 7 Schematic diagram of communication application GUI states 700A and 700B showing a proposed electronic device 502A and a receiving electronic device 502B according to one or more embodiments of the present application. As shown, a data message icon 702 representing a generated data message (e.g., an object designed to be transmitted via a communication application) is presented in a message input enable representation 704, in which a message to be sent to a recipient (e.g., a user of electronic device 502B) can be input. In order to send the generated data message to electronic device 502B, a transmission message enable representation 706 can be actuated when the data message icon 702 is presented in the message input enable representation 704. Before sending the data object, GUI state 700B can display a message generation perception icon 708, which indicates that a message for communication between electronic devices 502A and 502B is being generated at another electronic device (e.g., electronic device 502A). In some embodiments, message generation awareness icon 708 may be displayed when a meeting proposal input is performed (e.g., when a meeting proposal generator GUI element 612 is displayed on electronic device 502A, when a time and / or location proposal is selected, etc.). In some embodiments, message generation awareness icon 708 may be displayed starting when data message icon 702 is presented within message input affordance 704. Message generation awareness icon 708 may be displayed until the data message is sent (e.g., via actuation of transmit message affordance 706) and / or the data message is withdrawn (e.g., deleted from generation and / or canceled, such as by actuation of cancel affordance 710 and / or cancel affordance of meeting proposal generator GUI element 612). Display of message generation awareness icon 708 may be avoided when the configuration of electronic device 502A chooses not to provide such awareness to other electronic devices.
[0074] Figure 88 is a schematic diagram showing GUI states 800A and 800B of electronic devices 502A and 502B, respectively, after an electronic calendar proposal is transmitted from electronic device 502A to electronic device 502B according to one or more embodiments of the present application. In GUI state 800A of electronic device 502A transmitting a proposal for a data message, a message indicator 802 (e.g., a history message cloud icon) indicating that a data message is sent (e.g., by displaying a data message icon 702 within the message indicator 802) is displayed.
[0075] Electronic device 502B may receive message 804 including data message icon 702, which may be presented in GUI state 800B of electronic device 502B. If permitted by the configuration of electronic device 502B, electronic device 502B may provide a read receipt to electronic device 502A, thereby generating an indication 806 that the user of electronic device 502B has received and seen the data message provided in message 804 received by electronic device 502B (e.g., by seeing data message icon 702′).
[0076] The data message icon 702' may be a selectable icon that, when selected, causes the GUI of the electronic device 502B to display details of the meeting proposal provided by the electronic device 502A. Fig.9A is a schematic diagram illustrating a GUI state 900A in which a proposal confirmation GUI element 902 is presented in response to selection of a data message icon 702'. Specifically, the proposal confirmation GUI element 902 may include a GUI component that enables a user of electronic device 502B to select from proposal options (e.g., time and / or location) provided by a user of electronic device 502A. Fig.9A In the example, an electronic calendar proposal confirmation panel 904 is presented, in which the electronic calendar proposal confirmation panel is displayed. Figure 6C The user of the electronic device 502B is allowed to select one of the proposed time slots 626, thereby indicating the selection and / or confirmation of a specific proposed time slot in the proposed time slots 626. A similar map panel may also be provided via the proposal confirmation GUI element 902 to enable the user of the electronic device 502B to select one of the proposed time slots 626. Fig.6D Select from the proposed locations 636 provided by the electronic device 502A.
[0077] Fig. 9BA subsequent GUI state 900B is shown after selecting the proposal option via GUI state 900A. In GUI state 900B, the proposal confirmation GUI element 902 provides a summary view 906 of the meeting details to be confirmed by the user of the electronic device 502B. For example, as shown, a title 604 is provided, and a location 908 and / or a selected time slot 910 can be displayed in the summary view 906 (e.g., selected via the proposal confirmation GUI element 902 in GUI state 900A). In some embodiments, the summary view 906 can be presented by sending the selected proposal option to the electronic device 502A, thereby generating a trigger that causes the electronic device 502A to automatically send the meeting invitation with the selected proposal option back to the electronic device 502B (e.g., in the background without a visual indicator and / or without the need for manual GUI interaction of the user of the electronic device 502A), thereby causing the presentation of the meeting request (e.g., summary view 906).
[0078] Summary view 906 may include meeting request response enable indications, such as acceptance enable indication 912, possible / uncertain enable indication 914, and / or rejection enable indication 916, that enable a user of electronic device 502B to indicate a response to a meeting request associated with a selected proposal via an interaction (e.g., interaction 918).
[0079] When a response is selected, a response may be generated for transmission to electronic device 502A. Fig.10Provided are schematic diagrams of GUI states 1000A and 1000B showing electronic devices 502B and 502A, respectively, wherein a meeting proposal response for sending to electronic device 502A is generated. As shown, a data message icon 1002 representing a generated data message (e.g., an object designed to be transmitted via a communication application) is presented in a message input affordance representation 1004, in which a message to be sent to a recipient (e.g., a user of electronic device 502A) can be input. In this case, the data message is a data object that provides a meeting response indication and a selected meeting proposal. In order to send the generated data message to electronic device 502A, a transmission message affordance representation 1006 can be actuated when the data message icon 1002 is presented in a message input affordance representation 1004. Before sending the data object, GUI state 1000B can display a message generation perception icon 1008, which indicates that a message for communication between electronic device 502B and 502A is being generated at another electronic device (e.g., electronic device 502B). In some embodiments, message generation awareness icon 1008 may be displayed when a provided meeting offer provided in a meeting offer data message is selected (e.g., when a meeting offer confirmation GUI element 612 is displayed on electronic device 502B, when a specific time and / or location offer from a set of offers is selected, etc.). In some embodiments, message generation awareness icon 1008 may be displayed starting when data message icon 1002 is presented within message input affordance 1004. Message generation awareness icon 1008 may be displayed until the data message is sent (e.g., via actuation of transmit message affordance 1006) and / or the data message is withdrawn (e.g., deleted from generation and / or cancelled, such as by actuation of cancel affordance 1010 and / or cancel affordance of meeting offer generator GUI element 612). Display of message generation awareness icon 1008 may be avoided when the configuration of electronic device 502B chooses not to provide such awareness to other electronic devices.
[0080] Fig.11 1 is a schematic diagram showing GUI states 1100A and 1100B of electronic devices 502B and 502A, respectively, after transmitting an electronic calendar meeting request response data message from electronic device 502B to electronic device 502A according to one or more embodiments of the present application. In GUI state 1100A of electronic device 502B transmitting the meeting request response data message, a message indicator 1102 (e.g., a history message cloud icon) indicating that a data message is sent (e.g., by displaying a data message icon 1002 within the message indicator 1102) is displayed.
[0081] Electronic device 502A may receive message 1104 including data message icon 1002′, which may be presented in GUI state 1100B of electronic device 502A. If permitted by the configuration of electronic device 502A, electronic device 502A may provide a read receipt to electronic device 502B, thereby generating an indication 1106 that the user of electronic device 502A has received and seen the data message provided in message 1104 received by electronic device 502B (e.g., by seeing data message icon 1102′).
[0082] The data message icon 1002' may be a selectable icon that, when selected, causes the GUI of the electronic device 502A to create an electronic calendar entry in the electronic calendar of the electronic device 502A with the selected meeting time, location, and other details. In an embodiment where a response is selected based on an automatic meeting invitation generated at the electronic device 502A, the response may update an existing electronic calendar entry corresponding to the automatically generated meeting invitation with an updated response type selected via the electronic device 502B.
[0083] Fig.12 1 is a schematic diagram showing an electronic calendar GUI 1200 of electronic device 502A proposing a meeting after receiving and / or opening an indication of a response from electronic device 502B according to one or more embodiments of the present application. As shown, electronic calendar GUI 1200 includes an electronic calendar entry 1202 for a confirmed meeting (e.g., based on receiving an "accept" and / or "maybe" or "uncertain" response indication from electronic device 502B). Although not shown, electronic device 502B may include a corresponding electronic calendar entry, which may be opened via Fig. 9B The enable indication 912 and / or 914 is generated after providing an "accept" and / or "maybe" or "uncertain" response indication.
[0084] The specific embodiments described above have been shown by way of example, and it should be understood that these embodiments may allow for various modifications and alternative forms. It should also be understood that the claims are not intended to be limited to the specific forms disclosed, but are intended to cover all modifications, equivalents, and alternatives that fall within the spirit and scope of the present disclosure.
[0085] The technology presented and claimed herein is cited and applied to specific examples of a physical and practical nature that significantly improves the art and is therefore not abstract, intangible, or purely theoretical. In addition, if any claim appended at the end of this specification contains one or more elements designated as "means for [performing] [the function] ..." or "steps for [performing] [the function] ...", it is intended that such elements should be interpreted in accordance with 35 U.S.C. 112(f). However, for any claim containing elements designated in any other manner, it is intended that such elements should not be interpreted in accordance with 35 U.S.C. 112(f).
[0086] It is understood that the use of personally identifiable information should be subject to privacy policies and practices that are generally recognized to meet or exceed industry or government requirements for maintaining user privacy. In particular, personally identifiable information data should be managed and processed to minimize the risk of unintentional or unauthorized access or use, and the nature of the authorized use should be clearly stated to users.
Claims
1. A tangible, non-transitory computer-readable medium comprising computer-readable instructions that, when executed by one or more processors of one or more computers, cause the one or more computers to: determining an indication of a meeting between a first user of a first electronic device and a second user of the second electronic device based on one or more communication messages provided between the first electronic device and the second electronic device, wherein the one or more communication messages are generated via a first communication application graphical user interface (GUI) of the first electronic device, a second communication application GUI of the second electronic device, or both; responsive to determining the indication of the meeting from the one or more communication messages, determining whether a meeting parameter is missing from the one or more communication messages; responsive to determining that the meeting parameters are missing from the one or more communication messages, presenting in the first communication application GUI, the second communication application GUI, or both, a recommendation to generate an electronic calendar proposal for the meeting; receiving a GUI input providing a response to the recommendation, the response to the recommendation indicating generation of an electronic meeting proposal; as well as In response to receiving the GUI input, presenting a meeting proposal generator GUI element in the first communication application GUI, the second communication application GUI, or both, the meeting proposal generator GUI element including an affordance for entering missing meeting parameters.
2. The tangible, non-transitory computer-readable medium of claim 1 , comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: receiving, via the affordance, an indication of the missing meeting parameters; and A meeting proposal data object is generated including the missing meeting parameters.
3. The tangible, non-transitory computer-readable medium of claim 2, comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: extracting one or more non-missing meeting parameters from the one or more communication messages; and The one or more non-missing meeting parameters are provided in the generated meeting proposal data object.
4. The tangible, non-transitory computer-readable medium of claim 2, comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: A meeting proposal data object icon representing the meeting proposal data object is presented in a message input affordance configured to enable a user to input a communication message for transmission.
5. The tangible, non-transitory computer-readable medium of claim 4, comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: receiving an indication of an interaction with a message transmission affordance; and In response to receiving the indication, the meeting proposal data object is transmitted to the other of the first electronic device or the second electronic device.
6. The tangible, non-transitory computer-readable medium of claim 2, wherein the missing meeting parameters include a meeting time, the computer-readable medium comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: A calendar view is generated within the meeting proposal generator GUI element, the calendar view including time slot proposal affordances enabling selection of a plurality of time slots to be proposed for the meeting.
7. The tangible, non-transitory computer-readable medium of claim 6, comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: querying the local electronic calendar application for existing entries via a calendar interface communicatively coupling the local electronic calendar application and the meeting proposal generator GUI element; and The existing entries are presented in the calendar view.
8. The tangible, non-transitory computer-readable medium of claim 6, comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: identifying a time range within which the meeting time will likely occur based at least in part on the one or more communication messages; and A default view is presented in the calendar view that includes the time range in which the meeting time will likely occur.
9. The tangible, non-transitory computer-readable medium of claim 2, wherein the missing meeting parameters include a meeting location, the computer-readable medium comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: A location view is generated within the meeting proposal generator GUI element, the location view including location proposal affordances that enable selection of one or more locations to be proposed for the meeting.
10. The tangible, non-transitory computer-readable medium of claim 9, comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: identifying a range of locations where the meeting location will likely occur based at least in part on the one or more communication messages; and A default view including the location range is presented in the location view.
11. The tangible, non-transitory computer-readable medium of claim 10, comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: querying the location service for keywords associated with the type of meeting; receiving a list of locations associated with the keyword; as well as A selectable affordance is displayed for each of the locations in the locations view, thereby enabling the location to be selected as a meeting location proposal.
12. The tangible, non-transitory computer-readable medium of claim 1 , comprising computer-readable instructions that, when executed by the one or more processors of the one or more computers, cause the one or more computers to: responsive to determining that the meeting parameters are not missing from the one or more communication messages, presenting in the first communication application GUI, the second communication application GUI, or both, a recommendation to generate an electronic calendar entry for the meeting; receiving a second GUI input providing a response to the recommendation to generate the electronic calendar entry for the meeting, the response instructing to generate the electronic calendar entry; and In response to receiving the second GUI input, the electronic calendar entry is generated in an electronic calendar application with the meeting parameters extracted from the one or more communication messages.
13. A computer-implemented method, the method comprising: identifying, via a processor, an indication of a meeting between a first user of the first electronic device and a second user of the second electronic device based on one or more communication messages provided between the first electronic device and the second electronic device, wherein the one or more communication messages are generated via a first communication application graphical user interface (GUI) of the first electronic device, a second communication application GUI of the second electronic device, or both; responsive to the indication identifying the meeting according to the one or more communication messages, determining, via the processor, whether meeting parameters are missing from the one or more communication messages; In response to determining that the meeting parameter is missing from the one or more communication messages: presenting, via the processor, in the first communication application GUI, a recommendation to generate an electronic calendar offer for the meeting; receiving, via the first communication application GUI, a GUI input providing a response to the recommendation, the response to the recommendation indicating generation of an electronic meeting proposal; as well as In response to receiving the GUI input, presenting a meeting proposal generator GUI element in the first communication application GUI, the meeting proposal generator GUI element including an affordance for entering missing meeting parameters; as well as In response to determining that the meeting parameter is not missing from the one or more communication messages: presenting in the first communication application GUI a recommendation to generate an electronic calendar entry for the meeting; receiving a second GUI input providing a response to the recommendation to generate the electronic calendar entry for the meeting, the response instructing to generate the electronic calendar entry; and In response to receiving the second GUI input, the electronic calendar entry is generated in an electronic calendar application with the meeting parameters extracted from the one or more communication messages.
14. The computer-implemented method of claim 13, wherein the meeting parameters are missing, the method comprising: receiving, via the affordance, an indication of the missing meeting parameters; as well as A meeting proposal data object is generated including the missing meeting parameters.
15. The computer-implemented method of claim 14, comprising: extracting one or more non-missing meeting parameters from the one or more communication messages; providing the one or more non-missing meeting parameters in the generated meeting proposal data object; presenting a meeting proposal data object icon representing the meeting proposal data object in a message input affordance configured to enable a user to input a communication message to be transmitted; receiving an indication of an interaction with a message transmission affordance; as well as In response to receiving the indication, the meeting proposal data object is transmitted to the second electronic device.
16. The computer-implemented method of claim 14, wherein the missing meeting parameters include a meeting time, the computer-implemented method comprising: generating a calendar view within the meeting proposal generator GUI element, the calendar view including a time slot proposal affordance enabling selection of a plurality of time slots to be proposed for the meeting; querying a local electronic calendar application for existing entries via a calendar interface communicatively coupling the electronic calendar application and the meeting proposal generator GUI element; as well as The existing entries are presented in the calendar view.
17. The computer-implemented method of claim 16, the method comprising: identifying a time range within which the meeting time will likely occur based at least in part on the one or more communication messages; as well as A default view is presented in the calendar view that includes the time range in which the meeting time will likely occur.
18. The computer-implemented method of claim 14, wherein the missing meeting parameters include a meeting location, the computer-implemented method comprising: generating a location view within the meeting proposal generator GUI element, the location view including location proposal affordances enabling selection of one or more locations to be proposed for the meeting; querying the location service for keywords associated with the type of meeting; receiving a list of locations associated with the keyword; as well as A selectable affordance is displayed for each of the locations in the locations view, thereby enabling the location to be selected as a meeting location proposal.
19. A system, comprising: Memory; and One or more processors configured to: Hosted communications applications; identifying within the communication application an indication of a meeting between a first user of the first electronic device and a second user of the second electronic device based on one or more communication messages provided between the first electronic device and the second electronic device, wherein the one or more communication messages are generated via a first communication application graphical user interface (GUI) of the first electronic device, a second communication application GUI of the second electronic device, or both; responsive to the indication identifying the meeting according to the one or more communication messages, determining whether meeting parameters are missing from the one or more communication messages; In response to determining that the meeting parameter is missing from the one or more communication messages: presenting in the first communication application GUI a recommendation to generate an electronic calendar proposal for the meeting; receiving, via the first communication application GUI, a GUI input providing a response to the recommendation, the response to the recommendation indicating generation of an electronic meeting proposal; and In response to receiving the GUI input, presenting a meeting proposal generator GUI element in the first communication application GUI, the meeting proposal generator GUI element including an affordance for entering missing meeting parameters; as well as In response to determining that the meeting parameter is not missing from the one or more communication messages: presenting in the first communication application GUI a recommendation to generate an electronic calendar entry for the meeting; receiving a second GUI input providing a response to the recommendation to generate the electronic calendar entry for the meeting, the response instructing to generate the electronic calendar entry; and In response to receiving the second GUI input, the electronic calendar entry is generated in an electronic calendar application with the meeting parameters extracted from the one or more communication messages.
20. The system of claim 19, wherein the meeting parameters are missing, and wherein the one or more processors are configured to: extracting one or more non-missing meeting parameters from the one or more communication messages; receiving, via the affordance, an indication of the missing meeting parameters; generating a meeting proposal data object comprising the one or more non-missing meeting parameters and the missing meeting parameters; presenting a meeting proposal data object icon representing the meeting proposal data object in a message input affordance configured to enable a user to input a communication message to be transmitted; receiving an indication of an interaction with a message transmission affordance; as well as In response to receiving the indication, the meeting proposal data object is transmitted to the second electronic device.