Live database records in chat platforms

The system enables live database record sharing in chat platforms, automatically updating displayed data, addressing the inefficiencies of manual copying and ensuring accurate, real-time information exchange.

JP7758368B2Active Publication Date: 2025-10-22SALESFORCE INC
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2023501009
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-07-10
Filing Date
2021-01-29
Publication Date
2025-10-22
Estimated Expiration
2041-01-29

AI Technical Summary

Technical Problem

Users are unable to search for and send database records through conventional chat platforms, requiring manual copying and pasting of data fields, which is error-prone and time-consuming, and live database updates cannot be transmitted between users.

Method used

A system that allows users to request and display live database records in chat sessions, automatically updating the displayed values based on real-time data from a cloud collaboration system, ensuring users view the current values without repetitive retrieval.

Benefits of technology

Saves operating resources by eliminating the need for repeated data retrieval and ensures accurate, up-to-date information is shared within chat sessions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007758368000001
    Figure 0007758368000001
  • Figure 0007758368000002
    Figure 0007758368000002
  • Figure 0007758368000003
    Figure 0007758368000003
Patent Text Reader

Abstract

Described herein are embodiments of systems, apparatus, devices, methods, and / or computer program products, and / or combinations and subcombinations thereof, for displaying live database records in a chat session. In given embodiments, a collaborative communication system may cause a subset of fields of a database record to be displayed in a chat session. The collaborative communication system may detect activation of a chat session. The collaborative communication system may retrieve current values ​​of the subset of fields. Upon retrieval, the collaborative communication system causes the subset of fields of the database record, including updated values ​​of the fields, to be displayed in the chat session.
Need to check novelty before this filing date? Find Prior Art

Description

[Background technology]

[0001] Users often use chat platforms to send messages and files to each other. However, in conventional systems, users cannot search for and send database records through the chat platform. As a result, when a given user wants to share a given database record, the user is forced to copy and paste data fields from the given database record to the chat platform. Furthermore, the data fields on the chat platform are static. Therefore, every time a data field is updated, the user needs to copy and paste the data field again to share it. This can be an error-prone and time-consuming process. [Brief explanation of the drawings]

[0002] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments of the present disclosure and, together with the description, further serve to explain the principles of the embodiments and to enable those skilled in the art to make and use the embodiments individually or in combination thereof. [Figure 1] FIG. 1 is a block diagram of an architecture of a system for displaying live database records in a chat session, according to some embodiments. [Figure 2] FIG. 1 is a block diagram of data flow for a system for displaying live database records in a chat session, according to some embodiments. [Figure 3] 1 is a user interface of a chat platform including multiple chat sessions, according to some embodiments. [Figure 4] 1 is a user interface for a chat session, according to some embodiments. [Figure 5]1 is a user interface for an expanded view of a database record, according to some embodiments. [Figure 6] 10 is a flowchart illustrating a process for including updated values ​​for fields of a database record, according to some embodiments. [Figure 7] 10 is a flowchart illustrating a process for verifying a chat participant's permission to view fields of a database record, according to some embodiments. [Figure 8] FIG. 2 is a block diagram of exemplary components of a mobile device, according to one embodiment. [Figure 9] FIG. 1 is a block diagram of exemplary components of a computing system, according to one embodiment.

[0003] In the drawings, like reference numbers generally indicate the same or similar elements. Additionally, the left-most digit(s) of a reference number generally identify the drawing in which that reference number first appears. DETAILED DESCRIPTION OF THE INVENTION

[0004] Provided herein are embodiments of systems, apparatus, devices, methods, and / or computer program products, and / or combinations and subcombinations thereof, for rendering live database records in a chat platform.

[0005] Chat platforms can often be used to transmit messages, images, and the like. In conventional systems, it is only possible to share static data fields in a chat platform by requiring users to copy and paste the desired data fields into the chat platform. However, because the content of data fields can change over time, users may want to exchange several copies of updated data fields as new versions are created. In some environments, it is useful to be able to transmit live database records using a chat session between two or more users, which is also not possible in conventional chat systems.

[0006] In a given embodiment, the collaborative communication system may detect a request from a user for a database record. In response to the request for the database record, the collaborative communication system may cause a subset of fields of the database record to be displayed in a chat session. The chat session includes chat participants, the chat participants including the user. The collaborative communication system may detect activation of the chat session based on input received from the chat participants. The collaborative communication system may send a request to an API in the collaborative management system to retrieve current values ​​of the subset of fields. Upon retrieval, the collaborative communication system identifies updated values ​​of fields of the subset of fields based on the current values ​​of the subset of fields. Further, the collaborative communication system causes the subset of fields of the database record including the updated values ​​of the fields to be displayed in the chat session.

[0007] With the above configuration, each time a user opens the chat platform, the user can view the current value of the database record in the chat platform. The current value of the database record is rendered in the same part of the chat where the original database record was rendered. In this way, the user does not have to repeatedly attempt to retrieve the database record each time the user wants to view the current value of the database record. In this way, this configuration saves operating resources by eliminating the step of the user retrieving the database record each time the user wants to retrieve the current value of the database record for the chat platform.

[0008] 1 is a block diagram of a system 100 for sharing collaborative documents with users via instant messaging. The system 100 may include one or more mobile devices 102-b, one or more computing devices 104-a, which may be operatively and / or communicatively coupled to a cloud collaboration system 170. For example, the one or more computing devices 104-a, the one or more mobile devices 102-b, and / or the cloud collaboration system 170 of the system 100 may all be communicatively and / or operatively coupled to each other via wired, wireless, or a combination of wired and wireless connections as part of one or more communication networks.

[0009] In one exemplary embodiment, the one or more communications networks may include, but are not limited to, an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless wide area network (WWAN), a metropolitan area network (MAN), a portion of the Internet, a portion of the public switched telephone network (PSTN), a cellular telephone network, a wireless network, a WiFi network, a WiMax network, any other type of network, or a combination of two or more such networks.

[0010] In one embodiment, one or more computing devices 104-a may be configured to execute one or more applications, which may generally include, but are not limited to, desktop collaborative application 110. For example, one or more computing devices 104-a may represent desktop computing devices, server devices, virtual machines executing on desktop computing devices and / or server devices, and / or the like. An exemplary implementation of computing device 104-a is further shown and described with respect to FIG. 9.

[0011] In one embodiment, one or more mobile devices 102-b may be configured to execute one or more mobile applications, which may generally include, but are not limited to, a mobile collaboration application 112. For example, one or more mobile devices 102-b may represent a mobile phone, a personal digital assistant, a tablet computing device, a portable media player, etc. An example implementation of mobile device 102-b is further shown and described with respect to FIG.

[0012] In one embodiment, desktop collaborative application 110 (e.g., a web browser, a native application, etc.) may be configured to visually present (or otherwise display) one or more user interface (UI) views on a display device operatively coupled to each computing device 110-a. The one or more UI views may generally be configured to enable users of desktop collaborative application 110 to chat in real time with other users via each computing device 102-a and / or one or more mobile devices 102-b using one or more chat UI views.

[0013] In one embodiment, the mobile collaboration application 112 (e.g., a mobile web browser, a native mobile application, etc.) is configured to visually present (or otherwise display) one or more user interface (UI) views. The one or more UI views may be configured to enable users of the mobile collaboration application 112 to chat in real time with other users via their respective computing devices 102-a and / or one or more mobile devices 102-b using one or more chat UI views.

[0014] In one embodiment, cloud collaboration system 170 may include, but is not limited to, management application program interface (API) gateway 122, collaboration management system 126, collaboration communication system 128, record data store 134, account data store 136, and communication data store 138. All these systems, gateways, and data stores may be communicatively and / or operatively coupled to one another via one or more wired, wireless, or combinations of wired and wireless connections as part of one or more communication networks such as shown in FIG.

[0015] In one embodiment, collaboration management system 126 may be configured to generally provide one or more cloud computing services. The one or more cloud computing services may include, but are not limited to, Infrastructure as a Service (IaaS), Software as a Service (SaaS), Platform as a Service (PaaS), Storage as a Service (StaaS), Mobile “Backend” as a Service (MBaaS), Function as a Service (FaaS), and / or any other cloud computing service. In one embodiment, the one or more cloud computing services may also generally be implemented by one or more virtual machines running on one or more server devices.

[0016] In one embodiment, one or more cloud computing services of collaboration management system 126 may generally be configured to run one or more distributed applications, which may include, but are not limited to, collaboration management application 140. In one embodiment, collaboration management application 140 may generally be configured to communicate and operate with desktop collaboration application 110 and mobile collaboration application 112 to provide an interface with record data store 134 for providing live database records in chat sessions.

[0017] In one embodiment, collaboration management application 140 may retrieve database records from record data store 134, format the database records into unitary user interface elements, and transmit the unitary user interface elements to the collaborative communication environment.

[0018] In one embodiment, collaboration management application 140 may also enable multiple users to collaborate together in real time or near real time to design, write, implement, edit, and complete various forms of collaborative content, such as, for example, one or more collaborative documents.

[0019] In one embodiment, collaborative communication system 128 may be configured to generally provide one or more cloud computing services similar to those described with respect to collaborative management system 128. In one embodiment, the one or more cloud computing services may also generally be implemented by one or more virtual machines executing on one or more server devices.

[0020] In one embodiment, one or more cloud computing services of collaborative communication system 128 may generally be configured to run one or more distributed applications, which may include, but are not limited to, collaborative communication application 142. In one embodiment, collaborative communication application 142 may generally be configured to communicate and operate with desktop collaborative application 110 and mobile collaborative application 112 to provide real-time instant messaging, as further described herein.

[0021] Although collaboration management system 126 and collaboration communication system 128 are shown as separate systems, it can be understood that these two systems can be combined into a composite system. Furthermore, the composite system can then be configured to provide one or more cloud computing services and run one or more distributed applications, including, but not limited to, collaboration management application 140 and collaboration communication application 142.

[0022] In one embodiment, the record data store 134 may be generally configured to store database records. As a non-limiting example, the data set records may be sales account records. The sales account records may include the name of the sales account, potential sales amounts, past sales amounts, target close dates, current clients, past clients, potential clients, etc.

[0023] In one embodiment, account data store 136 may generally be configured to manage user account information associated with each user of collaborative management system 126 and collaborative communication system 142. User account information for each user may include, but is not limited to, a user identifier (e.g., the user's email, unique name, etc.), a full username (e.g., first name and last name, etc.), a user password (e.g., a hashed and salted version of alphanumeric text, etc.), a user image (e.g., a reference to an image or time associated with the user), permission settings, and / or any other information associated with the user.

[0024] In one embodiment, communications data store 138 may be configured to store chat history information generally relating to chat (or instant message) histories between one or more users. In one embodiment, a chat history may include information related to all chat sessions and / or conversations between a set of users. In one embodiment, the chat history information for each chat history between a set of users may include, but is not limited to, a chat user list identifying user identifiers of users involved in the instant message conversation, a chat history identifier uniquely identifying the chat history between the set of users, and / or a collaborative communication message list between the set of users. The chat history may include transmissions between the set of users. For example, the transmissions may include alphanumeric text, images, emojis, stickers, GIFs, and database records.

[0025] Each of the one or more transmissions may include, but is not limited to, a set of transmission attributes and transmission content. In one embodiment, the set of communication message attributes may include, but is not limited to, a transmission time attribute that identifies the time the transmission was sent, a transmission creator attribute that identifies a user in the set of users that sent the transmission, and / or any other transmission attribute. In one embodiment, the transmission content may include, but is not limited to, alphanumeric text associated with the actual communication message stored in one or more text-encoded and / or interpreted languages ​​(e.g., Hypertext Markup Language (Hypertext Markup Language) or a subset thereof).

[0026] In one embodiment, management API gateway 122 may generally be configured to provide one or more APIs to enable one or more applications (e.g., collaboration management application 140, collaborative communication application 142, etc.) to communicate with desktop collaboration application 110 and mobile collaboration application 112. For example, management API gateway 122 may be configured to manage any incoming requests and provide corresponding responses between one or more applications and collaboration management system 126 and / or collaborative communication system 128 according to one or more communication protocols.

[0027] 2 is a block diagram of a data flow 200 of a system for displaying live database records in a chat session. In a given embodiment, a mobile collaborative application 112 of a mobile device 102-1 may send a request 204-1 to a collaborative communication system 128 to initiate a chat session with one or more chat participants. For example, the mobile collaborative application 112 may launch a chat platform in response to input received from a user. As described above, the chat platform may be an application that allows two or more chat participants to initiate chats with each other. The chat participants may be users of the mobile device 102-1 or the computing device 104-1. The two or more chat participants may use the chat platform to send messages, images, emojis, GIFs, database records, etc. to each other. Transmissions between two or more users may be sent and received in a chat session. A chat participant may have multiple chat sessions with different chat participants using the chat platform.

[0028] According to one embodiment, a user may log in to the chat platform using a username and password, or other authentication method. Once in the chat platform, the user (e.g., a chat participant) may provide an identifier of one or more other users with whom the user wants to initiate a chat. The identifier may be a username (such as the username used upon login), a handle, an employee ID number, a student ID number, a randomly generated identifier, etc. Request 204-1 may include the user identifier of the user and the identifiers of each of the one or more other users.

[0029] In response to receiving request 204-1, collaborative communications application 204 may send request 204-2 to communications data store 138 to determine whether an existing chat session exists between the user and one or more other users. In response to determining that a chat session does not exist between the user and one or more other users, communications data store 138 may send response 204-3 to collaborative communications application 204. Response 204-3 may indicate that a chat session does not exist between the user and one or more other users.

[0030] In response to receiving response 204-3, collaborative communication application 204 may initiate a new chat session between the user and one or more other users. The user and one or more other users may be chat participants in the chat session. Thus, the chat session may include two or more chat participants. Collaborative communication application 204 may generate a chat session identifier along with the chat session. The chat session identifier may be stored in communications data store 138. Collaborative communication application 204 may send response 204-4 to mobile collaborative application 112. Response 204-4 may include instructions to the chat platform to initiate the new chat session.

[0031] In response to receiving response 204-4, the mobile collaboration application 112 may initiate a new chat session in the chat platform between the two or more chat participants. Each of the two or more chat participants may send alphanumeric messages, images, GIFS, emojis, and database records in the chat session using the chat platform. A given chat participant may send transmissions to each other in the chat session using the mobile collaboration application 112. Each alphanumeric transmission may be encoded using one or more description languages ​​(e.g., HTML or a subset thereof). The transmissions between the two or more chat participants may be stored in the communication data store 138. The transmissions may be stored in the communication data store 138 in (near) real time. Alternatively, the transmissions may be stored in the communication data store 138 periodically. The transmissions may be stored in the communication data store 138 as a chat history and may be correlated with a chat session identifier.

[0032] The mobile collaboration application 112 may send a request 208-1 to the collaborative communication system 128 to retrieve a database record. The request 208-1 may include a database record identifier (e.g., a name, a unique ID, etc.) and identifiers of two or more chat participants. The collaborative communication application 204 may receive the request 208-1 and send a request 208-2 to retrieve a database record to the collaboration management system 126. The request 208-2 may include the database record identifier and identifiers of the two or more chat participants.

[0033] In response to collaboration management system 126 receiving request 208-2, collaboration management application 140 may retrieve 208-3 the database record from record data store 134 using the database record identifier. Collaboration management application 140 may format the retrieved database record into a unitary user interface element that includes a subset of the fields of the database record. For example, collaboration management application 140 may determine, based on chat session settings or preferences, that, of a given amount of fields in the database record, a subset of the fields should be rendered in the chat session.

[0034] Collaboration management application 140 may encode unitary user interface elements with database record identifiers. Collaboration management application 140 may encode unitary user interface elements with links to screens for expanded views of the database records, as shown in Figure 5. The links may be URLs / URIs.

[0035] Unitary user interface elements may also include icons (e.g., small images). Collaboration management application 140 may derive an icon for a database record based on the value of a field in the database record. For example, the database record may be a sales record. The sales record may be for an existing client, a past client, or a potential client. In this regard, the icon may represent the type of client.

[0036] The collaboration management application 140 may also retrieve permission settings for the user and one or more other users from the account data store 136 using the identifiers of the two or more chat participants (208-4). The permission settings may indicate which database record fields a given chat participant is permitted to view. For example, one chat participant in a chat session may be permitted to view all fields of a database record. Conversely, a different chat participant in a chat may be permitted to view only a subset of the database fields. The collaboration management application 140 may determine, based on the permission settings, which fields of a subset of fields in a unitary user interface element a given chat participant may view. In this regard, the collaboration management application 140 may remove a field from the subset of fields in a unitary user interface element if the given chat participant is not permitted to view the field. In this regard, the collaboration management application 140 may generate a different unitary user interface element for each chat participant in a chat session. The different unitary user interface elements may be included in response 208-5. Collaboration management application 140 may send response 208-5 to collaborative communication system 128.

[0037] The collaboration management application 202 may receive the response 208-5. The response 208-5 may include different unitary user interface elements for the chat participants in the chat session. The collaboration management application 202 may generate a response 208-6. The response 208-6 may include unitary user interface elements for the given chat participant. As described above, the unitary user interface elements may be specific to a given chat participant based on the chat participant's permission settings. Different responses 208-6 including respective unitary user interface elements may be generated for different chat participants. The collaboration management application 202 sends the response 208-6 to the mobile collaboration application 112. The mobile collaboration application 112 may render unitary user interface elements that indicate database records in the chat session for the given chat participant. The unitary user interface elements may include fields of the database records that the given chat participant is authorized to view.

[0038] As described above, a unitary user interface element may be encoded with a database record identifier and a link to an expanded view of the database record. In response to a chat participant selecting the unitary user interface element, an expanded view of the database record may be displayed. The expanded view of the database record may be shown in FIG. 5.

[0039] A chat session may be deactivated based on user input. For example, a given chat participant may end the chat session. Alternatively, a chat session may be deactivated based on a timeout or minimization. As described above, chat history between two or more chat participants may be stored in the communications data store 138 and correlated with a chat session identifier.

[0040] A chat session may then be activated based on input from a given chat participant. The input may include opening a chat session, maximizing a chat session, or attempting to start a chat session with another user with whom a chat session already exists. Each of these inputs may be converted into a request 210-1. Request 210-1 may be referred to as an activation request. Request 210-1 may include an identifier of the given chat participant who activated the chat session. Request 210-1 may be transmitted to collaborative communication system 128. Collaborative communication application 202 may transmit request 210-2 to communication data store 138 to retrieve a chat history of an existing chat session between two or more chat participants.

[0041] In response to determining that a chat session exists between two or more chat participants, the communications data store 138 may retrieve a chat history between the two or more chat participants. The chat history may include past transmissions between the two or more chat participants. The transmissions may include alphanumeric text messages, images, GIFs, emojis, and database records.

[0042] The communications data store 138 may send a response 210-3 to the collaborative communications application 204. The response 210-3 may include the chat history. The collaborative communications application 204 may receive the response 210-3. The collaborative communications application 204 may identify each database record in the chat history. The database records may be represented as unitary user interface elements. The unitary user interface elements may be encoded with database record identifiers. The collaborative communications application 204 may extract the database record identifiers from the unitary user interface elements. The collaborative communications application 204 may generate and send a request 210-4 to the collaboration management system 206 to retrieve any updated values ​​for the fields of each database record included in the chat history. The request 210-4 may include the fields of the database records included in the chat history, the unitary user interface elements for the given chat participant who activated the chat session, the database record identifier, and the identifier of the given chat participant who activated the chat session.

[0043] The collaboration management system 126 may receive the response. The collaboration management API 203 may query 210-5 the query records data store 134 to retrieve updated values ​​for any of the fields of the database records included in the chat history. For example, if the database record indicates a sales opportunity value of $5,000 for the database record in the chat history and is updated to $10,000 in the records data store 134, the query 210-5 may retrieve the updated value of $10,000 for the database record. Conversely, if the value of the field in the database record has not been updated, the query 210-5 may indicate that the value of the field has not been updated.

[0044] The collaboration management system 126 may also generate a message that includes all of the updated fields. For example, a message may be displayed that reads, "Sales opportunity value has updated from $5,000 to $10,000." The message may be included in the unitary user interface element that was updated.

[0045] The collaboration management API 203 may retrieve (210-6) permission settings for a given chat participant who activated a chat session from the account data store 136 using the given chat participant's identifier. The collaboration management application 140 may determine which fields a given chat participant is permitted to view based on the permission settings for each user and chat participant. The collaboration management application 140 may update unitary user interface elements for a given chat participant who activated a chat session based on the updated values ​​of the fields and the permission settings. Thus, a given chat participant may not be able to view a field even if the value of the field has been updated.

[0046] Collaboration management application 140 may determine that a database record now corresponds to a new icon based on the updated value of the field. For example, if a sales opportunity field in a database record is updated from $5,000 to $10,000, collaboration management application 140 may determine that the database record corresponds to a new icon. Collaboration management application 140 may include the new icon with the unitary user interface element.

[0047] Collaboration management application 140 may generate response 210-7 that includes the updated unitary user interface element, the given chat participant who activated the chat session, and may send response 210-7 to collaborative communication system 128.

[0048] The collaborative communication application 202 may update the chat session for a given chat participant who activated the chat session with updated unitary user interface elements representing the database records. The chat session may be updated for each chat participant in response to activating the chat session. The collaborative communication application 202 may generate a response 210-8 that includes the chat session. The chat session may include a chat history that includes updated unitary user interface elements for each database record in the chat history. The collaborative communication application 202 may send the response 210-8 to the mobile device 102-1. The mobile collaborative application 112 may display the chat session on the chat platform. In this manner, each time a user activates or opens a chat session, updated values ​​of the database records included in the chat session are displayed in the chat session.

[0049] In some embodiments, an updated unitary user interface element may be displayed in the same location within the chat session in which it was originally sent. In this way, the chat session may maintain a timeline of its sending while updating the value of the database record indicated by the unitary user interface element.

[0050] Desktop collaboration application 210, like mobile collaboration application 112, may also send requests 212-1 to collaborative communication system 128 to start new chats, insert database records, and activate old chats. Additionally, desktop collaboration application 210 may receive responses 212-2 from collaborative communication system 128. Responses 212-2 may include chat sessions, including chat history. The chat history may include previous transmissions between two or more chat participants. The transmissions may include messages, images, GIFs, emojis, and database records. The chat sessions received in response 212-2 may include current values ​​of the database records included in the chat history. Desktop collaboration application 210 may display the chat sessions in a chat platform running by desktop collaboration application 210.

[0051] 3 is a user interface of a chat platform including multiple chat sessions, according to some embodiments. In a given embodiment, mobile device 102-1 may render a user interface of a chat platform running on a mobile collaborative application. The chat platform may include inactive chat sessions 302. Each chat session may include a chat name 304, images 306 of other chat participants, and an indication 308 that new / unread messages have been sent in the chat session 302.

[0052] A user may open (or activate) any of the chat sessions 302 by selecting one of the chat sessions. For example, a user may open a chat session 302 by clicking on the chat session 302. A user may also click anywhere around the area of ​​the chat session 302 to open the chat session.

[0053] The user interface may also include a preview of the last transmission in the chat session. Additionally, the user interface may include the time the last transmission in the chat session was sent.

[0054] The user interface may also include a search input box 310. A user may perform a search in a chat session by entering alphanumeric text into the search input box 310. The search may be dynamically updated for each character entered into the search input box 310.

[0055] 4 is a user interface for a chat session, according to some embodiments. As shown in FIG. 3, a user may open (or activate) a chat session 302 by selecting the chat session 302. The mobile device 102-1 may render a user interface for a chat platform running on a mobile collaboration application. The user interface may include the chat session 302.

[0056] A chat session 302 may include a chat name and transmissions between other chat participants. A transmission may include an image 400, a text message 402, and a database record 404. A database record 404 may be a unitary user interface element that includes a record name 408, a message 406, and a subset of the fields 409 of the database record 404.

[0057] The chat platform may also provide a message composer 412. The message composer may be used to enter and send messages in a chat session. Additionally, in response to entering the "@" key, the chat platform may initiate a search for users or database records. For example, in response to entering "@," a list of users and database records may be displayed. In response to selecting a user, a message specifically directed to that user may be composed. In response to selecting a database record, the database record may be displayed in the chat session 302.

[0058] The chat platform may also provide buttons 401, 414-422. Button 401 may be selected to collapse or close the chat session 302. Collapsing or closing the chat session 302 may deactivate the chat session 302. Button 414 may be selected to send an image in the chat session 302. Button 416 may be selected to send an emoji or GIF. Button 418 may be selected to search for and send a database record. In response to selecting button 418, a list of database records may be displayed. In response to selecting a database record, the database record may be rendered in the chat session 302. Button 420 may be selected to initiate a search for a user or database record. In response to selecting button 420, an "@" key may be entered in the message composer 412, and a list of users and database records may be displayed. A user may search for a particular user or database record by entering alphanumeric text after the "@" key. The list of users and database records can be filtered for each letter or number entered into the message composer 412 after the "@" key. Button 422 can be a submit button for sending a message, image, emoji, GIF, or database record.

[0059] In a given embodiment, the collaborative communication system may detect activation of the chat session 302 in response to a user opening the chat session 302. Detecting activation of the chat session 302 may include receiving an activation request to open the chat session 302. The activation request may be generated based on user input, such as a user clicking / selecting the chat session 302. The collaborative communication application may access the chat session identifier and identifiers of the other chat participants in the chat session 302. The collaborative communication application may use the chat session identifier to retrieve a chat history of the chat session 302 from a communication data store. The chat history may include transmissions between the other chat participants. The collaborative communication application may identify a database record 404 within the chat history. The collaborative communication application may send a request to the collaborative management system to retrieve any updated values ​​of the database fields 409 of the database record 404. The database fields 409 may be a subset of the fields of the database record. The database fields 409 may be selected for inclusion in the chat session 302 based on chat settings or user preferences. The request may include the database record identifier, the database field 409, and the identifiers of the other chat participants.

[0060] The collaboration management API may query the record data store to retrieve any updated values ​​for database fields 409. Based on the query, the collaboration management API may determine that the end date of the database record was updated from February 9, 2020 to April 30, 2020.

[0061] The collaboration management application can retrieve permission settings of other chat participants from the account data store and, based on the permission settings, determine which fields the chat participants can view.

[0062] The collaboration management application may modify the unitary user interface elements of the database record 404 based on the updated end date. The collaboration management application may also remove database fields from the unitary user interface elements of the database record 404 based on the permission settings of the other chat participants. In this way, the collaboration management application may generate a different unitary user interface element for each chat participant so that the chat participant sees only the fields that the user is authorized to see.

[0063] The collaboration management application may also generate a message 406 indicating an update to the close date in a field of the database record 404. The message 406 may state, "Close date has changed from 'Feb 9, 2020' to 'Apr 30, 2020'." The message 406 may be included in a unitary user interface element of the database record 404.

[0064] The collaboration management application may send the updated unitary user interface elements of database record 404 for each chat participant to the collaborative communication system. The collaborative communication application may include the updated unitary user interface elements of database record 404 in each chat participant's chat history. The collaborative communication application may send the chat history to each chat participant's mobile device 102-1.

[0065] In response to a user opening a chat session 302 , the mobile collaborative application may render a chat history in the chat session 302 that includes updated unitary user interface elements of the database record 404 .

[0066] 5 is a user interface for an expanded view of a database record, according to some embodiments. A user may view an expanded view 500 of a database record (e.g., database record 404 as shown in FIG. 4) in response to the user selecting the database record in a chat session. Mobile device 102-1 may render a user interface of a chat platform running on a mobile collaborative application. The user interface may include expanded view 500 of the database record. Expanded view 500 may include additional fields not included in the unitary user interface element of the database record included in the chat session. Expanded view 500 may also include a button 502. Button 502 may be selected to view the database record in a back-end system.

[0067] A user may edit fields of the database record by selecting edit selection 504. In response to selecting edit selection 504, the mobile collaboration application may send a request to the collaborative communication system. The request may include an identifier of the user who selected edit selection 504. The collaborative communication system may forward the request to the collaboration management system. The collaboration management application may use the identifier to retrieve the user's permission settings. The permission settings may indicate which fields of the database record the user can edit. The collaboration management application may send the permission settings to the collaborative communication system. The collaborative communication application may make the fields the user is allowed to edit in extended view 500 editable by the user. The user's edits may be stored in the record data store. The user may return to the chat session in response to selecting "Done" selection 506.

[0068] 6 is a flowchart illustrating a process for displaying updated values ​​of a database record in a chat session, according to some embodiments. Method 600 may be performed by processing logic, which may include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executing on a processing device), or a combination thereof. It should be understood that not all steps are required to practice the disclosure provided herein. Furthermore, as will be understood by one of ordinary skill in the art, some of the steps may be performed simultaneously or in a different order than that shown in FIG. 6.

[0069] The method 600 will be described with reference to Figures 1-2. However, the method 600 is not limited to the example embodiment.

[0070] In operation 602, collaborative communication system 128 detects a request from a user for a database record. The chat session may include one or more other chat participants. The user may be one of the other chat participants. The chat participants may send messages, images, GIFs, emojis, and database records to each other in the chat session. Collaborative communication application 202 may send a request to collaboration management system 126 to retrieve the database record. The request may include an identifier of the database record. Collaboration management application 140 may retrieve the database record from record data store 134. Collaboration management application 140 may convert the database record into a unitary user interface element that includes a subset of the fields of the database record. The subset of fields to be included in the unitary user interface may be determined based on chat session settings or user preferences.

[0071] At operation 604, the collaborative communication system 128 displays a subset of the fields of the database record in the chat session. The collaborative communication application 202 may send unitary user interface elements of the database record to be included in the chat session to the mobile collaborative application 112 or the desktop collaborative application 110. The mobile collaborative application 112 or the desktop collaborative application 110 may render the unitary user interface elements of the database record in the chat session. As an example, the mobile collaborative application 112 or the desktop collaborative application 110 may run a chat platform. The chat session may be displayed on the chat platform, and the unitary user interface elements of the database record may be displayed in the chat session.

[0072] In operation 606, collaborative communication system 128 detects activation of a chat session based on the received input. The input may be an opening of a chat session or an attempt to start a chat session with the same user.

[0073] At operation 608, collaborative communication system 128, in response to activating the chat session, retrieves a chat history between chat participants of the chat session. Collaborative communication system 128 may retrieve the chat history from communication data store 138 using the chat session identifier. The chat history may include previous transmissions between the chat participants. The previous transmissions may include messages, images, GIFs, emojis, and database records. Collaborative communication system 128 may identify database records within the chat history. The database records may be associated with the database record identifiers.

[0074] In operation 610, the collaborative communication system 128 sends a request to the collaboration management system 126 to retrieve updated values ​​for a subset of fields of the database records included in the chat history. The request may include the subset of fields and the database record identifiers. The collaboration management API 203 may query the record data store 134 to retrieve the updated fields of the database records included in the chat history.

[0075] At operation 612, collaboration management API 203 identifies updated values ​​for fields among a subset of fields of the database record. For example, the query may return updated values ​​for the updated fields. If the fields have not been updated, the query may not return values. Collaboration management application 140 may update unitary user interface elements for the database record to reflect the updated values ​​for the fields. Collaboration management application 140 may send the updated unitary user interface elements for the database record, including the updated values ​​for the fields, to collaborative communication system 128.

[0076] At operation 614, the collaborative communication application 202 displays the subset of fields of the database record including the updated values ​​of the fields in the chat session. The collaborative communication application 202 may include the updated unitary user interface element in the chat history. The collaborative communication application 202 may send the chat history to the mobile collaboration application 112 or the desktop collaboration application 110. The mobile collaboration application 112 or the desktop collaboration application 110 may display the chat history in the chat session upon opening the chat platform. In this manner, the chat session may include previous transmissions between the chat participants and the unitary user interface element for the database record including the updated values ​​of the fields of the subset of fields. The unitary user interface element may also include a message indicating the update to the field. In this manner, when any of the chat participants opens the chat session, the current values ​​of the fields of the database record are displayed in the chat session.

[0077] 7 is a flowchart illustrating a process for verifying a user's permission to view fields of a database record, according to some embodiments. Method 700 may be performed by processing logic, which may include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executing on a processing device), or a combination thereof. It should be understood that not all steps are required to practice the disclosure provided herein. Furthermore, as will be understood by one of ordinary skill in the art, some of the steps may be performed simultaneously or in a different order than that shown in FIG. 7.

[0078] Method 700 will be described with reference to Figures 1-2. However, method 700 is not limited to the example embodiment.

[0079] At operation 702, collaborative communication system 128 may detect a request from a user for a database record. The chat session may include two or more chat participants. The user may be one of the chat participants. The chat participants may send messages, images, GIFs, emojis, and database records to each other in the chat session. The request may include an identifier for each chat participant in the chat session and a database record identifier.

[0080] At operation 704, the collaborative communications application 202 may send a request to retrieve the database record to the collaboration management system 126. The request may include an identifier of the database record. The collaboration management application 140 may retrieve the database record from the record data store 134.

[0081] At operation 706, collaboration management application 140 may use each chat participant's identifier to retrieve permission settings for each of the chat participants in the chat session from account data store 136. The permission settings may define which fields the chat participants are allowed to view.

[0082] At operation 708, collaboration management application 140 converts the database record into a unitary user interface element that includes a subset of the fields of the database record. Collaboration management application 140 generates a different unitary user interface element for each chat participant based on the chat participant's permission settings. For example, if a chat participant is not allowed to view a particular field in the subset of fields, collaboration management application 140 may remove that field from the unitary user interface element for that user.

[0083] At operation 710, collaborative communication system 128 displays a subset of fields of the database record in the chat session based on the permission settings of the chat participants. Collaborative communication application 202 may send unitary user interface elements specific to the chat participants to mobile collaborative application 112 or desktop collaborative application 110 to be included in the chat session. Mobile collaborative application 112 or desktop collaborative application 110 may render the unitary user interface elements in the chat session.

[0084] 8 shows an example block diagram 800 of an example embodiment of a mobile device 102 executing a mobile collaboration application 112. A mobile device 102 (e.g., a mobile phone, a tablet, a laptop, etc.) may generally be configured to enable or permit a user to access various collaborative content and engage in real-time instant messaging with one or more target users. While FIG. 8 shows one example embodiment of a mobile device 102, it should be understood that the example embodiment is not limited in this context.

[0085] In one embodiment, the mobile device 102 may generally be arranged to provide mobile computing and / or mobile communications and may include, but is not limited to, a memory 870, a communication component 874, a mobile processor component 884, a touch-sensitive display component 886, a location component 888, an internal power component 890, and an image acquisition component 894, each of the components and the memory 870 may be operably connected via an interconnect 892.

[0086] In one embodiment, memory 870 may be arranged to store information in volatile and / or non-volatile memory, which may generally include, but is not limited to, read-only memory (ROM), random access memory (RAM), dynamic RAM (DRAM), double data rate DRAM (DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) flash memory, polymer memory such as ferroelectric polymer memory, ovonic memory, phase change or ferroelectric memory, SONOS (silicon-oxide-nitride-oxide-silicon) memory, solid-state memory devices (e.g., USB memory, solid-state drives SSDs, etc.), and / or any other type of storage medium configured to store information.

[0087] In one embodiment, memory 870 may include instruction information arranged for execution by mobile processor component 884. In that embodiment, the instruction information may represent at least one operating system 872, one or more applications, which may include, but are not limited to, mobile collaboration application 112. In one embodiment, memory 970 may further include device data store 950, which may be configured to store information associated with mobile collaboration application 112 (e.g., cached chat history, etc.).

[0088] In one embodiment, the mobile operating system 872 may include, but is not limited to, a mobile operating system (e.g., Apple®, iOS®, Google® Android®, Microsoft® Windows Phone®, Microsoft® Windows®, etc.) that is generally arranged to manage hardware resources (e.g., one or more components of the mobile device 102) and / or software resources (e.g., one or more applications of the mobile device 102).

[0089] In one embodiment, the communications component 874 may generally be arranged to enable the mobile device 102 to communicate directly and / or indirectly with various devices and systems (e.g., such as the cooperative communications system 128). The communications component 874 may include, among other elements, radio frequency circuitry (not shown) configured to encode and / or decode information and receive and / or transmit encoded information as radio signals at frequencies consistent with one or more wireless communications standards (e.g., Bluetooth, Wireless IEEE 802.11, WiMAX IEEE 802.16, Global Systems for Mobile Communications (GSM), Enhanced Data Rates for GSM Evolution (EDGE), Long Term Evolution (LTE), a Bluetooth standard, a Near Field Communications (NFC) standard, etc.).

[0090] In one embodiment, the mobile processor component 884 may be generally arranged to execute instruction information, which may generally include one or more executable and / or interpretable instructions. In one embodiment, the processor component 884 may be a mobile processor component or a system-on-chip (SoC) processor component. The processor component 884 may comprise, among other elements, a processor circuit, which may further include, but is not limited to, at least one set of electronic circuits arranged to execute one or more instructions. Examples of the mobile processor component 884 may include, but are not limited to, a Qualcomm® Snapdragon®, an NVidia® Tegra®, an Intel® Atom®, a Samsung® Exynos, an Apple® A7®-A13®, or any other type of mobile processor(s) arranged to execute instruction information, including one or more instructions, stored in the memory 870.

[0091] In one embodiment, touch-sensitive display component 886 may generally be arranged to receive and present visual display information and to provide touch input information based on detected touch- or contact-based input. Further, touch-sensitive display component 286 may include, among other elements, a display device (e.g., a liquid crystal display, a light-emitting diode display, an organic light-emitting diode display, etc.) for presenting visual display information and touch sensor(s) (e.g., a resistive touch sensor, a capacitive touch sensor, etc.) associated with display device 268 for detecting and / or receiving touch- or contact-based input information associated with the display device of mobile device 102. Additionally, the touch sensor(s) may be integrated with a surface of the display device such that a user's touch or contact input may substantially correspond to visual display information presented on the display device, such as, for example, one or more user interface (UI) views and elements discussed and illustrated herein.

[0092] In one embodiment, location component 888 may generally be arranged to receive positioning signals representing positioning information and to provide location information (e.g., an approximate physical location of mobile device 102) determined based at least in part on the received positioning information. Additionally, location component 888 may include, among other elements, positioning circuitry (e.g., a Global Positioning System (GPS) receiver, etc.) arranged to determine the physical location of mobile device 102. In some embodiments, location component 888 may further be arranged to communicate and / or interface with communication component 874 to provide greater accuracy and / or faster determination of location information.

[0093] In one embodiment, internal power component 890 may be generally arranged to provide power to various components and memory of mobile device 102. In one embodiment, internal power component 890 may include and / or be operably coupled to an internal and / or external battery configured to provide power to various components (e.g., communication component 874, movement component 876, memory 870, etc.). Internal power component 890 may also be operably coupled to an external charger to charge the battery.

[0094] In one embodiment, image acquisition component 894 may generally be arranged to generate digital image information using an image capture device such as, for example, a charge-coupled device (CCD) image sensor (not shown). Further, image acquisition component 894 may be arranged to provide or otherwise stream the digital image information captured by the CCD image sensor to touch-sensitive display component 886 for visual presentation via interconnect 892, mobile operating system 872, and mobile processor component 884.

[0095] FIG. 9 illustrates an exemplary computer system 900 useful for implementing various embodiments. Furthermore, various embodiments may be implemented using, for example, one or more well-known computer systems, such as the computer system 900 illustrated in FIG. 9 . One or more computer systems 900 may be used to implement, for example, any of the embodiments described herein, as well as combinations and subcombinations thereof. For example, computer system 900 may implement one or more computing devices 104-a. In another example, one or more computing systems 900 may be communicatively coupled to each other and each configured to run one or more virtual machines (not shown). The one or more virtual machines may be managed or otherwise organized by one or more virtual machine managers (not shown) configured to provision and / or configure the one or more virtual machines on the one or more computing systems 900. The one or more virtual machines may further be configured as a Software as a Service (SaaS), Platform as a Service (PaaS), and / or Infrastructure as a Service (IaaS) provider configured to host or otherwise run one or more applications associated with one or more gateways, systems, and / or data stores of FIG. 1 .

[0096] Computer system 900 may include one or more processors (also referred to as central processing units or CPUs), such as processor 904. Processor 904 may be connected to a communication infrastructure or bus 906.

[0097] The computer system 900 may also include customer input / output device(s) 903 such as a monitor, keyboard, pointing device, etc. that may communicate with a communications infrastructure 906 through customer input / output interface(s) 902 .

[0098] One or more of the processors 904 may be a graphics processing unit (GPU). In one embodiment, a GPU may be a processor that is a special-purpose electronic circuit designed to handle mathematically intensive applications. A GPU may have a parallel structure that is efficient for parallel processing of large blocks of data, such as mathematically intensive data, images, video, and the like, common in computer graphics applications.

[0099] The computer system 900 may also include a main or primary memory 908, such as random access memory (RAM). The main memory 908 may include one or more levels of cache. The main memory 908 may store control logic (i.e., computer software) and / or data therein.

[0100] Computer system 900 may also include one or more secondary storage devices or memories 910. Secondary memory 910 may include, for example, a hard disk drive 912 and / or a removable storage device or drive 914. Removable storage drive 914 may be a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, a tape backup device, and / or any other storage device / drive.

[0101] The removable storage drive 914 may interact with a removable storage unit 918. The removable storage unit 918 may include a computer-usable or readable storage device that stores computer software (control logic) and / or data. The removable storage unit 918 may be a floppy disk, magnetic tape, compact disk, DVD, optical storage disk, and / or any other computer data storage device. The removable storage drive 914 may read from and / or write to the removable storage unit 918.

[0102] Secondary memory 910 may include other means, devices, components, instrumentalities, or other techniques for allowing computer programs and / or other instructions and / or data to be accessed by computer system 900. Such means, devices, components, instrumentalities, or other techniques may include, for example, removable storage unit 922 and interface 920. Examples of removable storage unit 922 and interface 920 may include a program cartridge and cartridge interface (such as those found in video game devices), a removable memory chip (such as an EPROM or PROM) and associated socket, a memory stick and USB port, a memory card and associated memory card slot, and / or any other removable storage unit and associated interface.

[0103] Computer system 900 may further include a communications or network interface 924. Communications interface 924 may enable computer system 900 to communicate and interact with any combination of external devices, external networks, external entities, etc. (individually and collectively referred to by reference numeral 928). For example, communications interface 924 may enable computer system 900 to communicate with external or remote devices 928 over communications path 926, which may be wired and / or wireless (or a combination thereof) and may include any combination of a LAN, a WAN, the Internet, etc. Control logic and / or data may be transmitted to or received from computer system 900 via communications path 926.

[0104] The computer system 900 may also be any one or any combination of a personal digital assistant (PDA), a desktop workstation, a laptop or notebook computer, a netbook, a tablet, a smartphone, a smartwatch or other wearable, an appliance, part of the Internet of Things, and / or an embedded system, to name a few non-limiting examples.

[0105] The computer system 900 may be a client or server that accesses or hosts any application and / or data via any delivery paradigm, which may include, but is not limited to, remote or distributed cloud computing solutions, local or on-premise software ("on-premise" cloud-based solutions), "as a service" models (e.g., Content as a Service (CaaS), Digital Content as a Service (DCaaS), Software as a Service (SaaS), Managed Software as a Service (MSaaS), Platform as a Service (PaaS), Desktop as a Service (DaaS), Framework as a Service (FaaS), Backend as a Service (BaaS), Mobile Backend as a Service (MBaaS), Infrastructure as a Service (IaaS), etc.), and / or hybrid models including any combination of the above examples or other service or delivery paradigms.

[0106] Any applicable data structures, file formats, and schemas in computer system 900 may be derived from standards, including, but not limited to, JavaScript® Object Notation (JSON), Extensible Markup Language (XML), Yet Another Markup Language (YAML), Extensible Hypertext Markup Language (XHTML), Wireless Markup Language (WML), MessagePack, XML User Interface Language (XUL), or any other functionally similar representations, alone or in combination. Alternatively, proprietary data structures, formats, or schemas may be used exclusively or in combination with known or open standards.

[0107] In some embodiments, a tangible, non-transitory apparatus or article of manufacture comprising a tangible, non-transitory computer-usable or readable medium having control logic (software) stored thereon may also be referred to herein as a computer program product or program storage device. This includes, but is not limited to, computer system 900, main memory 908, secondary memory 910, and removable storage units 918 and 922, as well as tangible articles of manufacture embodying any combination of the foregoing. Such control logic, when executed by one or more data processing devices (such as computer system 900), may cause such data processing devices to operate as described herein.

[0108] Based on the teachings contained herein, it will be apparent to one skilled in the relevant art(s) how to make and use embodiments of the present disclosure using data processing devices, computer systems, and / or computer architectures other than those shown in Figure 9. In particular, embodiments may operate with software, hardware, and / or operating system implementations other than those described herein.

[0109] The embodiments of the present disclosure are described above using functional building blocks that illustrate implementations of specified functions and relationships thereof. The boundaries of these functional building blocks have been arbitrarily defined herein for the convenience of description. Alternative boundaries may be defined so long as the specified functions and relationships thereof are appropriately performed.

[0110] The foregoing description of specific embodiments sufficiently clarifies the general nature of the present disclosure so that others, by applying knowledge within the art, can readily modify and / or adapt such specific embodiments for various uses without undue experimentation and without departing from the general concept of the present disclosure. Accordingly, such adaptations and modifications are intended to be within the meaning and range of equivalents of the disclosed embodiments, based on the teaching and guidance presented herein. It should be understood that the phrases or terms used herein are intended to be descriptive rather than limiting, as the terms or terms used herein would be interpreted by one of ordinary skill in the art in light of the teaching and guidance.

[0111] The breadth and scope of the present disclosure should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.

Claims

1. 1. A method, comprising: displaying, by the computing device, a user interface element within the chat session displayed by a first user interface for a first participant device and a second user interface for a second participant device, the user interface element including a subset of fields of a database record, a field of the subset of fields including a value; determining, by the computing device, updates to the values ​​of the fields of the subset of fields based on changes in the state of the chat session; identifying a first permission level for the first participant device and a second permission level for the second participant device; causing the first user interface to display the updated value of the field and an edit selection element based on the first permission level; causing a third user interface for the first participant device to display editable fields of the subset of fields of the database record based on interaction with the edit selection element; causing, based on the second permission level, to remove display of other fields of the subset of fields of the database record from the chat session displayed by the second user interface; Including, method.

2. The method of claim 1, further comprising the step of generating a visual indication of the value of the field of the subset of fields changing to the updated value of the field in response to the step of determining an update to the value of the field of the subset of fields based on a change in the state of the chat session.

3. The change in the state of the chat session includes a change from a deactivated state of the chat session to an activated state of the chat session, the method comprising: In response to detecting the activated state of the chat session, retrieving, by the computing device, the chat session using a chat session identifier, the chat session including transmissions between a plurality of chat participants; identifying, by the computing device, the database records in the transmissions between the plurality of chat participants; sending, by the computing device, a request to an API to retrieve current values ​​of the subset of fields using the identifier of the database record; causing the computing device to display the transmissions between the plurality of chat participants and the subset of fields of the database record including the updated values ​​of the fields; The method of claim 1 further comprising:

4. The method of claim 1 , wherein activating the chat session includes detecting an activation request to open the chat session.

5. receiving, by the computing device, an input from at least one of a plurality of chat participants to activate the chat session; identifying, by the computing device, a user identifier of the at least one chat participant of the plurality of chat participants; retrieving, by the computing device, a permission level of the at least one chat participant; identifying, by the computing device, a portion of the database record that is authorized for viewing for the at least one chat participant based on the permission level, the portion of the database record including the subset of fields; The method of claim 1 further comprising:

6. The method of claim 1 , wherein the subset of fields is displayed as the user interface element in the chat session.

7. identifying, by the computing device, a type of the database record; identifying, by the computing device, an icon corresponding to the type of the database record; causing the computing device to display the icon with the subset of fields in the chat session; The method of claim 1 further comprising:

8. In response to determining updates to the values ​​of the fields of the subset of fields based on a change in state of the chat session, the method comprises: identifying, by the computing device, a change in the type of the database record based on the updated value; identifying, by the computing device, a new icon for the database record based on the change in the type of the database record; causing the computing device to display the new icon along with the subset of fields; 8. The method of claim 7, further comprising:

9. 10. The method of claim 1, further comprising deactivating the chat session by the computing device in response to receiving an input to close the chat session or timing out the chat session after a predetermined amount of time.

10. 1. A system comprising: Memory and a processor coupled to the memory; wherein the processor: displaying a user interface element within a chat session displayed by a first user interface for a first participant device and a second user interface for a second participant device, the user interface element including a subset of fields of a database record, a field of the subset of fields including a value; determining updates to the values ​​of the fields of the subset of fields based on changes in the state of the chat session; identifying a first permission level for the first participant device and a second permission level for the second participant device; causing the first user interface to display the updated value of the field and an edit selection element based on the first permission level; causing a third user interface for the first participant device to display editable fields of the subset of fields of the database record based on interaction with the edit selection element; removing display of other fields of the subset of fields of the database record from the chat session displayed by the second user interface based on the second permission level; configured to: system.

11. In response to determining updates to the values ​​of the fields of the subset of fields based on a change in the state of the chat session, the processor further: generating a visual indication of the values ​​of the fields of the subset of fields changing to the updated value of the field.

12. The change in the state of the chat session includes a change from a deactivated state of the chat session to an activated state of the chat session, and in response to detecting the activation of the chat session, the processor further: retrieving the chat session using a chat session identifier, the chat session including transmissions between a plurality of chat participants; identifying the database records in the transmissions between the plurality of chat participants; sending a request to an API to retrieve current values ​​of the subset of fields using the identifier of the database record; displaying the transmissions between the chat participants and the subset of fields of the database record including the updated values ​​of the fields; The system of claim 10 configured to:

13. The system of claim 10 , wherein activating the chat session includes detecting an activation request to open the chat session.

14. The processor further comprises: receiving an input from at least one of a plurality of chat participants to activate the chat session; identifying a user identifier of the at least one chat participant among the plurality of chat participants; retrieving a permission level of said at least one chat participant; identifying a portion of the database record authorized for viewing for the at least one chat participant based on the permission level, the portion of the database record including the subset of fields; The system of claim 10 configured to:

15. The system of claim 10 , wherein the subset of fields is displayed as the user interface element in the chat session.

16. The processor further comprises: identifying a type of said database record; identifying an icon corresponding to the type of the database record; displaying the icon with the subset of fields in the chat session; The system of claim 10 configured to:

17. In response to determining updates to the values ​​of the fields of the subset of fields based on a change in the state of the chat session, the processor further: identifying a change in the type of the database record based on the updated value; and identifying a new icon for the database record based on the change in the type of the database record; rendering the new icon with the subset of fields; The system of claim 16 configured to:

18. 11. The system of claim 10, wherein the processor is further configured to deactivate the chat session in response to receiving an input to close the chat session or timing out the chat session after a predetermined amount of time.

19. A non-transitory computer-readable medium storing instructions, the execution of which may be performed by one or more processors of a device, the one or more processors: displaying a user interface element within a chat session displayed by a first user interface for a first participant device and a second user interface for a second participant device, the user interface element including a subset of fields of a database record, a field of the subset of fields including a value; determining updates to the values ​​of the fields of the subset of fields based on changes in the state of the chat session; identifying a first permission level for the first participant device and a second permission level for the second participant device; causing the first user interface to display the updated value of the field and an edit selection element based on the first permission level; causing a third user interface for the first participant device to display editable fields of the subset of fields of the database record based on interaction with the edit selection element; removing display of other fields of the subset of fields of the database record from the chat session displayed by the second user interface based on the second permission level; performing an action including Non-transitory computer-readable medium.

20. In response to determining updates to the values ​​of the fields of the subset of fields based on changes in the state of the chat session, the one or more processors further:

20. The non-transitory computer-readable medium of claim 19, further comprising: generating a visual indication of the values ​​of the fields of the subset of fields changing to the updated value of the field.

21. The method of claim 20, wherein the change in the state of the chat session includes a change from a deactivated state of the chat session to an activated state of the chat session, and in response to detecting the activated state of the chat session, the one or more processors further: Retrieving the chat session using a chat session identifier, the chat session including transmissions between a plurality of chat participants; identifying the database records in the transmissions between the plurality of chat participants; sending a request to an API to retrieve current values ​​of the subset of fields using the identifier of the database record; displaying the transmissions between the chat participants and the subset of fields of the database record including the updated values ​​of the fields; 20. The non-transitory computer-readable medium of claim 19 configured to perform operations including:

22. 20. The non-transitory computer-readable medium of claim 19, wherein activating the chat session comprises detecting an activation request to open the chat session.

23. The one or more processors further: receiving an input from at least one of a plurality of chat participants to activate the chat session; identifying a user identifier of the at least one chat participant among the plurality of chat participants; retrieving a permission level of said at least one chat participant; identifying a portion of the database record authorized for viewing for the at least one chat participant based on the permission level, the portion of the database record including the subset of fields; 20. The non-transitory computer-readable medium of claim 19 configured to perform operations including:

Citation Information

Patent Citations

  • Online instantiable message repository processing apparatus and method

    JP2019021314A

  • Dynamic content placeholders for microblogging posts

    JP2019075092A

  • Chat messaging

    US20160218998A1

  • Systems and methods for supplementing real-time exchanges of instant messages with automatically updateable content

    US20160285799A1