US20190014068A1 - Digital collaboration process enablement tool - Google Patents
Digital collaboration process enablement tool Download PDFInfo
- Publication number
- US20190014068A1 US20190014068A1 US16/038,769 US201816038769A US2019014068A1 US 20190014068 A1 US20190014068 A1 US 20190014068A1 US 201816038769 A US201816038769 A US 201816038769A US 2019014068 A1 US2019014068 A1 US 2019014068A1
- Authority
- US
- United States
- Prior art keywords
- event
- entities
- collaboration
- responsive
- communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/214—Monitoring or handling of messages using selective forwarding
-
- H04L51/14—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1859—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast adapted to provide push services, e.g. data channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/401—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
- H04L65/4015—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
Definitions
- This disclosure relates to improved collaboration among teams potentially including geographically distributed entities.
- FIG. 1 shows an example of an environment in which the system may be employed.
- FIG. 2 illustrates, at a high level, some of the logic that the system may employ in facilitating information delivery and collaboration.
- FIG. 3 is an example of a system architecture on which the system may be implemented.
- FIG. 4 shows an example of the data model which the system may employ.
- FIG. 5 illustrates an example of the hardware that the system may utilize.
- FIGS. 6-10 illustrate examples of different interfaces that may be provided to a user of the system.
- the collaboration architecture and collaboration logic (“the system”) described below provide technical solutions for improved event subscription and notification, collaborative decision making, and decision capture into a knowledge base.
- the system increases awareness of events within a workflow or across an enterprise, increases the speed and assurance of data flows within a team or at the enterprise level, and allows users to access new data sources by targeting data delivery and preventing a flood of data.
- the system further supports collaboration via automation and intelligence assistance, facilitating capture and intelligent assistance for accurately creating document metadata.
- the system provides a combination of technical features to address complex collaboration between geographically distributed teams.
- the system implements follow and notify functionality, monitor and engage functionality, and capture functionality.
- the system may, for instance, tailor data flows and notifications of significant workflow events via a dynamically tuned subscription model.
- the system may also create a digital collaboration workspace supported by automation and machine learning functionality.
- the system may create documentation of collaboration with automatic recommendation of metadata tags to support search and cataloging of the documentation.
- Implementations of the system may vary widely. For instance, some implementations may include role-based event subscription that facilitates matching the correct individuals to the data streams relevant to their roles. The subscription may also flexibly change to help the individuals dynamically follow newly identified events of interest. Further, some implementations include a collaboration architecture that facilitates interaction among team members to analyze and respond to events. The collaboration architecture may include a persistent note feature that keeps relevant events and collaborative input on the events at the forefront of the information stream to the individuals. The collaboration architecture may also proactively suggest individuals with whom to collaborate for any given event. The system also supports intelligent tagging of events and knowledge capture to assist with future event handling.
- system operation is not limited to any particular field of endeavor, and may be implemented in any number of other business contexts.
- system may facilitate collaboration in a manufacturing setting, where different manufacturing processes may be taking place at geographically distributed locations; in a health care setting, where doctors, nurses, and administrative staff collaborate to provide health care; in a government agency, where agents, staff, and other support personnel collaborate to provide or execute government functions or services; or any other environment.
- the system 100 may interface with and to various sensors 120 , different communication pathways 130 , and one or more application and data servers 140 , which may collectively facilitate communication and collaboration between any number of users 110 .
- the users 110 may interface with the system 100 using user devices 116 , e.g., personal or laptop computers, tablet computers, smartphones, pagers, or other devices.
- the users 110 of the system 100 may serve a number of different roles 111 - 115 .
- the system 100 may facilitate collaboration between an operator 111 , a production foreman 112 , operations engineers 113 , accounting employees 114 and regulatory employees 115 (e.g., environmental health and safety employees 115 ).
- the users 110 may be geographically distributed, for example, where the operator 111 and production foreman 112 are located at a production location and the operations engineers 113 , accounting employees 114 , and regulatory employees 115 are located at the corporate office.
- a user 110 may have a user device 116 , which may be capable of communicating with the system 100 .
- the system 100 may facilitate collaboration between different users by allowing bidirectional communication between a user device 116 and the application and data servers 140 .
- the communication between the user device 116 and the application and data servers 140 may take place over one or more communication pathways 130 (e.g., e-mail, SMS messaging, instant messaging, telephone calls, etc.), which may be transmitted over a satellite network connection 131 , a cellular telephone network connection 132 , or a wireless network connection 133 .
- data sent over the communication pathways 130 may be routed, in part or in whole, over a network 135 , which may include the public internet and private networks on any scale.
- Users 110 interfacing with the system 100 may do so over different communication pathways 130 , and the system 100 may facilitate seamlessly interaction between users 110 interfacing over different communication pathways 130 .
- the environment 101 may also include any number of sensors 120 , assets 125 , and any other devices 126 that are capable of communication with the system 100 .
- the devices 126 may have network communication functionality, for example, and accordingly the system 100 may support interaction with any manner of devices considered to be part of the “Internet of Things” (IoT devices).
- IoT devices Internet of Things
- the sensors 120 may operate independently of, or in conjunction with, any of the assets 125 .
- the sensors 120 may include pressure sensors 120 that measure the pressure of an oil well, or laser sensors 120 which are capable of measuring the dimensions of products coming off the production line.
- the sensors 120 may be deployed across a given location, for example, around a manufacturing floor or around an oil well operation.
- the sensors 120 may be enabled to communicate information to the system 100 directly over a network connection 131 - 133 .
- the sensors 120 may be able to communicate with a device 116 of the user 110 , for example, using a Bluetooth network connection or a near field communication (NFC) connection, which may, in turn, be manually or automatically communicated to the system 100 over a network connection 131 - 133 .
- the devices 126 may similarly communicate with the system 100 , and may provide data feeds to the system 100 , which may be updated on demand, at certain intervals, or in a continuous fashion.
- the system 100 may center collaboration around one or more types of events, which may be matched to specific user roles 111 - 115 .
- Events may be certain activities or actions that occur with respect to a sensor 120 , an asset 125 , a user 110 , and any other device 126 , taking place at any level of operation, including the enterprise as a whole.
- An event may be provided to the system 100 by various means, for example a user 110 may create the event or the sensors 120 may be responsible for creating an event.
- a well operator 111 may notice a change in system operation (e.g., an increase in operating pressure), and may submit this event to the system 100 .
- any user 110 , sensor 120 , asset 125 or other device 126 may generate an event or provide data to the system 100 , which may in turn generate an event.
- the system 100 may include a sensor 120 which measures the operating pressure of the well, which may automatically generate an event when a critical operating pressure is reached.
- the system 100 may process information received from the sensors 120 or other devices 126 to generate an event.
- the sensors 120 may provide the system 100 with the precise dimensions of parts coming off the manufacturing line, which the system 100 may use to determine (e.g., by applying six sigma methodologies) if the production process is functioning properly or abnormally and may generate an event accordingly.
- the events may be of any level of importance to any particular role, and as described in further detail below, the system 100 may provide users 110 with awareness of those events that are appropriate for the role of the user 110 .
- an operations engineer 113 may not be interested or involved in the same events that an accounting employee 114 may need to follow. That is, the system 100 notifies users of events that are relevant to the roles filled by the users.
- the system 100 may also provide support for multiple locations (e.g., different oil wells) at different levels of geographic granularity (e.g., from a single well to sets of wells, to an entire field of wells, or to a nationwide well operation), and may allow users 110 of the system to collaborate on events that are geographically distributed across the multiple locations.
- the system 100 may allow back office users 110 , to communicate and collaborate with users 110 who are present, on-site, at the various locations.
- the system 100 may implement different elements of collaborative functionality, which, at a high level, may include follow and notify functionality, monitor and engage functionality, and capture functionality.
- follow and notify functionality may include follow and notify functionality, monitor and engage functionality, and capture functionality.
- capture functionality may include follow and notify functionality, monitor and engage functionality, and capture functionality.
- FIG. 2 illustrates some of the logic that the system 100 may employ in facilitating information delivery and collaboration between different users of the system.
- the system 100 may implement an adaptable subscription model in which a user 110 of the system 100 may be able to subscribe to receive, or select to receive, notifications from the system 100 based on various parameters.
- the system 100 may allow a user 110 to subscribe to receive notifications regarding different events or event types that may be of interest to the user.
- the system 100 may determine the events or event types by, for instance, analyzing a model of the oil well process and identifying the various event types that may occur over the lifetime of the wells operation.
- the system 100 may also accept manual input of events and event types that characterize any particular device.
- the system 100 may allow a user 110 to subscribe to notifications based on a data object and events corresponding to that data object.
- the system 100 may allow a user 110 to follow events or event types associated with a specifically identified well.
- the user subscribes to events linked to a specific data object, rather than to all such events.
- the data object to which the event relates to is not limited to a single object (whether an asset, device, sensor, logical or physical element, or other object), e.g., a single well, but may be a group of objects, such as all wells in a particular region or sharing a particular characteristic (e.g., size, output capacity, type, manufacturer, date of construction, or other characteristic).
- the group of objects may extend as narrowly as a single device or as widely as an enterprise as a whole, e.g., the entire field of wells.
- the user may target the type of information that the system 100 may deliver to the user 110 , and focus the information for relevance to specific objects, and thereby avoid being overwhelmed by all of the possible data and notifications provided by the system 100 .
- the system 100 may provide the user device 116 with a list of events supported by the system 100 , for example, when the user 110 logs into, or connects to, the system 100 .
- the user device 116 may present the user 110 with this list, and the user 110 may be able to select those events which the user 110 would like to follow.
- the system 100 and/or user device 116 may allow the user to select events at different levels of granularity.
- a user 110 may be able select events to follow based on a class or type of event (e.g., all production cessation events), based on the asset 125 involved in the event (e.g., all drilling apparatus events), based on a set of devices 126 (e.g., all events relating to devices 126 in a small geographic region of wells), or based on the system that is implicated (e.g., all well operation events).
- the user 110 is not limited to selecting events at login, and the system 100 may allow the user 110 to change their subscription profile at their convenience and may integrate the option alongside other functionality (e.g., when suggesting relevant documentation).
- the system 100 and/or user device 116 may also allow the user 110 to filter the list based on various system or event attributes, for example, filtering the list of events based on well attributes (e.g., size, production rate, stage of production).
- the list of events that are provided to the user device 116 may also be filtered by the system 100 based on attributes of the user 110 .
- the system may associate, or map, an event to one or more user roles 111 - 115 , and the system 100 may limit the events that are presented to a user 110 for selection based on the role of the user 110 .
- the system 100 may associate certain critical well alert events with the production foreman role 112 and the operations engineer 113 role.
- the system 100 may determine the role of the user 110 , for example, by accessing personnel records, and may determine which events or event types are associated with the role of the user 110 .
- the system 100 may, for example, be integrated with a human resources system (e.g., an SAP system), which may utilize a human resources database 364 , or file servers (e.g., SharePoint active directories) of the enterprise, where personnel records may be stored.
- Some users 110 of the system 100 may be associated with one or more roles 111 - 115 and the system 100 may provide events corresponding to any of these roles.
- the system 100 and/or user device 116 may allow the user to filter the list of events based on one of the user's roles.
- the events supported by the system 100 may themselves be dynamic, as events may be added, removed, modified, or resolved.
- the system 100 may provide the user 110 with the option to view those events which have recently occurred or changed, which may allow the user 110 to adapt to changing workflows.
- the system 100 may similarly accommodate changes in the role of a user 110 .
- the system 100 may also suggest, or automatically enroll the user 110 in, events that stem from events that the user 110 is already subscribed to.
- the system 100 may, for example, look at a model of the oil well process and identify relationships (e.g., based on a commonality of user role or expertise) between different event types, which the system 100 may use to determine which downstream events to suggest to the user 110 .
- the user 110 may be sent a notification for an event which they have not yet selected to follow (e.g., where a different user includes them as a recipient of a communication or forwards them a notification).
- the user may be interested in that communication or notification, and may choose to follow that event more closely.
- the system 100 may also adapt the user's subscription to receive notifications related to that event, and may suggest similar events that the user may be interested in following.
- the system 100 may be able to predict or suggest event types that the user 110 may want to consider, for example, based on event types that the user 110 is currently following or has followed in the past or based on the expertise of the user 110 , which may be determined from the personnel records of the user 110 .
- the system 100 may receive or generate various types of events. A conversation or dialogue may develop around these events, and the system 100 may generate notifications to different users 110 of the system 100 .
- the system 100 may receive a SCADA alert from the sensors 120 , which the system 100 may interpret as a critical event.
- the system 100 may send a notification to those users who have chosen to follow that event and/or to those users 110 who are associated with that type of event, for example, an operator 111 .
- the notifications presented to the user 110 may be actionable in nature (e.g., voting on an issue or directing a user 110 to view relevant documentation), allowing the user to take certain actions or steps in response to the event notification.
- the operator 111 may be able to take certain actions to resolve the problem and may do so without additional help or input from other users 110 .
- the operator 111 may communicate resolution of the problem to the system 100 , which may generate a notification indicating that the problem has been resolved.
- the operator 111 may alternatively decide that an inspection of the well is necessary and may temporarily stop production.
- the operator 111 may communicate these decisions to the system 100 , which may generate additional events and notifications to users 110 , for example, notifications to users 110 in the back office, who may be associated with those events (e.g., regulatory 115 or operations engineers 113 ).
- the generated events may also trigger a response from different assets 125 , sensors 120 , or other devices 126 , which may be configured to automatically provide data to the system 100 .
- the system 100 may process this information and generate a notification or relay this information in a notification to the appropriate users 110 .
- Users 110 in the back office may respond with certain inquiries directed towards the operator 111 , who may receive a notification from the system 100 indicating that his attention is required.
- the operator 111 may resume operation of the well.
- the operator 111 may communicate that the well is back online, or a sensor 120 may indicate that the well has come back online, and the system 100 may generate a notification to that effect.
- the system 100 may receive communications and transmit notifications over different communication pathways 130 (e.g., to and from different users 110 , assets 125 , sensors 120 , or other devices 126 ).
- This multi-channel cross interfacing may increase awareness of events within a workflow or across an enterprise, and increases the speed and assurance of data flows within a team or, more broadly, at the enterprise level.
- the system 100 may also allow a user to identify a preferred communication pathway 130 , through which the user may receive notifications from the system 100 .
- a user 110 who interfaces with the system 100 using a cell phone 116 may select to receive SMS notifications, whereas a user 110 who interfaces with the system 100 using a laptop 116 may prefer to receive an instant message.
- the system 100 may also implement a communication pathway 130 hierarchy in which a user may specify a preferred communication pathway 130 , a secondary communication pathway 130 and so on.
- the system 100 may also store the last known communication pathway 130 utilized by the user 110 in interfacing with the system 100 , and may use this communication pathway 130 until the user 110 makes use of a different communication pathway 130 .
- the system 100 may also integrate with other enterprise systems, allowing for seamless interfacing with the user 110 .
- the system 100 may be able to communicate directly with a productivity application of a user (e.g., a web browser, word processing or spread sheet application), which may provide a notification within the productivity application itself (e.g., by delivering the event to a notification plug-in running in the application environment).
- the user may also be able to leverage the functionality of the productivity application in responding to the notification.
- an operations engineer 113 may be able to use a productivity application to remotely control a asset 125 .
- the system 100 may be able to process information from various sensors 120 to determine when an adjustment may be warranted and may calculate a suggested adjustment to the operating profile of the asset 125 .
- the system may provide the operations engineer 113 with a notification suggesting adjustment of the asset 125 , which the operations engineer 113 may receive directly within the productivity application.
- the operations engineer may be able to accept or modify the suggestion and adjust the operation of the asset 125
- the system 100 may also allow users 110 to monitor the different events that they are following by providing a digital collaboration workspace.
- the digital workspace may provide a user 110 with a way to efficiently access and manage the various events with which they may be involved.
- An operations engineer 113 may be responsible for providing service to several different well operations, which may experience different events that may be at different stages of resolution.
- the user 110 may have interfaced with the system using different user devices 116 and different communication channels 130 .
- the digital collaboration workspace may serve to aggregate these disparate communications and present the user 110 with an organized and curated workspace.
- the digital workspace may present the user 110 with a newsfeed, which may identify any new events or notifications that may need the user's attention and additional developments or discussions in events that the user is interested in.
- the digital collaboration workspace may also serve to aggregate additional information regarding the different events, so that information needed to respond may be available in a single location.
- the digital collaboration workspace may provide the user with relevant data feeds, for example, machine data (SCADA), or device data feeds, or access to relevant documents (e.g., from the system knowledge base).
- relevant data feeds for example, machine data (SCADA), or device data feeds, or access to relevant documents (e.g., from the system knowledge base).
- the digital collaboration workspace may also provide the user 110 with a comprehensive view of a given operation (e.g., a well profile view).
- the user 110 may have interfaced with the systems at different stages of an event, and the digital collaboration workspace may present a complete view of the situation (e.g., from the first alert to its ultimate resolution).
- a user may choose to receive notifications for certain critical events, while foregoing receipt of notifications with respect to other less critical events.
- the latter set of notifications may, nevertheless, provide additional context for the problem being addressed, which may help a user to address more complex issues.
- the operations engineer 113 may only receive an event notification when the well operator 111 stops production on the well, and may not have received a notification regarding the original SCADA alert, which may have triggered production cessation. In such cases, the operations engineer 113 may turn to the digital collaboration workspace to obtain this additional information, which may provide a deeper understanding of the problem and provide insights as to its solution.
- the workspace more broadly, may present a complete view of the well's operation, including active events and discussions, live data feeds, and relevant documentation.
- a user 110 may also manipulate the presentation of information in the digital collaboration workspace, allowing users to filter the information to present the information that is immediately necessary.
- a user 110 may be following events related to several data wells, but may only be concerned with data relating to a couple of the wells.
- the user 110 may be able to filter the content that is presented in the digital workspace (e.g., through a series of controls and/or drop down menus).
- the interface may also be customized based on a user's role in the process. For example, an operations engineer 113 may want access to SCADA data feeds while an accounting employee 114 may not need such data.
- the digital collaboration workspace may allow for cross-platform support and may enable the user to interface with the digital collaboration workspace using any user device 116 , where the workspace may be optimized for the device being used.
- the digital collaboration workspace may also allow for heightened awareness of certain events by providing a persistent note feature that keeps relevant events and collaborative input on the events at the forefront of the information stream to the individuals.
- the system 100 or an individual user may mark events and their related notifications as having particularly high importance, which the digital collaboration workspace may give persistent status.
- the digital collaboration workspace may place a persistent note at the top of a user's newsfeed.
- the persistent note may remain fixed at the top of the newsfeed until certain conditions or interactions are met. For example, an event that stops production on a well may be marked as critical, and related notifications may be placed at the top of the user's news feed until the well comes back online (e.g., when a operator 111 communicates this to the system 100 or when a sensor 120 provides a similar indication).
- the system 100 may automatically mark certain events as persistent notes (e.g., critical SCADA events), which can later be deprecated to non-persistent status.
- the system 100 may also choose to include (i.e., promote to high importance) related elements with the persistent note, for example, conversations and discussions that may develop around the event.
- the system 100 may include, related events, whether upstream or downstream of the original event marked for persistent notification.
- the additional elements may be included within the same persistent note and/or spawn additional persistent notes.
- the persistent notifications may be specific to the digital workspace of the user or global to all users of the system 100 , and the ability to mark events for treatment as a persistent notification may be limited to certain users 110 or certain user roles 111 - 115 (e.g., production foreman 112 ).
- the digital collaboration workspace may allow users 110 to engage and collaborate with one another (as described in greater detail below) the persistent notes may also be collaborative in nature. For example, once a note has been promoted to persistent status it may be placed atop the newsfeed of each user 110 that is following and/or who is associated with the event. Subsequent conversations and discussions between team members may thus appear on the newsfeed of all team members.
- the digital collaboration workspace may also help to coordinate efforts between different users 110 of the system 100 and may allow for interaction amongst different members of a team.
- the workspace may help in assembling a team to address an event, which may allow for a faster response and may also allow for adaptation to dynamically changing events and situations.
- the system 100 may, for example, suggest users 110 that are able to help address a particular event, for example, by determining the different user roles 111 - 115 that are associated with an event and identifying what roles 111 - 115 are absent in the assembled team (e.g., by consulting records in the human resources database 364 ).
- the system 100 may look at various factors, including, for example and without limitation, the number of similar events that the user 110 has previously dealt with, the technical expertise of the user 110 , the number of active events that the user 110 is engaged in, and the geographical proximity of the user 110 to other members of the team or to the location of the event or operation.
- the digital collaboration workspace may further provide communication functionality, which may allow users 110 of the system to directly engage and communicate with one another.
- the digital collaboration workspace may assist users 110 in reaching out to suggested team members, for example, by providing contact information for the recommended user 110 .
- the system 100 may also facilitate the act of collaboration itself, for example, by providing an instant messaging service, teleconferencing capabilities, and video conferencing features, which may be integrated within the digital collaboration workspace.
- the workspace may also provide messaging capabilities between the newsfeeds of different users.
- the system 100 may support simultaneous communication over different communication pathways 130 , and may allow for cross-pathway communication.
- the system 100 may allow users 110 to conference with one another where some users 110 may participate using a telephone and other users 110 may video conference using a smartphone.
- the method of collaboration may depend on user 110 preferences or capabilities of the user device 116 .
- a user of a mobile device 116 having 4G/LTE cellular access may have video conferencing enabled whereas a user 110 having 2G cellular access may communicate via SMS messaging.
- the system 100 may also enhance the collaborative experience by automation and intelligence assistance, for example, by providing users 110 with relevant documentation (e.g., from a document repository or previously captured knowledgebase) or relevant data feeds (e.g., live data from the sensors 120 , assets 125 , and other devices 126 ).
- relevant documentation e.g., from a document repository or previously captured knowledgebase
- relevant data feeds e.g., live data from the sensors 120 , assets 125 , and other devices 126 .
- the digital collaboration workspace may leverage information contained within a captured knowledgebase, which may include, for example and without limitation, information and insights gained through the resolution of past events and problems.
- the system 100 may automatically process conversations and discussions to capture this information, for example, by using natural language processing techniques.
- a team of users 110 may successfully resolve an event (e.g., a SCADA alert), after which the system 100 may analyze the dialogue between the team members to capture how the issue was solved, which may provide forward guidance to users 110 trying to resolve similar events.
- an event e.g., a SCADA alert
- the knowledge capture process may also take place when the results achieved to that point are good enough though not complete (e.g., where a temporary solution has been implemented) or when a sufficient amount of input has been received (e.g., after each team member has contributed their input).
- the knowledge capture process may also be triggered by a user 110 of the system 100 , who may assist the capture process by identifying or providing information of relevance.
- the knowledge capture process may involve processing the conversation and discussions surrounding an event and identifying and tagging relevant metadata contained therein, which may be stored as an entry in the knowledge base. For example, the knowledge capture process may identify and record what event(s) were addressed, what operation location it was attributed to, who the team members are, and in some situations when the issue will be revisited. As another example, the system 100 may identify the data feeds and documentation, including existing knowledge base resources that were used to address the issue being processed. The knowledge capture process may also look at the social interactions that took place in responding to an issue, for example, capturing when different users 110 were added to the team and/or those users 110 that were most active in the conversation.
- the information stored in the knowledgebase may automatically be presented to the user 100 , for example, based on a commonality of events or issues or when the same event is revisited down the line.
- the system 100 may also allow users 110 to search the knowledgebase (e.g., based on the tagged metadata).
- FIG. 2 One implementation of the system 100 , using the features just described, is illustrated in FIG. 2 . Additional reference may be made with reference to FIGS. 6-10 , which illustrate example user interfaces that may be presented to the user 110 .
- the system 100 may recognize that the user has logged in to or has connected with the system ( 201 ). The system 100 may then determine the user's role and identify those events for which the user may be a match ( 203 ). The system 100 may provide this list of matching events to the user 110 , which may be displayed on the device of the user 116 ( 205 ). The system 100 accepts event selections from the user, and subscribes the user to those events ( 207 ).
- the system 100 may update the subscription of the user based on the user selection ( 209 ), e.g., to add, remove, or change the set of events to which the user is subscribed.
- the system 100 may provide additional selection criteria to facilitate specific selection of and subscription to events. For instance, the system 100 may allow the user to select events from specific objects, e.g., wells or other machines that exceed a pre-determined monthly output.
- the selection criteria may act as filters (e.g., corresponding to attributes of the device) that provide fine grained control over selection of the devices that generate events to which the user subscribes.
- the subscriptions may be to ⁇ event, object> pairs, so that the user receives those events that apply to specific objects, and not all objects. For instance, a user may subscribe to well malfunction events only for wells in a specific sub-region of a field of wells.
- the system 100 may generate a notification to send to one or more users 110 or to other devices in the system (e.g., sensors 120 , assets 125 , or other device 126 ) ( 213 ).
- the system 100 may determine the appropriate communication pathway 130 to send the notifications along (e.g., based on the type of notification being sent and the communication pathway preferences of the user 110 ) ( 215 ).
- the user may be provided with notifications via the user's enterprise messaging client (e.g., Microsoft Lync) ( 601 ) and/or via e-mail ( 602 ).
- the user may also receive notification through an application ( 603 ) running on their user device 116 (e.g, the delivery of notifications to an iPhone application through the push framework) or in updating the users 110 newsfeed ( 604 ) in the digital collaboration workspace ( 225 a ).
- the notification may be displayed in the mobile application itself and/or within a notification dashboard provided by the mobile device.
- the system 100 may also determine if the event or notification has been assigned persistent status ( 217 ), which may affect its presentation in the digital collaboration workspace. As shown in FIG. 7 , for example, the notifications having persistent status (“Collaborative Stickies”) may be placed at the top of the newsfeed ( 701 ), and where more than one notification is given persistent status the system 100 may order them based on various criteria, for example, based on the last response received ( 702 ) or event criticality.
- the users 110 or devices e.g., assets 125 , sensors 120 , or other devices 126 ) may provide responsive communications to the system 110 ( 219 ), which the system may process to generate additional events and notifications ( 211 , 213 ).
- the system 100 may process the event or notification in updating the digital collaboration workspace ( 223 ), which may be influenced by the role of the user and the communication pathway 130 through which the user 110 is interfacing with the system ( 221 ).
- the system 100 may add, remove, or update documents (e.g., knowledge base references) and data feeds that are presented through the digital collaboration workspace, for example, based on a need identified from a generated event ( 223 ).
- the updating process may also involve updating the newsfeed of the user ( 225 a ), which may include positioning and updating persistent notes, updating the well profile that may be associated with the event or notification ( 225 b ), and updating data feeds integrated into the workspace ( 223 c ).
- the user 110 may further manipulate the digital workspace by filtering the content that is displayed (e.g., focus on a particular event or well operation) ( 227 ).
- the user 110 may also choose to address an event or notification, and the system 100 , through the digital collaboration workspace, may allow the user to engage with other users 110 . This may involve suggesting or recommending additional users 110 with whom the user 110 may wish to interact, who may be able to assist the user 110 with the issue or event being addressed ( 231 a ). As illustrated in FIG. 9 , for example, the user may be able to select a “Collaborate” option ( 901 ), which may present the user with a list of suggested collaborators, from which the user 110 may be able to select one or more of the users to collaborate with ( 902 ).
- a “Collaborate” option 901
- the system 100 may further assist the user in reaching out to the recommended user 110 , for example, by providing the user 110 with contact information of the recommended user 110 ( 231 b ).
- the system 100 may also allow the user 110 to directly communicate with other users 110 (e.g., the recommended user 110 or other team members) ( 231 b ).
- the system 100 may allow the user 110 to select a communication pathway over which the collaboration is to take place ( 903 ).
- the system 100 may also limit the selection of communication pathway based on the capabilities of the various user devices 116 ( 903 ).
- the system 100 may facilitate live, or real-time, communication between users 110 over different communication pathways 130 , for example, using videoconferencing or teleconferencing methodologies ( 233 ).
- the system 100 may also facilitate relatively passive communication methods, for example, allowing users 110 to message each other directly through the digital collaboration workspace (e.g., a conversation or discussion occurring in a persistent note of a user's newsfeed) ( 233 ).
- the system 100 may also enrich the conversation by providing users 110 with access to relevant documentation (e.g., from a captured knowledgebase) or pertinent data feeds (e.g., updates from sensors 120 , assets 125 , or other devices 126 ).
- the system 100 may begin a knowledge capture process 235 .
- the system 100 stores the collaboration, and may generate additional documentation (e.g., metadata tags that characterize the collaboration) representing substantive information and insights regarding the event ( 235 a ).
- additional documentation e.g., metadata tags that characterize the collaboration
- the system 100 may capture event parameters and/or documentation and data feeds that were used, as well as social aspects of the collaboration surrounding the event ( 235 b ), including any collaboration components that were exchanged, such as messages, voice communications, images, drawings, test files, video, documents, or any other collaboration component.
- the user 110 may be presented with the ability to trigger the knowledge capture process ( 1001 ) and may be prompted to assist the system 100 in the process ( 1002 ).
- the information gathered in the knowledge capture process 235 may utilized by the system 100 in different ways, for example, in providing a dynamically tuned subscription engine ( 205 ) or when integrating documentation and data feeds into the digital collaboration workspace ( 223 ).
- the system 100 may suggest additional events that the user may be interested in following. As illustrated in FIG. 8 , the system 100 may allow the user to follow an event more closely ( 801 , “Follow Closer”) and may suggest events ( 802 ) based on a similarity of location (“[Barnett 3654] Gas lift” and “[Barnett 3654] Propellent stimulation”) or a commonality of event type (“[Bellatrix 2605] Fluid Pumping” and “[Bellatrix 2605] Water injection”).
- FIG. 3 illustrates an example system architecture 300 which may implement all or parts of the system 100 described above.
- the system architecture 300 broadly provides for two different system layers, a presentation layer 320 , which consists of some of the elements that may be presented to the user 110 , and a business layer 340 , which consists of the back-end system components that may support the presentation layer.
- the system architecture 300 may be configured in many different ways.
- the system architecture 300 may also utilize various databases, including a subscription and notification database 363 , a content database 361 , a configuration database 362 , and a human resources database 364 .
- the content database 361 and configuration database 362 may be Microsoft SharePoint databases 360
- the databases 361 - 364 may all be implemented using a relational database architecture (e.g., SQL databases).
- the system architecture 300 may provide the user 110 with a digital collaboration workspace 321 , which may provide a user profile view 321 a and a well operation view 321 b .
- the system architecture 300 may also integrate with various productivity applications 322 , also described above, which may include a well operation application 322 a , a spreadsheet application 322 b , and a word processing application 322 c .
- the system architecture 300 may also feature various notification frameworks 323 that may be used to present the user 110 with notifications over one or more communication pathways 130 .
- the system architecture 300 may, for example and without limitation, feature an e-mail notification framework 323 a , an enterprise messaging framework 323 b , and a mobile device notification framework 323 c.
- the business layer 340 may provide support for the presentation layer 320 , and may utilize one or more web servers 350 , 351 , for example, an Apache web server 350 and a Microsoft Internet Information Server (IIS) server 351 .
- the different components of the presentation layer 320 may exchange data and information with components of the business layer 340 .
- the business layer 340 may provide data and information to the presentation layer 320 upon request, for example, by using the HTTP protocol.
- the IIS web server 351 may provide for web services that conform to defined architectural constraints (e.g., REST Services that are part of the Windows Communication Foundation (WCF) web programming model).
- requests from the digital collaboration workspace 321 may include requests for data relating to the user profile view 321 a (e.g., information regarding the user's newsfeed).
- the presentation layer 320 in placing the requests, may provide the business layer 340 with various parameters.
- the presentation layer 320 may selectively request data and information for operation views 321 b (e.g., where the user 110 has filtered the digital collaboration workspace 321 ).
- the business layer 340 may also be configured to push data and information to the presentation layer 320 .
- the business layer 340 may, for example, send notifications (e.g., automatically upon the occurrence of an event) to the user using the notification frameworks 340 .
- the business layer 340 may similarly provide notifications or data to the productivity applications 322 (e.g., a suggested operations adjustment for use with the well operation application 322 a ).
- the business layer 340 may utilize certain additional parameters, for example, those stored in configuration database 361 , content database 362 , subscription and notification databases 363 , and human resources databases 364 .
- the human resources database 364 may allow the business layer to determine the user's role 111 - 115 or technical expertise, which may influence the data or information that is presented to the user in the digital collaboration workspace 321 .
- the subscription and notification database 363 similarly, may allow the business layer 340 to determine those events that the user has chosen to follow and the communication pathway preferences that the user may have selected.
- the business layer 340 may support various types of functionality at the presentation layer 320 by providing certain core services such as, for example, a search service 341 , a metadata service 342 , and a user profile service 343 .
- the business layer 340 may additionally make use of feed services 347 , subscription services 348 , and notification services 349 .
- the business layer 340 may also provide an event generator 346 component, which may operate on the Apache web server 350 .
- the digital collaboration workspace 321 may use a server-side object model (SSOM) 344 to interface (e.g., retrieve, update, and manage) with the SharePoint databases 360 and the feed service 347 may draw upon a client side object model (CSOM) 345 , which may similarly be used to interface with the SharePoint databases 360 .
- SSOM server-side object model
- CSOM client side object model
- the search service 340 may allow the presentation layer 320 to implement search functionality, for example, allowing a user 110 interfacing with the digital collaboration workspace 321 to search for different well events or through the captured knowledge base.
- the user profile service 343 may provide support for the user profile view 321 a of the digital collaboration workspace 321 .
- the metadata service 342 may support various aspects of the knowledge capture process, which may involve scanning the conversation and dialogue surrounding an event and identifying relevant information and social interactions contained therein (e.g., using natural language processing techniques).
- the presentation layer 320 may also interact with the feed service 347 , for example, to support the newsfeeds provided in the user profile view 321 a or the well operation view 321 b .
- the feed service 347 may draw upon and provide input to the event feed generator 346 .
- the feed service 347 may receive as an input an indication that an event has been generated by the system (e.g., based on a communication received from an operator 111 or data received from sensors 120 or other devices 126 ).
- the event feed generator 346 may itself be driven by input received from the subscription service 348 , which may interface with the subscription and notification database 363 .
- the subscription service 348 may determine which events to provide in the users newsfeed (e.g., based on the users role or filter criteria) and how those events may be prioritized (e.g., based on a notifications persistent status).
- the notification services 349 provided by the business layer 340 may interface with notification servers 352 - 354 , which may correspond to the various notification frameworks 323 .
- the business layer 340 may include an e-mail messaging server 353 , an enterprise messaging server 352 , and a mobile device push notification server 354 .
- the notification services 349 may communicate with the e-mail messaging server 353 (e.g., Exchange mail server) using, for example, the SMTP e-mail protocol.
- the notification services 349 similarly, may communicate with the enterprise messaging server 352 (e.g. Microsoft Lync Server) using the Unified Communications Managed API (UCMA) which, in turn, may utilize SIP and TCP protocols.
- UCMA Unified Communications Managed API
- the notification services 349 may also communicate with the mobile device push notification server 354 (e.g., AppleTM push notification server) using, for example, the TCP protocol.
- the notification services 349 may provide support for delivering notifications over different communication pathways and may further provide support for delivery of communications and notifications sent between different communication pathways (e.g., cross-pathway communication).
- FIG. 4 illustrates one example of a data model 400 that the system 100 may implement as part of the subscription and notification database 363 described above.
- the data model 400 may capture the interaction and interrelationships between users and the events that they may be subscribed to, and may contain data tables relating to users 110 , events, and well operations.
- the user data table may be associated with a role data table, which may capture the association between a user 110 and a user role 111 - 115 .
- the user data table may also be associated with a user subscription data table, which may capture the different events that the user 110 is following.
- the data model 400 may define the relationships between different user roles 111 - 115 and different events, which the system 100 may use to suggest events for a user to follow.
- the data model 400 may also capture information regarding the different well operations and may contain data tables storing different well attributes.
- FIG. 5 shows an example implementation 500 of the system 100 and the functionality described above and illustrated in the Figures.
- the implementation 500 may include input/output interfaces 501 , a display 503 , one or more communication interfaces 505 , collaboration circuitry 511 and a database communication interface 531 .
- the implementation 500 may include communication interfaces 505 , which may include a satellite network communication interface 505 a , a cellular telephone network communication interface 505 b , or a wireless network communication interface 505 c .
- the communication interfaces 505 may also include wired communication interfaces, such as network (e.g., Ethernet) interfaces.
- the communication interfaces 505 may transmit and receive data from any devices in the field, and may thereby recognize events that have occurred, or receive data from the devices that the system interprets to mean that one or more events have occurred.
- the implementation 500 may also include a user interface 507 , which may utilize the display 503 , and input/output interfaces 501 may provide a graphical user interface, touch sensitive display, voice or facial recognition inputs, buttons, switches, speakers and other user interface elements.
- Additional examples of the input/output interfaces 501 include microphones, video and still image cameras, temperature sensors, vibration sensors, rotation and orientation sensors, headset and microphone input/output jacks, Universal Serial Bus (USB), Serial Advanced Technology Attachment (SATA), and Peripheral Component Interconnect express (PCIe) interfaces and connectors, memory card slots, radiation sensors (e.g., IR or RF sensors), and other types of inputs.
- USB Universal Serial Bus
- SATA Serial Advanced Technology Attachment
- PCIe Peripheral Component Interconnect express
- the input/output interfaces 501 may further include Universal Serial Bus (USB) interfaces, audio outputs, magnetic or optical media interfaces (e.g., a CDROM or DVD drive), network (e.g., Ethernet or cable (e.g., DOCSIS) interfaces), or other types of serial, parallel, or network data interfaces.
- USB Universal Serial Bus
- audio outputs e.g., audio outputs
- magnetic or optical media interfaces e.g., a CDROM or DVD drive
- network e.g., Ethernet or cable (e.g., DOCSIS) interfaces
- Ethernet or cable e.g., DOCSIS
- the collaboration circuitry 511 may further include a processor 513 and memory 521 , which may contain processing instructions 523 and data 525 , including application data 526 and local content 527 .
- the processing instructions 523 may be executed by the processor 513 to perform some or all of the system 100 functionality described above.
- the collaboration circuitry 511 may be in communication with the input/output interfaces 501 , display 503 , communication interfaces 505 , user interface 507 , and database communication interface 531 .
- the database communication interface 531 may allow the collaboration circuitry 511 to interface with the SharePoint databases 360 , subscription and notification database 363 , and human resources database 364 .
- circuitry that includes an instruction processor, such as a Central Processing Unit (CPU), microcontroller, or a microprocessor; an Application Specific Integrated Circuit (ASIC), Programmable Logic Device (PLD), or Field Programmable Gate Array (FPGA); or circuitry that includes discrete logic or other circuit components, including analog circuit components, digital circuit components or both; or any combination thereof.
- the circuitry may include discrete interconnected hardware components and/or may be combined on a single integrated circuit die, distributed among multiple integrated circuit dies, or implemented in a Multiple Chip Module (MCM) of multiple integrated circuit dies in a common package, as examples.
- MCM Multiple Chip Module
- the circuitry may further include or access instructions for execution by the circuitry.
- the instructions may be stored in a tangible storage medium that is other than a transitory signal, such as a flash memory, a Random Access Memory (RAM), a Read Only Memory (ROM), an Erasable Programmable Read Only Memory (EPROM); or on a magnetic or optical disc, such as a Compact Disc Read Only Memory (CDROM), Hard Disk Drive (HDD), or other magnetic or optical disk; or in or on another machine-readable medium.
- a product such as a computer program product, may include a storage medium and instructions stored in or on the medium, and the instructions when executed by the circuitry in a device may cause the device to implement any of the processing described above or illustrated in the drawings.
- the implementations may be distributed as circuitry among multiple system components, such as among multiple processors and memories, optionally including multiple distributed processing systems.
- Parameters, databases, and other data structures may be separately stored and managed, may be incorporated into a single memory or database, may be logically and physically organized in many different ways, and may be implemented in many different ways, including as data structures such as linked lists, hash tables, arrays, records, objects, or implicit storage mechanisms.
- Programs may be parts (e.g., subroutines) of a single program, separate programs, distributed across several memories and processors, or implemented in many different ways, such as in a library, such as a shared library (e.g., a Dynamic Link Library (DLL)).
- the DLL may store instructions that perform any of the processing described above or illustrated in the drawings, when executed by the circuitry.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
- The present patent document claims the benefit of priority to India provisional Patent Application No. 4396/CHE/2014, filed in the Indian Patent Office on Sep. 8, 2014, and titled “Digital Collaboration Process Enablement Tool,” and to India non-provisional Patent Application No. 4396/CHE/2014, filed in the Indian Patent Office on Aug. 25, 2015, and titled “Digital Collaboration Process Enablement Tool,” the contents of each of which are incorporated herein by reference in their entirety.
- This disclosure relates to improved collaboration among teams potentially including geographically distributed entities.
- Rapid advances in communication technologies have led to worldwide distribution of high speed communication networks. These networks support collaboration among geographically distributed entities, including individual sensors, individual devices, complex systems, and human actors. However, the workflows that these entities execute may be of very significant complexity, and successful execution often requires accurate and timely status updates and responsive actions. Accordingly, improvements in the digital collaboration architecture between the distributed entities will help meet the increasing technical challenges of geographically distributed collaboration.
-
FIG. 1 shows an example of an environment in which the system may be employed. -
FIG. 2 illustrates, at a high level, some of the logic that the system may employ in facilitating information delivery and collaboration. -
FIG. 3 is an example of a system architecture on which the system may be implemented. -
FIG. 4 shows an example of the data model which the system may employ. -
FIG. 5 illustrates an example of the hardware that the system may utilize. -
FIGS. 6-10 illustrate examples of different interfaces that may be provided to a user of the system. - The collaboration architecture and collaboration logic (“the system”) described below provide technical solutions for improved event subscription and notification, collaborative decision making, and decision capture into a knowledge base. The system increases awareness of events within a workflow or across an enterprise, increases the speed and assurance of data flows within a team or at the enterprise level, and allows users to access new data sources by targeting data delivery and preventing a flood of data. The system further supports collaboration via automation and intelligence assistance, facilitating capture and intelligent assistance for accurately creating document metadata.
- The system provides a combination of technical features to address complex collaboration between geographically distributed teams. The system implements follow and notify functionality, monitor and engage functionality, and capture functionality. The system may, for instance, tailor data flows and notifications of significant workflow events via a dynamically tuned subscription model. The system may also create a digital collaboration workspace supported by automation and machine learning functionality. In addition, the system may create documentation of collaboration with automatic recommendation of metadata tags to support search and cataloging of the documentation.
- Implementations of the system may vary widely. For instance, some implementations may include role-based event subscription that facilitates matching the correct individuals to the data streams relevant to their roles. The subscription may also flexibly change to help the individuals dynamically follow newly identified events of interest. Further, some implementations include a collaboration architecture that facilitates interaction among team members to analyze and respond to events. The collaboration architecture may include a persistent note feature that keeps relevant events and collaborative input on the events at the forefront of the information stream to the individuals. The collaboration architecture may also proactively suggest individuals with whom to collaborate for any given event. The system also supports intelligent tagging of events and knowledge capture to assist with future event handling.
- While some examples of system operation are described below with reference to an oil drilling operation, the system is not limited to any particular field of endeavor, and may be implemented in any number of other business contexts. As examples, the system may facilitate collaboration in a manufacturing setting, where different manufacturing processes may be taking place at geographically distributed locations; in a health care setting, where doctors, nurses, and administrative staff collaborate to provide health care; in a government agency, where agents, staff, and other support personnel collaborate to provide or execute government functions or services; or any other environment.
- With reference to
FIG. 1 , thesystem 100 may interface with and tovarious sensors 120,different communication pathways 130, and one or more application anddata servers 140, which may collectively facilitate communication and collaboration between any number of users 110. The users 110 may interface with thesystem 100 usinguser devices 116, e.g., personal or laptop computers, tablet computers, smartphones, pagers, or other devices. - The users 110 of the
system 100 may serve a number of different roles 111-115. As illustrated inFIG. 1 , for example, thesystem 100 may facilitate collaboration between anoperator 111, aproduction foreman 112,operations engineers 113,accounting employees 114 and regulatory employees 115 (e.g., environmental health and safety employees 115). The users 110 may be geographically distributed, for example, where theoperator 111 andproduction foreman 112 are located at a production location and theoperations engineers 113,accounting employees 114, andregulatory employees 115 are located at the corporate office. - As noted above, a user 110 may have a
user device 116, which may be capable of communicating with thesystem 100. Thesystem 100 may facilitate collaboration between different users by allowing bidirectional communication between auser device 116 and the application anddata servers 140. The communication between theuser device 116 and the application anddata servers 140 may take place over one or more communication pathways 130 (e.g., e-mail, SMS messaging, instant messaging, telephone calls, etc.), which may be transmitted over asatellite network connection 131, a cellulartelephone network connection 132, or awireless network connection 133. Furthermore, data sent over thecommunication pathways 130 may be routed, in part or in whole, over anetwork 135, which may include the public internet and private networks on any scale. Users 110 interfacing with thesystem 100 may do so overdifferent communication pathways 130, and thesystem 100 may facilitate seamlessly interaction between users 110 interfacing overdifferent communication pathways 130. - The
environment 101 may also include any number ofsensors 120,assets 125, and anyother devices 126 that are capable of communication with thesystem 100. Thedevices 126 may have network communication functionality, for example, and accordingly thesystem 100 may support interaction with any manner of devices considered to be part of the “Internet of Things” (IoT devices). - The
sensors 120 may operate independently of, or in conjunction with, any of theassets 125. By way of example, thesensors 120 may includepressure sensors 120 that measure the pressure of an oil well, orlaser sensors 120 which are capable of measuring the dimensions of products coming off the production line. Thesensors 120 may be deployed across a given location, for example, around a manufacturing floor or around an oil well operation. Thesensors 120 may be enabled to communicate information to thesystem 100 directly over a network connection 131-133. Additionally, or alternatively, thesensors 120 may be able to communicate with adevice 116 of the user 110, for example, using a Bluetooth network connection or a near field communication (NFC) connection, which may, in turn, be manually or automatically communicated to thesystem 100 over a network connection 131-133. Thedevices 126 may similarly communicate with thesystem 100, and may provide data feeds to thesystem 100, which may be updated on demand, at certain intervals, or in a continuous fashion. - The
system 100 may center collaboration around one or more types of events, which may be matched to specific user roles 111-115. Events may be certain activities or actions that occur with respect to asensor 120, anasset 125, a user 110, and anyother device 126, taking place at any level of operation, including the enterprise as a whole. An event may be provided to thesystem 100 by various means, for example a user 110 may create the event or thesensors 120 may be responsible for creating an event. For example, awell operator 111 may notice a change in system operation (e.g., an increase in operating pressure), and may submit this event to thesystem 100. - More broadly, any user 110,
sensor 120,asset 125 orother device 126 may generate an event or provide data to thesystem 100, which may in turn generate an event. For example, thesystem 100 may include asensor 120 which measures the operating pressure of the well, which may automatically generate an event when a critical operating pressure is reached. Additionally, or alternatively, thesystem 100 may process information received from thesensors 120 orother devices 126 to generate an event. For example, in the manufacturing context, thesensors 120 may provide thesystem 100 with the precise dimensions of parts coming off the manufacturing line, which thesystem 100 may use to determine (e.g., by applying six sigma methodologies) if the production process is functioning properly or abnormally and may generate an event accordingly. - The events may be of any level of importance to any particular role, and as described in further detail below, the
system 100 may provide users 110 with awareness of those events that are appropriate for the role of the user 110. For example, anoperations engineer 113 may not be interested or involved in the same events that anaccounting employee 114 may need to follow. That is, thesystem 100 notifies users of events that are relevant to the roles filled by the users. Thesystem 100 may also provide support for multiple locations (e.g., different oil wells) at different levels of geographic granularity (e.g., from a single well to sets of wells, to an entire field of wells, or to a nationwide well operation), and may allow users 110 of the system to collaborate on events that are geographically distributed across the multiple locations. Thesystem 100 may allow back office users 110, to communicate and collaborate with users 110 who are present, on-site, at the various locations. - The
system 100 may implement different elements of collaborative functionality, which, at a high level, may include follow and notify functionality, monitor and engage functionality, and capture functionality. The following description is made with reference toFIG. 2 which illustrates some of the logic that thesystem 100 may employ in facilitating information delivery and collaboration between different users of the system. - The
system 100 may implement an adaptable subscription model in which a user 110 of thesystem 100 may be able to subscribe to receive, or select to receive, notifications from thesystem 100 based on various parameters. Thesystem 100, for example, may allow a user 110 to subscribe to receive notifications regarding different events or event types that may be of interest to the user. Thesystem 100 may determine the events or event types by, for instance, analyzing a model of the oil well process and identifying the various event types that may occur over the lifetime of the wells operation. Thesystem 100 may also accept manual input of events and event types that characterize any particular device. - In other implementations, the
system 100 may allow a user 110 to subscribe to notifications based on a data object and events corresponding to that data object. For example, thesystem 100 may allow a user 110 to follow events or event types associated with a specifically identified well. In other words, the user subscribes to events linked to a specific data object, rather than to all such events. The data object to which the event relates to is not limited to a single object (whether an asset, device, sensor, logical or physical element, or other object), e.g., a single well, but may be a group of objects, such as all wells in a particular region or sharing a particular characteristic (e.g., size, output capacity, type, manufacturer, date of construction, or other characteristic). The group of objects may extend as narrowly as a single device or as widely as an enterprise as a whole, e.g., the entire field of wells. By utilizing this adaptable subscription model, the user may target the type of information that thesystem 100 may deliver to the user 110, and focus the information for relevance to specific objects, and thereby avoid being overwhelmed by all of the possible data and notifications provided by thesystem 100. - In one implementation, the
system 100 may provide theuser device 116 with a list of events supported by thesystem 100, for example, when the user 110 logs into, or connects to, thesystem 100. Theuser device 116 may present the user 110 with this list, and the user 110 may be able to select those events which the user 110 would like to follow. Thesystem 100 and/oruser device 116 may allow the user to select events at different levels of granularity. For example, a user 110 may be able select events to follow based on a class or type of event (e.g., all production cessation events), based on theasset 125 involved in the event (e.g., all drilling apparatus events), based on a set of devices 126 (e.g., all events relating todevices 126 in a small geographic region of wells), or based on the system that is implicated (e.g., all well operation events). The user 110 is not limited to selecting events at login, and thesystem 100 may allow the user 110 to change their subscription profile at their convenience and may integrate the option alongside other functionality (e.g., when suggesting relevant documentation). - The
system 100 and/oruser device 116 may also allow the user 110 to filter the list based on various system or event attributes, for example, filtering the list of events based on well attributes (e.g., size, production rate, stage of production). The list of events that are provided to theuser device 116 may also be filtered by thesystem 100 based on attributes of the user 110. The system, for example, may associate, or map, an event to one or more user roles 111-115, and thesystem 100 may limit the events that are presented to a user 110 for selection based on the role of the user 110. As a specific example, thesystem 100 may associate certain critical well alert events with theproduction foreman role 112 and theoperations engineer 113 role. When a user 110 interfaces with thesystem 100, thesystem 100 may determine the role of the user 110, for example, by accessing personnel records, and may determine which events or event types are associated with the role of the user 110. Thesystem 100 may, for example, be integrated with a human resources system (e.g., an SAP system), which may utilize ahuman resources database 364, or file servers (e.g., SharePoint active directories) of the enterprise, where personnel records may be stored. Some users 110 of thesystem 100 may be associated with one or more roles 111-115 and thesystem 100 may provide events corresponding to any of these roles. In cases where the user 110 has multiple roles, thesystem 100 and/oruser device 116 may allow the user to filter the list of events based on one of the user's roles. - Furthermore, the events supported by the
system 100 may themselves be dynamic, as events may be added, removed, modified, or resolved. Thesystem 100 may provide the user 110 with the option to view those events which have recently occurred or changed, which may allow the user 110 to adapt to changing workflows. Thesystem 100 may similarly accommodate changes in the role of a user 110. In some implementations, thesystem 100 may also suggest, or automatically enroll the user 110 in, events that stem from events that the user 110 is already subscribed to. Thesystem 100 may, for example, look at a model of the oil well process and identify relationships (e.g., based on a commonality of user role or expertise) between different event types, which thesystem 100 may use to determine which downstream events to suggest to the user 110. - In other cases, the user 110 may be sent a notification for an event which they have not yet selected to follow (e.g., where a different user includes them as a recipient of a communication or forwards them a notification). The user may be interested in that communication or notification, and may choose to follow that event more closely. The
system 100 may also adapt the user's subscription to receive notifications related to that event, and may suggest similar events that the user may be interested in following. Thesystem 100, for example, may be able to predict or suggest event types that the user 110 may want to consider, for example, based on event types that the user 110 is currently following or has followed in the past or based on the expertise of the user 110, which may be determined from the personnel records of the user 110. - As noted above, the
system 100 may receive or generate various types of events. A conversation or dialogue may develop around these events, and thesystem 100 may generate notifications to different users 110 of thesystem 100. By way of example, thesystem 100 may receive a SCADA alert from thesensors 120, which thesystem 100 may interpret as a critical event. Thesystem 100 may send a notification to those users who have chosen to follow that event and/or to those users 110 who are associated with that type of event, for example, anoperator 111. The notifications presented to the user 110 may be actionable in nature (e.g., voting on an issue or directing a user 110 to view relevant documentation), allowing the user to take certain actions or steps in response to the event notification. In the broader context, theoperator 111 may be able to take certain actions to resolve the problem and may do so without additional help or input from other users 110. Theoperator 111 may communicate resolution of the problem to thesystem 100, which may generate a notification indicating that the problem has been resolved. Theoperator 111 may alternatively decide that an inspection of the well is necessary and may temporarily stop production. Theoperator 111 may communicate these decisions to thesystem 100, which may generate additional events and notifications to users 110, for example, notifications to users 110 in the back office, who may be associated with those events (e.g., regulatory 115 or operations engineers 113). - The generated events may also trigger a response from
different assets 125,sensors 120, orother devices 126, which may be configured to automatically provide data to thesystem 100. Thesystem 100 may process this information and generate a notification or relay this information in a notification to the appropriate users 110. Users 110 in the back office may respond with certain inquiries directed towards theoperator 111, who may receive a notification from thesystem 100 indicating that his attention is required. Once the problem has been resolved, theoperator 111 may resume operation of the well. Theoperator 111 may communicate that the well is back online, or asensor 120 may indicate that the well has come back online, and thesystem 100 may generate a notification to that effect. - In the above examples, the
system 100 may receive communications and transmit notifications over different communication pathways 130 (e.g., to and from different users 110,assets 125,sensors 120, or other devices 126). This multi-channel cross interfacing may increase awareness of events within a workflow or across an enterprise, and increases the speed and assurance of data flows within a team or, more broadly, at the enterprise level. - The
system 100 may also allow a user to identify apreferred communication pathway 130, through which the user may receive notifications from thesystem 100. For example, a user 110 who interfaces with thesystem 100 using acell phone 116 may select to receive SMS notifications, whereas a user 110 who interfaces with thesystem 100 using alaptop 116 may prefer to receive an instant message. Thesystem 100 may also implement acommunication pathway 130 hierarchy in which a user may specify apreferred communication pathway 130, asecondary communication pathway 130 and so on. Thesystem 100 may also store the last knowncommunication pathway 130 utilized by the user 110 in interfacing with thesystem 100, and may use thiscommunication pathway 130 until the user 110 makes use of adifferent communication pathway 130. - The
system 100 may also integrate with other enterprise systems, allowing for seamless interfacing with the user 110. For example, thesystem 100 may be able to communicate directly with a productivity application of a user (e.g., a web browser, word processing or spread sheet application), which may provide a notification within the productivity application itself (e.g., by delivering the event to a notification plug-in running in the application environment). The user may also be able to leverage the functionality of the productivity application in responding to the notification. For example, anoperations engineer 113 may be able to use a productivity application to remotely control aasset 125. Thesystem 100 may be able to process information fromvarious sensors 120 to determine when an adjustment may be warranted and may calculate a suggested adjustment to the operating profile of theasset 125. The system may provide theoperations engineer 113 with a notification suggesting adjustment of theasset 125, which theoperations engineer 113 may receive directly within the productivity application. The operations engineer may be able to accept or modify the suggestion and adjust the operation of theasset 125. - The
system 100 may also allow users 110 to monitor the different events that they are following by providing a digital collaboration workspace. The digital workspace may provide a user 110 with a way to efficiently access and manage the various events with which they may be involved. Anoperations engineer 113, for example, may be responsible for providing service to several different well operations, which may experience different events that may be at different stages of resolution. The user 110 may have interfaced with the system usingdifferent user devices 116 anddifferent communication channels 130. The digital collaboration workspace may serve to aggregate these disparate communications and present the user 110 with an organized and curated workspace. - The digital workspace, for example, may present the user 110 with a newsfeed, which may identify any new events or notifications that may need the user's attention and additional developments or discussions in events that the user is interested in. The digital collaboration workspace may also serve to aggregate additional information regarding the different events, so that information needed to respond may be available in a single location. The digital collaboration workspace, for example, may provide the user with relevant data feeds, for example, machine data (SCADA), or device data feeds, or access to relevant documents (e.g., from the system knowledge base).
- The digital collaboration workspace may also provide the user 110 with a comprehensive view of a given operation (e.g., a well profile view). The user 110, for example, may have interfaced with the systems at different stages of an event, and the digital collaboration workspace may present a complete view of the situation (e.g., from the first alert to its ultimate resolution). For example, in the subscription model described above, a user may choose to receive notifications for certain critical events, while foregoing receipt of notifications with respect to other less critical events. The latter set of notifications may, nevertheless, provide additional context for the problem being addressed, which may help a user to address more complex issues. For example, the
operations engineer 113 may only receive an event notification when thewell operator 111 stops production on the well, and may not have received a notification regarding the original SCADA alert, which may have triggered production cessation. In such cases, theoperations engineer 113 may turn to the digital collaboration workspace to obtain this additional information, which may provide a deeper understanding of the problem and provide insights as to its solution. The workspace, more broadly, may present a complete view of the well's operation, including active events and discussions, live data feeds, and relevant documentation. - A user 110 may also manipulate the presentation of information in the digital collaboration workspace, allowing users to filter the information to present the information that is immediately necessary. For example, a user 110 may be following events related to several data wells, but may only be concerned with data relating to a couple of the wells. The user 110 may be able to filter the content that is presented in the digital workspace (e.g., through a series of controls and/or drop down menus). The interface may also be customized based on a user's role in the process. For example, an
operations engineer 113 may want access to SCADA data feeds while anaccounting employee 114 may not need such data. The digital collaboration workspace may allow for cross-platform support and may enable the user to interface with the digital collaboration workspace using anyuser device 116, where the workspace may be optimized for the device being used. - The digital collaboration workspace may also allow for heightened awareness of certain events by providing a persistent note feature that keeps relevant events and collaborative input on the events at the forefront of the information stream to the individuals.
- The
system 100 or an individual user, for example, may mark events and their related notifications as having particularly high importance, which the digital collaboration workspace may give persistent status. In such cases, the digital collaboration workspace may place a persistent note at the top of a user's newsfeed. The persistent note may remain fixed at the top of the newsfeed until certain conditions or interactions are met. For example, an event that stops production on a well may be marked as critical, and related notifications may be placed at the top of the user's news feed until the well comes back online (e.g., when aoperator 111 communicates this to thesystem 100 or when asensor 120 provides a similar indication). Additionally, or alternatively, thesystem 100 may automatically mark certain events as persistent notes (e.g., critical SCADA events), which can later be deprecated to non-persistent status. Thesystem 100 may also choose to include (i.e., promote to high importance) related elements with the persistent note, for example, conversations and discussions that may develop around the event. Similarly, thesystem 100 may include, related events, whether upstream or downstream of the original event marked for persistent notification. The additional elements may be included within the same persistent note and/or spawn additional persistent notes. - The persistent notifications may be specific to the digital workspace of the user or global to all users of the
system 100, and the ability to mark events for treatment as a persistent notification may be limited to certain users 110 or certain user roles 111-115 (e.g., production foreman 112). Moreover, as the digital collaboration workspace may allow users 110 to engage and collaborate with one another (as described in greater detail below) the persistent notes may also be collaborative in nature. For example, once a note has been promoted to persistent status it may be placed atop the newsfeed of each user 110 that is following and/or who is associated with the event. Subsequent conversations and discussions between team members may thus appear on the newsfeed of all team members. - The digital collaboration workspace may also help to coordinate efforts between different users 110 of the
system 100 and may allow for interaction amongst different members of a team. The workspace, for example, may help in assembling a team to address an event, which may allow for a faster response and may also allow for adaptation to dynamically changing events and situations. Thesystem 100 may, for example, suggest users 110 that are able to help address a particular event, for example, by determining the different user roles 111-115 that are associated with an event and identifying what roles 111-115 are absent in the assembled team (e.g., by consulting records in the human resources database 364). In making this suggestion, thesystem 100 may look at various factors, including, for example and without limitation, the number of similar events that the user 110 has previously dealt with, the technical expertise of the user 110, the number of active events that the user 110 is engaged in, and the geographical proximity of the user 110 to other members of the team or to the location of the event or operation. - The digital collaboration workspace may further provide communication functionality, which may allow users 110 of the system to directly engage and communicate with one another. The digital collaboration workspace may assist users 110 in reaching out to suggested team members, for example, by providing contact information for the recommended user 110. The
system 100 may also facilitate the act of collaboration itself, for example, by providing an instant messaging service, teleconferencing capabilities, and video conferencing features, which may be integrated within the digital collaboration workspace. The workspace may also provide messaging capabilities between the newsfeeds of different users. - In providing the communication functionality, the
system 100 may support simultaneous communication overdifferent communication pathways 130, and may allow for cross-pathway communication. For example, thesystem 100 may allow users 110 to conference with one another where some users 110 may participate using a telephone and other users 110 may video conference using a smartphone. The method of collaboration may depend on user 110 preferences or capabilities of theuser device 116. For example, a user of amobile device 116 having 4G/LTE cellular access may have video conferencing enabled whereas a user 110 having 2G cellular access may communicate via SMS messaging. - The
system 100 may also enhance the collaborative experience by automation and intelligence assistance, for example, by providing users 110 with relevant documentation (e.g., from a document repository or previously captured knowledgebase) or relevant data feeds (e.g., live data from thesensors 120,assets 125, and other devices 126). - As just mentioned, the digital collaboration workspace may leverage information contained within a captured knowledgebase, which may include, for example and without limitation, information and insights gained through the resolution of past events and problems. To that end, the
system 100 may automatically process conversations and discussions to capture this information, for example, by using natural language processing techniques. For example, a team of users 110 may successfully resolve an event (e.g., a SCADA alert), after which thesystem 100 may analyze the dialogue between the team members to capture how the issue was solved, which may provide forward guidance to users 110 trying to resolve similar events. While the above example described the knowledge capture process following resolution of a problem, the knowledge capture process may also take place when the results achieved to that point are good enough though not complete (e.g., where a temporary solution has been implemented) or when a sufficient amount of input has been received (e.g., after each team member has contributed their input). The knowledge capture process may also be triggered by a user 110 of thesystem 100, who may assist the capture process by identifying or providing information of relevance. - The knowledge capture process may involve processing the conversation and discussions surrounding an event and identifying and tagging relevant metadata contained therein, which may be stored as an entry in the knowledge base. For example, the knowledge capture process may identify and record what event(s) were addressed, what operation location it was attributed to, who the team members are, and in some situations when the issue will be revisited. As another example, the
system 100 may identify the data feeds and documentation, including existing knowledge base resources that were used to address the issue being processed. The knowledge capture process may also look at the social interactions that took place in responding to an issue, for example, capturing when different users 110 were added to the team and/or those users 110 that were most active in the conversation. As mentioned above, the information stored in the knowledgebase may automatically be presented to theuser 100, for example, based on a commonality of events or issues or when the same event is revisited down the line. Thesystem 100, however, may also allow users 110 to search the knowledgebase (e.g., based on the tagged metadata). - One implementation of the
system 100, using the features just described, is illustrated inFIG. 2 . Additional reference may be made with reference toFIGS. 6-10 , which illustrate example user interfaces that may be presented to the user 110. Thesystem 100 may recognize that the user has logged in to or has connected with the system (201). Thesystem 100 may then determine the user's role and identify those events for which the user may be a match (203). Thesystem 100 may provide this list of matching events to the user 110, which may be displayed on the device of the user 116 (205). Thesystem 100 accepts event selections from the user, and subscribes the user to those events (207). Thesystem 100 may update the subscription of the user based on the user selection (209), e.g., to add, remove, or change the set of events to which the user is subscribed. In some implementations, thesystem 100 may provide additional selection criteria to facilitate specific selection of and subscription to events. For instance, thesystem 100 may allow the user to select events from specific objects, e.g., wells or other machines that exceed a pre-determined monthly output. The selection criteria may act as filters (e.g., corresponding to attributes of the device) that provide fine grained control over selection of the devices that generate events to which the user subscribes. The subscriptions may be to <event, object> pairs, so that the user receives those events that apply to specific objects, and not all objects. For instance, a user may subscribe to well malfunction events only for wells in a specific sub-region of a field of wells. - When the
system 100 learns of an event that matches the users 110 subscription preferences (211), thesystem 100 may generate a notification to send to one or more users 110 or to other devices in the system (e.g.,sensors 120,assets 125, or other device 126) (213). Thesystem 100 may determine theappropriate communication pathway 130 to send the notifications along (e.g., based on the type of notification being sent and the communication pathway preferences of the user 110) (215). With reference toFIG. 6 , for example, the user may be provided with notifications via the user's enterprise messaging client (e.g., Microsoft Lync) (601) and/or via e-mail (602). The user may also receive notification through an application (603) running on their user device 116 (e.g, the delivery of notifications to an iPhone application through the push framework) or in updating the users 110 newsfeed (604) in the digital collaboration workspace (225 a). With respect to the mobile application, the notification may be displayed in the mobile application itself and/or within a notification dashboard provided by the mobile device. - The
system 100 may also determine if the event or notification has been assigned persistent status (217), which may affect its presentation in the digital collaboration workspace. As shown inFIG. 7 , for example, the notifications having persistent status (“Collaborative Stickies”) may be placed at the top of the newsfeed (701), and where more than one notification is given persistent status thesystem 100 may order them based on various criteria, for example, based on the last response received (702) or event criticality. The users 110 or devices (e.g.,assets 125,sensors 120, or other devices 126) may provide responsive communications to the system 110 (219), which the system may process to generate additional events and notifications (211, 213). - The
system 100 may process the event or notification in updating the digital collaboration workspace (223), which may be influenced by the role of the user and thecommunication pathway 130 through which the user 110 is interfacing with the system (221). Thesystem 100 may add, remove, or update documents (e.g., knowledge base references) and data feeds that are presented through the digital collaboration workspace, for example, based on a need identified from a generated event (223). The updating process may also involve updating the newsfeed of the user (225 a), which may include positioning and updating persistent notes, updating the well profile that may be associated with the event or notification (225 b), and updating data feeds integrated into the workspace (223 c). The user 110 may further manipulate the digital workspace by filtering the content that is displayed (e.g., focus on a particular event or well operation) (227). - The user 110 may also choose to address an event or notification, and the
system 100, through the digital collaboration workspace, may allow the user to engage with other users 110. This may involve suggesting or recommending additional users 110 with whom the user 110 may wish to interact, who may be able to assist the user 110 with the issue or event being addressed (231 a). As illustrated inFIG. 9 , for example, the user may be able to select a “Collaborate” option (901), which may present the user with a list of suggested collaborators, from which the user 110 may be able to select one or more of the users to collaborate with (902). - The
system 100 may further assist the user in reaching out to the recommended user 110, for example, by providing the user 110 with contact information of the recommended user 110 (231 b). Thesystem 100 may also allow the user 110 to directly communicate with other users 110 (e.g., the recommended user 110 or other team members) (231 b). Again with reference toFIG. 9 , as an example, thesystem 100 may allow the user 110 to select a communication pathway over which the collaboration is to take place (903). Thesystem 100 may also limit the selection of communication pathway based on the capabilities of the various user devices 116 (903). Thesystem 100 may facilitate live, or real-time, communication between users 110 overdifferent communication pathways 130, for example, using videoconferencing or teleconferencing methodologies (233). Thesystem 100 may also facilitate relatively passive communication methods, for example, allowing users 110 to message each other directly through the digital collaboration workspace (e.g., a conversation or discussion occurring in a persistent note of a user's newsfeed) (233). Thesystem 100 may also enrich the conversation by providing users 110 with access to relevant documentation (e.g., from a captured knowledgebase) or pertinent data feeds (e.g., updates fromsensors 120,assets 125, or other devices 126). - Once the collaboration has met a particular pre-defined criterion or set of criteria, (e.g., commentary has been received from a pre-determined number or set of individuals, or an event has been resolved or dismissed), the
system 100 may begin aknowledge capture process 235. In theknowledge capture process 235, thesystem 100 stores the collaboration, and may generate additional documentation (e.g., metadata tags that characterize the collaboration) representing substantive information and insights regarding the event (235 a). For example, thesystem 100 may capture event parameters and/or documentation and data feeds that were used, as well as social aspects of the collaboration surrounding the event (235 b), including any collaboration components that were exchanged, such as messages, voice communications, images, drawings, test files, video, documents, or any other collaboration component. As illustrated inFIG. 10 , the user 110 may be presented with the ability to trigger the knowledge capture process (1001) and may be prompted to assist thesystem 100 in the process (1002). - The information gathered in the
knowledge capture process 235 may utilized by thesystem 100 in different ways, for example, in providing a dynamically tuned subscription engine (205) or when integrating documentation and data feeds into the digital collaboration workspace (223). Thesystem 100, for example, may suggest additional events that the user may be interested in following. As illustrated inFIG. 8 , thesystem 100 may allow the user to follow an event more closely (801, “Follow Closer”) and may suggest events (802) based on a similarity of location (“[Barnett 3654] Gas lift” and “[Barnett 3654] Propellent stimulation”) or a commonality of event type (“[Bellatrix 2605] Fluid Pumping” and “[Bellatrix 2605] Water injection”). -
FIG. 3 illustrates anexample system architecture 300 which may implement all or parts of thesystem 100 described above. In this example, thesystem architecture 300 broadly provides for two different system layers, apresentation layer 320, which consists of some of the elements that may be presented to the user 110, and abusiness layer 340, which consists of the back-end system components that may support the presentation layer. However, thesystem architecture 300 may be configured in many different ways. Thesystem architecture 300 may also utilize various databases, including a subscription andnotification database 363, acontent database 361, aconfiguration database 362, and ahuman resources database 364. In some embodiments, thecontent database 361 andconfiguration database 362 may beMicrosoft SharePoint databases 360, and the databases 361-364 may all be implemented using a relational database architecture (e.g., SQL databases). - As discussed in greater detail above, the
system architecture 300 may provide the user 110 with adigital collaboration workspace 321, which may provide auser profile view 321 a and awell operation view 321 b. Thesystem architecture 300 may also integrate withvarious productivity applications 322, also described above, which may include awell operation application 322 a, aspreadsheet application 322 b, and aword processing application 322 c. Thesystem architecture 300 may also featurevarious notification frameworks 323 that may be used to present the user 110 with notifications over one ormore communication pathways 130. Thesystem architecture 300 may, for example and without limitation, feature ane-mail notification framework 323 a, anenterprise messaging framework 323 b, and a mobiledevice notification framework 323 c. - The
business layer 340 may provide support for thepresentation layer 320, and may utilize one ormore web servers Apache web server 350 and a Microsoft Internet Information Server (IIS)server 351. In operation, the different components of thepresentation layer 320 may exchange data and information with components of thebusiness layer 340. For example, thebusiness layer 340 may provide data and information to thepresentation layer 320 upon request, for example, by using the HTTP protocol. More particularly, theIIS web server 351 may provide for web services that conform to defined architectural constraints (e.g., REST Services that are part of the Windows Communication Foundation (WCF) web programming model). - By way of example, requests from the
digital collaboration workspace 321 may include requests for data relating to theuser profile view 321 a (e.g., information regarding the user's newsfeed). Thepresentation layer 320, in placing the requests, may provide thebusiness layer 340 with various parameters. For example, thepresentation layer 320 may selectively request data and information for operation views 321 b (e.g., where the user 110 has filtered the digital collaboration workspace 321). Thebusiness layer 340 may also be configured to push data and information to thepresentation layer 320. Thebusiness layer 340 may, for example, send notifications (e.g., automatically upon the occurrence of an event) to the user using thenotification frameworks 340. Thebusiness layer 340 may similarly provide notifications or data to the productivity applications 322 (e.g., a suggested operations adjustment for use with thewell operation application 322 a). - In servicing requests from, or pushing data to, the
presentation layer 320, thebusiness layer 340 may utilize certain additional parameters, for example, those stored inconfiguration database 361,content database 362, subscription andnotification databases 363, andhuman resources databases 364. Thehuman resources database 364, for example, may allow the business layer to determine the user's role 111-115 or technical expertise, which may influence the data or information that is presented to the user in thedigital collaboration workspace 321. The subscription andnotification database 363, similarly, may allow thebusiness layer 340 to determine those events that the user has chosen to follow and the communication pathway preferences that the user may have selected. - The
business layer 340 may support various types of functionality at thepresentation layer 320 by providing certain core services such as, for example, asearch service 341, ametadata service 342, and a user profile service 343. Thebusiness layer 340 may additionally make use offeed services 347,subscription services 348, andnotification services 349. Thebusiness layer 340 may also provide anevent generator 346 component, which may operate on theApache web server 350. In providing functionality to thepresentation layer 320, thedigital collaboration workspace 321 may use a server-side object model (SSOM) 344 to interface (e.g., retrieve, update, and manage) with theSharePoint databases 360 and thefeed service 347 may draw upon a client side object model (CSOM) 345, which may similarly be used to interface with theSharePoint databases 360. - With respect to the core services, the
search service 340 may allow thepresentation layer 320 to implement search functionality, for example, allowing a user 110 interfacing with thedigital collaboration workspace 321 to search for different well events or through the captured knowledge base. The user profile service 343 may provide support for theuser profile view 321 a of thedigital collaboration workspace 321. Themetadata service 342 may support various aspects of the knowledge capture process, which may involve scanning the conversation and dialogue surrounding an event and identifying relevant information and social interactions contained therein (e.g., using natural language processing techniques). - The
presentation layer 320 may also interact with thefeed service 347, for example, to support the newsfeeds provided in theuser profile view 321 a or thewell operation view 321 b. Thefeed service 347 may draw upon and provide input to theevent feed generator 346. For example, thefeed service 347 may receive as an input an indication that an event has been generated by the system (e.g., based on a communication received from anoperator 111 or data received fromsensors 120 or other devices 126). Theevent feed generator 346 may itself be driven by input received from thesubscription service 348, which may interface with the subscription andnotification database 363. Thesubscription service 348 may determine which events to provide in the users newsfeed (e.g., based on the users role or filter criteria) and how those events may be prioritized (e.g., based on a notifications persistent status). - The notification services 349 provided by the
business layer 340 may interface with notification servers 352-354, which may correspond to thevarious notification frameworks 323. For example, thebusiness layer 340 may include ane-mail messaging server 353, anenterprise messaging server 352, and a mobile device push notification server 354. The notification services 349 may communicate with the e-mail messaging server 353 (e.g., Exchange mail server) using, for example, the SMTP e-mail protocol. The notification services 349, similarly, may communicate with the enterprise messaging server 352 (e.g. Microsoft Lync Server) using the Unified Communications Managed API (UCMA) which, in turn, may utilize SIP and TCP protocols. The notification services 349 may also communicate with the mobile device push notification server 354 (e.g., Apple™ push notification server) using, for example, the TCP protocol. The notification services 349 may provide support for delivering notifications over different communication pathways and may further provide support for delivery of communications and notifications sent between different communication pathways (e.g., cross-pathway communication). -
FIG. 4 illustrates one example of adata model 400 that thesystem 100 may implement as part of the subscription andnotification database 363 described above. Thedata model 400 may capture the interaction and interrelationships between users and the events that they may be subscribed to, and may contain data tables relating to users 110, events, and well operations. As illustrated, for example, the user data table may be associated with a role data table, which may capture the association between a user 110 and a user role 111-115. The user data table may also be associated with a user subscription data table, which may capture the different events that the user 110 is following. Similarly, thedata model 400, through the role/event subscription data table, may define the relationships between different user roles 111-115 and different events, which thesystem 100 may use to suggest events for a user to follow. Thedata model 400 may also capture information regarding the different well operations and may contain data tables storing different well attributes. -
FIG. 5 shows an example implementation 500 of thesystem 100 and the functionality described above and illustrated in the Figures. The implementation 500 may include input/output interfaces 501, adisplay 503, one ormore communication interfaces 505,collaboration circuitry 511 and adatabase communication interface 531. As illustrated, the implementation 500 may includecommunication interfaces 505, which may include a satellitenetwork communication interface 505 a, a cellular telephonenetwork communication interface 505 b, or a wirelessnetwork communication interface 505 c. The communication interfaces 505 may also include wired communication interfaces, such as network (e.g., Ethernet) interfaces. The communication interfaces 505 may transmit and receive data from any devices in the field, and may thereby recognize events that have occurred, or receive data from the devices that the system interprets to mean that one or more events have occurred. - The implementation 500 may also include a user interface 507, which may utilize the
display 503, and input/output interfaces 501 may provide a graphical user interface, touch sensitive display, voice or facial recognition inputs, buttons, switches, speakers and other user interface elements. Additional examples of the input/output interfaces 501 include microphones, video and still image cameras, temperature sensors, vibration sensors, rotation and orientation sensors, headset and microphone input/output jacks, Universal Serial Bus (USB), Serial Advanced Technology Attachment (SATA), and Peripheral Component Interconnect express (PCIe) interfaces and connectors, memory card slots, radiation sensors (e.g., IR or RF sensors), and other types of inputs. The input/output interfaces 501 may further include Universal Serial Bus (USB) interfaces, audio outputs, magnetic or optical media interfaces (e.g., a CDROM or DVD drive), network (e.g., Ethernet or cable (e.g., DOCSIS) interfaces), or other types of serial, parallel, or network data interfaces. - The
collaboration circuitry 511 may further include aprocessor 513 andmemory 521, which may contain processinginstructions 523 anddata 525, includingapplication data 526 andlocal content 527. The processinginstructions 523 may be executed by theprocessor 513 to perform some or all of thesystem 100 functionality described above. Thecollaboration circuitry 511 may be in communication with the input/output interfaces 501,display 503, communication interfaces 505, user interface 507, anddatabase communication interface 531. Thedatabase communication interface 531 may allow thecollaboration circuitry 511 to interface with theSharePoint databases 360, subscription andnotification database 363, andhuman resources database 364. - The methods, devices, processing, and logic described above may be implemented in many different ways and in many different combinations of hardware and software. For example, all or parts of the implementations may be circuitry that includes an instruction processor, such as a Central Processing Unit (CPU), microcontroller, or a microprocessor; an Application Specific Integrated Circuit (ASIC), Programmable Logic Device (PLD), or Field Programmable Gate Array (FPGA); or circuitry that includes discrete logic or other circuit components, including analog circuit components, digital circuit components or both; or any combination thereof. The circuitry may include discrete interconnected hardware components and/or may be combined on a single integrated circuit die, distributed among multiple integrated circuit dies, or implemented in a Multiple Chip Module (MCM) of multiple integrated circuit dies in a common package, as examples.
- The circuitry may further include or access instructions for execution by the circuitry. The instructions may be stored in a tangible storage medium that is other than a transitory signal, such as a flash memory, a Random Access Memory (RAM), a Read Only Memory (ROM), an Erasable Programmable Read Only Memory (EPROM); or on a magnetic or optical disc, such as a Compact Disc Read Only Memory (CDROM), Hard Disk Drive (HDD), or other magnetic or optical disk; or in or on another machine-readable medium. A product, such as a computer program product, may include a storage medium and instructions stored in or on the medium, and the instructions when executed by the circuitry in a device may cause the device to implement any of the processing described above or illustrated in the drawings.
- The implementations may be distributed as circuitry among multiple system components, such as among multiple processors and memories, optionally including multiple distributed processing systems. Parameters, databases, and other data structures may be separately stored and managed, may be incorporated into a single memory or database, may be logically and physically organized in many different ways, and may be implemented in many different ways, including as data structures such as linked lists, hash tables, arrays, records, objects, or implicit storage mechanisms. Programs may be parts (e.g., subroutines) of a single program, separate programs, distributed across several memories and processors, or implemented in many different ways, such as in a library, such as a shared library (e.g., a Dynamic Link Library (DLL)). The DLL, for example, may store instructions that perform any of the processing described above or illustrated in the drawings, when executed by the circuitry.
- Various implementations have been specifically described. However, many other implementations are also possible.
Claims (16)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/038,769 US20190014068A1 (en) | 2014-09-08 | 2018-07-18 | Digital collaboration process enablement tool |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN4396CH2014 | 2014-09-08 | ||
IN4396/CHE/2014 | 2014-09-08 | ||
IN4396CHE2014 | 2015-08-25 | ||
US14/838,084 US10063507B2 (en) | 2014-09-08 | 2015-08-27 | Digital collaboration process enablement tool |
US16/038,769 US20190014068A1 (en) | 2014-09-08 | 2018-07-18 | Digital collaboration process enablement tool |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/838,084 Division US10063507B2 (en) | 2014-09-08 | 2015-08-27 | Digital collaboration process enablement tool |
Publications (1)
Publication Number | Publication Date |
---|---|
US20190014068A1 true US20190014068A1 (en) | 2019-01-10 |
Family
ID=55438582
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/838,084 Active 2036-05-09 US10063507B2 (en) | 2014-09-08 | 2015-08-27 | Digital collaboration process enablement tool |
US16/038,769 Abandoned US20190014068A1 (en) | 2014-09-08 | 2018-07-18 | Digital collaboration process enablement tool |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/838,084 Active 2036-05-09 US10063507B2 (en) | 2014-09-08 | 2015-08-27 | Digital collaboration process enablement tool |
Country Status (2)
Country | Link |
---|---|
US (2) | US10063507B2 (en) |
AU (1) | AU2015218562B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12079293B2 (en) * | 2021-12-23 | 2024-09-03 | Atlassian Pty Ltd. | System and graphical user interface for generating document space recommendations for an event feed of a content collaboration platform |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10147054B2 (en) * | 2013-07-26 | 2018-12-04 | Salesforce.Com, Inc. | Displaying content of an enterprise social network feed on a mobile device |
WO2015121982A1 (en) * | 2014-02-14 | 2015-08-20 | 富士通株式会社 | Document management program, device, and method |
US10606859B2 (en) | 2014-11-24 | 2020-03-31 | Asana, Inc. | Client side system and method for search backed calendar user interface |
SG10201408352XA (en) * | 2014-12-15 | 2016-07-28 | Iia Technologies Pte Ltd | A system of monitoring and controlling the operation of multiple machines for producing diamonds and a method thereof |
US10657117B2 (en) | 2015-09-11 | 2020-05-19 | International Business Machines Corporation | Critical situation contribution and effectiveness tracker |
US10824974B2 (en) | 2015-09-11 | 2020-11-03 | International Business Machines Corporation | Automatic subject matter expert profile generator and scorer |
US20170078229A1 (en) * | 2015-09-11 | 2017-03-16 | International Business Machines Corporation | Dynamic problem channel constructor |
US10521770B2 (en) | 2015-09-11 | 2019-12-31 | International Business Machines Corporation | Dynamic problem statement with conflict resolution |
US9948529B2 (en) * | 2016-05-20 | 2018-04-17 | Chun-Tai Yen | Mobile manufacturing management and optimization platform |
TWI665560B (en) * | 2016-07-18 | 2019-07-11 | 科智企業股份有限公司 | Mobile Manufacturing Management and Optimization Platform |
US10979237B2 (en) * | 2016-10-28 | 2021-04-13 | Microsoft Technology Licensing, Llc | Managing notifications related to collaboratively edited electronic documents based on user roles |
CN106682879A (en) * | 2016-12-29 | 2017-05-17 | 北京中船信息科技有限公司 | Integrated design flow standard system |
US10977434B2 (en) | 2017-07-11 | 2021-04-13 | Asana, Inc. | Database model which provides management of custom fields and methods and apparatus therfor |
US10623359B1 (en) | 2018-02-28 | 2020-04-14 | Asana, Inc. | Systems and methods for generating tasks based on chat sessions between users of a collaboration environment |
US11138021B1 (en) | 2018-04-02 | 2021-10-05 | Asana, Inc. | Systems and methods to facilitate task-specific workspaces for a collaboration work management platform |
US10613735B1 (en) | 2018-04-04 | 2020-04-07 | Asana, Inc. | Systems and methods for preloading an amount of content based on user scrolling |
US10785046B1 (en) * | 2018-06-08 | 2020-09-22 | Asana, Inc. | Systems and methods for providing a collaboration work management platform that facilitates differentiation between users in an overarching group and one or more subsets of individual users |
US10616151B1 (en) | 2018-10-17 | 2020-04-07 | Asana, Inc. | Systems and methods for generating and presenting graphical user interfaces |
US10956845B1 (en) | 2018-12-06 | 2021-03-23 | Asana, Inc. | Systems and methods for generating prioritization models and predicting workflow prioritizations |
US11568366B1 (en) | 2018-12-18 | 2023-01-31 | Asana, Inc. | Systems and methods for generating status requests for units of work |
US11113667B1 (en) * | 2018-12-18 | 2021-09-07 | Asana, Inc. | Systems and methods for providing a dashboard for a collaboration work management platform |
US11782737B2 (en) | 2019-01-08 | 2023-10-10 | Asana, Inc. | Systems and methods for determining and presenting a graphical user interface including template metrics |
US10684870B1 (en) | 2019-01-08 | 2020-06-16 | Asana, Inc. | Systems and methods for determining and presenting a graphical user interface including template metrics |
US11204683B1 (en) | 2019-01-09 | 2021-12-21 | Asana, Inc. | Systems and methods for generating and tracking hardcoded communications in a collaboration management platform |
US11341445B1 (en) | 2019-11-14 | 2022-05-24 | Asana, Inc. | Systems and methods to measure and visualize threshold of user workload |
US11783253B1 (en) | 2020-02-11 | 2023-10-10 | Asana, Inc. | Systems and methods to effectuate sets of automated actions outside and/or within a collaboration environment based on trigger events occurring outside and/or within the collaboration environment |
US11599855B1 (en) | 2020-02-14 | 2023-03-07 | Asana, Inc. | Systems and methods to attribute automated actions within a collaboration environment |
US11455601B1 (en) | 2020-06-29 | 2022-09-27 | Asana, Inc. | Systems and methods to measure and visualize workload for completing individual units of work |
US11449836B1 (en) | 2020-07-21 | 2022-09-20 | Asana, Inc. | Systems and methods to facilitate user engagement with units of work assigned within a collaboration environment |
US11568339B2 (en) | 2020-08-18 | 2023-01-31 | Asana, Inc. | Systems and methods to characterize units of work based on business objectives |
US11769115B1 (en) | 2020-11-23 | 2023-09-26 | Asana, Inc. | Systems and methods to provide measures of user workload when generating units of work based on chat sessions between users of a collaboration environment |
US11405435B1 (en) | 2020-12-02 | 2022-08-02 | Asana, Inc. | Systems and methods to present views of records in chat sessions between users of a collaboration environment |
US11694162B1 (en) | 2021-04-01 | 2023-07-04 | Asana, Inc. | Systems and methods to recommend templates for project-level graphical user interfaces within a collaboration environment |
US11676107B1 (en) | 2021-04-14 | 2023-06-13 | Asana, Inc. | Systems and methods to facilitate interaction with a collaboration environment based on assignment of project-level roles |
US11553045B1 (en) | 2021-04-29 | 2023-01-10 | Asana, Inc. | Systems and methods to automatically update status of projects within a collaboration environment |
US11803814B1 (en) | 2021-05-07 | 2023-10-31 | Asana, Inc. | Systems and methods to facilitate nesting of portfolios within a collaboration environment |
US11792028B1 (en) | 2021-05-13 | 2023-10-17 | Asana, Inc. | Systems and methods to link meetings with units of work of a collaboration environment |
US11809222B1 (en) | 2021-05-24 | 2023-11-07 | Asana, Inc. | Systems and methods to generate units of work within a collaboration environment based on selection of text |
US12093859B1 (en) | 2021-06-02 | 2024-09-17 | Asana, Inc. | Systems and methods to measure and visualize workload for individual users |
US11756000B2 (en) | 2021-09-08 | 2023-09-12 | Asana, Inc. | Systems and methods to effectuate sets of automated actions within a collaboration environment including embedded third-party content based on trigger events |
US11635884B1 (en) | 2021-10-11 | 2023-04-25 | Asana, Inc. | Systems and methods to provide personalized graphical user interfaces within a collaboration environment |
US12093896B1 (en) | 2022-01-10 | 2024-09-17 | Asana, Inc. | Systems and methods to prioritize resources of projects within a collaboration environment |
US12118514B1 (en) | 2022-02-17 | 2024-10-15 | Asana, Inc. | Systems and methods to generate records within a collaboration environment based on a machine learning model trained from a text corpus |
US11836681B1 (en) | 2022-02-17 | 2023-12-05 | Asana, Inc. | Systems and methods to generate records within a collaboration environment |
US11997425B1 (en) | 2022-02-17 | 2024-05-28 | Asana, Inc. | Systems and methods to generate correspondences between portions of recorded audio content and records of a collaboration environment |
US12051045B1 (en) | 2022-04-28 | 2024-07-30 | Asana, Inc. | Systems and methods to characterize work unit records of a collaboration environment based on stages within a workflow |
US11863601B1 (en) | 2022-11-18 | 2024-01-02 | Asana, Inc. | Systems and methods to execute branching automation schemes in a collaboration environment |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030028525A1 (en) * | 2001-08-01 | 2003-02-06 | Santos Richard A. | System for and method of determining and using subject matter experts in a forum environment |
US20040024875A1 (en) * | 2002-07-30 | 2004-02-05 | Microsoft Corporation | Schema-based services for identity-based access to device data |
US20040243422A1 (en) * | 2003-05-30 | 2004-12-02 | Weber Goetz M. | Event management |
US8856807B1 (en) * | 2011-01-04 | 2014-10-07 | The Pnc Financial Services Group, Inc. | Alert event platform |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1339002A1 (en) | 2001-02-28 | 2003-08-27 | Sap Ag | Computer system for business applications with alert notification |
US20100199184A1 (en) * | 2009-01-30 | 2010-08-05 | Yahoo! Inc. | Prioritizing vitality events in a social networking system |
US20130238725A1 (en) * | 2012-03-12 | 2013-09-12 | Unisys Corporation | Chat and notification services for a web-based conference collaboration tool |
-
2015
- 2015-08-27 US US14/838,084 patent/US10063507B2/en active Active
- 2015-08-28 AU AU2015218562A patent/AU2015218562B2/en active Active
-
2018
- 2018-07-18 US US16/038,769 patent/US20190014068A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030028525A1 (en) * | 2001-08-01 | 2003-02-06 | Santos Richard A. | System for and method of determining and using subject matter experts in a forum environment |
US20040024875A1 (en) * | 2002-07-30 | 2004-02-05 | Microsoft Corporation | Schema-based services for identity-based access to device data |
US20040243422A1 (en) * | 2003-05-30 | 2004-12-02 | Weber Goetz M. | Event management |
US8856807B1 (en) * | 2011-01-04 | 2014-10-07 | The Pnc Financial Services Group, Inc. | Alert event platform |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12079293B2 (en) * | 2021-12-23 | 2024-09-03 | Atlassian Pty Ltd. | System and graphical user interface for generating document space recommendations for an event feed of a content collaboration platform |
Also Published As
Publication number | Publication date |
---|---|
AU2015218562B2 (en) | 2016-12-15 |
US10063507B2 (en) | 2018-08-28 |
US20160072750A1 (en) | 2016-03-10 |
AU2015218562A1 (en) | 2016-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10063507B2 (en) | Digital collaboration process enablement tool | |
US20190333025A1 (en) | Providing an opportunity for redundant meeting invitees to opt out | |
US11062220B2 (en) | Integrated virtual cognitive agents and message communication architecture | |
US9026647B2 (en) | Systems and methods for a social media network/business platform interface | |
US11575772B2 (en) | Systems and methods for initiating processing actions utilizing automatically generated data of a group-based communication system | |
US9124658B2 (en) | Crowdsourced content publication platform | |
US20210149688A1 (en) | Systems and methods for implementing external application functionality into a workflow facilitated by a group-based communication system | |
US11815936B2 (en) | Providing contextually-relevant database content based on calendar data | |
US9563878B2 (en) | System and method for intelligent data mapping, including discovery, identification, correlation and exhibit of CRM related communication data | |
US11734651B2 (en) | Rendering related content prior to an event in a group-based communication interface | |
US10510026B1 (en) | Electronic calendaring system and method determining redundant meeting invitees based on a meeting composition score | |
US20170039204A1 (en) | Setting expiration of social media posts | |
US20220038868A1 (en) | Identifying decisions and rendering decision records in a group-based communication interface | |
KR20160132047A (en) | Communication event history | |
US11709721B2 (en) | Issue tracking system having temporary notification suppression corresponding to group activity | |
US11861380B2 (en) | Systems and methods for rendering and retaining application data associated with a plurality of applications within a group-based communication system | |
US11553012B2 (en) | System and method of intelligently sharing conference content | |
WO2017064548A1 (en) | Organization, analysis, and management of digital interactions on networked computers | |
US9954809B2 (en) | Embedding and executing commands in messages | |
US11637908B2 (en) | Apparatus, method, and computer program product for modifying user interfaces based on an application context-based concentration mode status | |
US9935860B2 (en) | Activity stream based collaboration | |
JP2013003880A (en) | Consent making support device, consent making support program, and consent making support method | |
CN116233077A (en) | Data processing method and device | |
AU2015264893B2 (en) | An intelligent social feed generator | |
US11848905B1 (en) | System and method of managing an online communication group |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |