One or more embodiments described below relate to the electrical, electronic and computer arts, and more particularly, to remote collaboration and the like.
Troubleshooting problems (e.g., problem solving) often involves an interaction between people experiencing the problem, and help-givers (e.g., people solving the problem). In an industrial setting, the person experiencing the problem may be a technician, and the help-giver may be a formal information source at a location remote from the technician. Problem solving may also involve informal information sources such as conversations with peers that result in knowledge sharing.
Systems and methods are desired which provide efficient mobile troubleshooting and collaboration.
In accordance with an embodiment of the invention, a system is provided. The system includes a mobile workspace coupled to a communications network, the workspace comprising: an interface including: two or more selectable media tools for communicating on the workspace, and one or more contacts, wherein the one or more contacts are selectable to participate in a synchronized communication session with a user on the mobile workspace; wherein the interface is operative to: receive a user selection of one or more media tools for communicating on a workspace; receive a user selection of one or more contacts to participate in the communication session with the user on the workspace; receive content; a display including at least one of content, one or more selected contacts, an annotation toolbar, media tools, and a sharable canvas space; at least one processor to: synchronize the one or more selected contacts with the user on the mobile workspace, wherein each of the synchronized selected contacts and the synchronized user accesses the mobile workspace; and a memory to store the mobile workspace.
In accordance with another embodiment of the invention, a method is provided. The method includes providing a mobile workspace on a server, wherein the server is coupled to a communications network; providing a user interface including: two or more selectable media tools for communicating on the workspace, one or more contacts, wherein the one or more contacts are selectable to participate in a synchronized communication session with a user on the mobile workspace; selecting one or more contacts to participate in the communication session with the user on the workspace; synchronizing the one or more selected contacts with the user on the mobile workspace, wherein each of the synchronized selected contacts and the synchronized user accesses the mobile workspace; providing content to the mobile workspace; and storing the content to the mobile workspace on the server.
As used herein, “facilitating” an action includes performing the action, making the action easier, helping to carry the action out, or causing the action to be performed. Thus, by way of example and not limitation, instructions executing on one processor might facilitate an action carried out by instructions executing on a remote processor, by sending appropriate data or commands to cause or aid the action to be performed. For the avoidance of doubt, where an actor facilitates an action by other than performing the action, the action is nevertheless performed by some entity or combination of entities.
One or more embodiments of the invention or elements thereof can be implemented in the form of a computer program product including a computer readable storage medium with computer usable program code for performing the method steps indicated. Furthermore, one or more embodiments of the invention or elements thereof can be implemented in the form of a system (or apparatus) including a memory, and at least one processor that is coupled to the memory and operative to perform exemplary method steps. Yet further, in another aspect, one or more embodiments of the invention or elements thereof can be implemented in the form of means for carrying out one or more of the method steps described herein; the means can include (i) hardware module(s), (ii) software module(s) stored in a computer readable storage medium (or multiple such media) and implemented on a hardware processor, or (iii) a combination of (i) and (ii); any of (i)-(iii) implement the specific techniques set forth herein.
Other features and aspects of the present invention will become more fully apparent from the following detailed description, the appended claims and the accompanying drawings.
The construction and usage of embodiments will become readily apparent from consideration of the following specification as illustrated in the accompanying drawings, in which like reference numerals designate like parts, and wherein:
Some individuals and industries provide mobile devices (e.g., smartphones, tablets and other consumer wearable devices) to users to enable mobile troubleshooting and mobile collaboration. Mobile collaboration and problem solving may involve communication using multiple modalities (e.g., voice, instant messaging, video conferencing), sharing of documents from various repositories and collaboratively creating content that may enable problem solving. However, collaborating remotely on tasks (e.g., troubleshooting issues) is challenging on mobile devices because the relevant data may be scattered throughout a variety of single purpose applications, for example, the relevant data may be difficult to access repeatedly if the collaboration extends beyond a specific amount of time, and switching between modalities of communication may not be easy. Accordingly, a mobile collaboration application implemented as a website and a mobile application (“app”) may be provided A technical effect of embodiments of the invention is to provide a mobile collaboration application that may be configured to generate a collaborative workspace that includes elements to facilitate collaboration. Embodiments of the invention may provide remote troubleshooting of problems in real time. In particular, the collaboration app employs a client-server architecture that combines media/communication tools with content sharing features in persistent workspaces, which exist and are accessible after the real-time collaborative communication session has ended. The workspaces support smooth transitions between peer-to-peer and multi-party collaboration as well as individual modes of working when users are offline or want to work in a loosely-coupled way. In “tight mobility,” collaborators are synchronized in real-time, while in “loose mobility,” collaborators independently access contents and share information while still cooperating with others.
As used herein, the term “smartphone” refers to any cellular phone that is able to perform many of the functions of a computer, typically having a relatively large screen and an operating system capable of running general- and specific-purpose applications. As used herein, the term “tablet” refers to a general-purpose computer contained in a single panel, typically using a touch screen as the input device capable of running general- and specific-purpose applications. However, other input devices (e.g., keyboard, mouse, etc.) may be coupled to the tablet for use as input devices. Tablets may typically come loaded with a web browser and a variety of applications (“apps”). As used here, the term “app” refers to a self-contained program or piece of software designed to fulfill a particular purpose.
In general, the communication network 102 may include any number of different systems for transferring data, including one or more wide area networks (WANs) and/or local area networks (LANs) that enable the computing devices 104 and the servers 106 to communicate with each other. In some embodiments, the communication network 102 may include the Internet, including a global internetwork formed by logical and physical connections between multiple WANs and/or LANs. Alternately, or additionally, the communication network 102 may include one or more telephone networks, cellular networks, a fiber-optic network, a satellite network, an infrared network, a radio frequency network, any other type of network that may be used to transmit information between devices, and/or one or more wired and/or wireless networks such as, but not limited to Bluetooth access points, wireless access points, IP-based networks, or the like. The communication network 102 may also include servers that enable one type of network to interface with another type of network. Moreover, communication between communication network 102 and each of the depicted devices may proceed over any one or more currently or hereafter-known transmission protocols, such as Asynchronous Transfer Mode (ATM), Internet Protocol (IP), Hypertext Transfer Protocol (HTTP) and Wireless Application Protocol (WAP).
Each server 106 may provide at least one Web-accessible repository for storing and sharing a mobile collaboration application 108 (“collaboration app”) (
The mobile collaboration application 108 that is provided may, in general, be used to collaborate with remotely located contacts. The collaboration app 108 may have various components which are divided between the computing device 104 and the server 106. The various components are collectively referred to hereinafter as the “collaboration app 108.” Alternatively, the collaboration app 108 or equivalent functionality thereof may be provided in its entirety on the computing device 104, in which case the server 106 may be omitted.
The computing device 104 may include, but is not limited to, a desktop computer, a laptop computer, a tablet computer, a mobile phone, a smartphone, a personal digital assistant (PDA), or other suitable computing device. The computing device 104 may include at least one display 110 for presenting a user interface 302 (
Alternatively or additionally, the collaboration app 108 may be accessed on the computing device 104 via a browser (not shown) that communicates through the network 102 with the server 106 to download therefrom. In these embodiments, the collaboration app 108 is implemented as a runtime script that is executed in the browser in cooperation with the collaboration app 108 on the server 106 to perform one or more of the operations described herein.
Any of computing devices 104 may be used to access the collaboration app 108 stored in one of the servers 106, and additionally to store electronic files thereto according to some embodiments of the invention.
The devices of
Also in communication with the communication bus 204 is a communication port 206. The communication port 206 is used to transmit data to and to receive data from devices external to the server 106, such as computing devices 104. Such data may include, for example, any content added to the collaboration app 108. Any other suitable data may be transmitted/received. The communication port 206 is therefore preferably configured with hardware suitable to physically interface with desired external devices and/or network connections. For example, communication port 206 may comprise an Ethernet connection to a local area network through which the server 106 may receive and transmit information over the Web.
While information is typically input to the server 106 via the communication port 206, in some embodiments, the server 106 may also include an input device 208 in communication with the communication bus 204 to input information.
The server 106 may also include a RAM 210, connected to the communication bus 204 to provide the microprocessor 202 with fast data storage and retrieval. In this regard, processor-executable process steps being executed by the microprocessor 202 are typically stored temporarily in the RAM 210 and executed therefrom by the microprocessor 202. The ROM 212, in contrast, provides storage from which data can be retrieved but to which data cannot be stored. Accordingly, the ROM 212 is used to store invariant process steps and other data. One or both of the RAM 210 and the ROM 212 may communicate directly with the microprocessor 202 instead of over the communication bus 204.
In one or more embodiments, the server 106 includes a data storage device 214. The data storage device 214 stores, among other data, the collaboration app 108, and the processor executable process steps for executing the collaboration app 108. Data storage device 214 also includes a data repository 216 for storing electronic files/data associated with the collaboration app 108. In one or more embodiments, the collaboration app 108 communicates with data repository 216 to request and receive files therefrom and to store files therein.
The process steps stored in the data storage device 214 may be read from one or more of a computer-readable medium, such as a floppy disk, a CD-ROM, a DVD-ROM, a Zip™ disk, a magnetic tape, or a signal encoding the process steps, and then stored in the data storage device 214 in a compressed, uncompiled, and/or encrypted format. In alternative embodiments, hard-wired circuitry may be used in place of, or in combination with, processor-executable process steps for implementation of processes according to embodiments of the present invention. Thus, embodiments of the present invention are not limited to any specific combination of hardware and software.
Also stored in the data storage device 214 may be other unshown elements that may be necessary for operation of the server 106, such as an operation system, other applications, other data files, and “device drivers” for allowing the microprocessor 202 to interface with devices in communication with communication port 206. These elements are known to those skilled in the art, and are therefore not described in detail herein.
In one or more embodiments, the user interface 302 may include two or more user selectable media tools 304 for communicating on the workspace 300. The media tools 304 may include, for example, screen sharing 314, video 316, chat 318 and audio tools 320, for example. Other suitable media tools 304 may be used. Regarding the screen sharing tool 314, collaborators can take turns to share their screen and display to the other collaborators the content, such as photos and documents displayed on their screen. In some embodiments, the video tool 316 is in the form of a video channel that is solely associated with the particular workspace 300, and allows the collaborators to broadcast live videos (e.g., streaming video from a device camera). In one or more embodiments the chat tool 318 may provide the collaborators with a medium to exchange chat messages. Regarding the audio tool 320, an audio channel, akin to a teleconferencing line, may be solely associated with each workspace 300.
The annotation toolbar 306 may contain annotation tools such as freehand drawing, drawing of shapes, color selection, undo, redo, and erase. Other suitable annotation tools may be provided. In one or more embodiments, the annotation toolbar 306 may be accessible when a collaborator is viewing content, such as a document or picture, for example, which may be annotated. In one or more embodiments, the annotated content is automatically saved in the content bar 310. In one or more embodiments, the annotations may be color-coded, and additionally or alternatively labeled to provide authorship awareness/identification. For example, in
The participant bar 308 may include a list of current participants 322, who are participants currently viewing the workspace 300, a list of previous participants 324, who have previously participated in the workspace 300 but are no longer present in real time and a search field 326, which allows participants to invite additional participants. In one or more embodiments, when the user and participant(s) are participating in a communication session in real-time, per the Current Participant list, their communication may be referred to as “synchronized.” In one or more embodiments when the user or participant(s) is no longer participating in the communication session, this may be referred to as “asynchronous” communication or the user/participant is “disconnected” from the communication session. In one or more embodiments, the search field 326 allows searching for additional participants by name, role, or expertise keywords. Current participants may also invite a past participant to rejoin the workspace 300. As participants join and leave a workspace 300 (e.g., due to connectivity loss), they appear in the current and previous participants lists accordingly. In one or more embodiments, if a participant leaves a workspace, the participant may rejoin the workspace without being re-invited. In other words, the participant may not have to be re-invited to the workspace once they have been invited. In one or more embodiments, the participant may see the spaces they have participated in via the Spaces screen (
The content bar 310 may allow participants to add and share content 328 related to the collaboration issue. In one or more embodiments, the content 328 may include, for example, documents, images/photos, videos, comment(s), and audio file(s). Other suitable content may be included. In one or more embodiments, the collaborators have equal access rights to the content bar 310. In one or more embodiments, content 328 may be organized via at least one of collaborator ratings and comments, for example, related to the relevance of the content to the task at hand. In one or more embodiments, there may be no limit to the number of content objects 328 in the workspace 300. In one or more embodiments, a limit to the number of content objects 328 in the workspace may be a programmable parameter that may set by a user or an app developer, for example.
In one or more embodiments, the collaboration app 108 allows importing content 328 into the workspace 300 from external sources and allows exporting collaboration products to include in other workflows. In one or more embodiments, the collaboration products may be exported to any other computing device through email, for example.
Regarding adding content from an external source, a user is able to add a document or other content into the space for sharing from an external source, such as an internet browser (e.g., a website), a camera application on the computing tool 104, a photo gallery on the computing tool 104, or a document management app, for example. In one or more embodiments, once a user/participant clicks on the document/content in the external app, they have an option to open the content with the collaboration app 108. Selecting the collaboration app 108 launches the app 108 and provides the user/participants options to add the content to a new or existing space. The content appears in the content bar 310 of the selected space after addition.
Regarding exporting content, from the spaces screen 600 (
The canvas 312 is the area or space of the user interface 302 that is shared (“sharable space”) during the use of the screen-sharing tool 314. In one or more embodiments, the content 328 may be dragged and dropped into the canvas 312 from the content bar 310 for sharing and annotating via the annotation bar 306. In one or more embodiments, while sharing content 328 via the screen sharing tool 314, collaborators can use the video 316, chat 318 and audio 320 tools to communicate with other collaborators. An advantage that may be realized in the practice of some embodiments of the described systems and techniques is that having a single area for content sharing allows easy coordination of gaze and view focus.
The workspace 300 combines communication tools with content sharing in a single screen. In one or more embodiments, the workspace 300 employs mobile interaction design patterns such as infinite lists with scrolling, popovers, slideouts, and carousels.
Turning to
Initially, at S410, a mobile workspace 300 is provided via the collaboration app 108 on the server 106. In one or more embodiments, the server 106 is coupled to the communication network 104 and accessible thereby. In S412, the user interface 302 is provided to the workspace 300 via the collaboration app 108. As described above, the user interface 302 may include two or more user selectable media tools for communicating on the workspace, and one or more contacts. The one or more contacts are user selectable to participate in a synchronized communication session with a user on the workspace 300. Then in S414 one or more contacts are selected to participate in a communication session with the user on the workspace 300. Selection may be via highlighting, checkboxes, double-clicking, or any other suitable selection method. While the user and participants both use the workspace and collectively may be referred to as “collaborators,” to clarify the following explanation, the term “user” refers to the person creating the workspace 300 and the term “participant” refers to those of the contacts selected to participate in the communication session. Then in S416, the one or more selected contacts are synchronized with the user on the mobile workspace. As used herein “synchronous” means that the parties are in real-time communication with each other via the media tools 304, described above. In one or more embodiments, each of the synchronized selected contacts (participants) and the synchronized user accesses the mobile workspace. In S418, at least one content 328 is provided to the workspace 300. In one or more embodiments, the user may provide content 328 to the workspace 300 prior to synchronizing his with the participants. In one or more embodiments, the participants may provide content 328 to the workspace 300. In one or more embodiments, after the content 328 is added to the workspace 300, any of the collaborators may manipulate the content 328. For example, the content 328 may be annotated at least one of visually (e.g., a note or markings) and auditorily (e.g., an audible comment). In one or more embodiments, collaborators may add and view content 328 and navigate to other parts of the collaboration app 108 while another collaborator is sharing. The content 328 provided to the workspace 300 is stored on the server 106 in S420. An advantage that may be realized in the practice of one or more embodiments of the described systems and techniques is that once created, the workspace 300 and all content and annotations saved thereon persists after the communication session has ended in what is referred to as a “last synchronized view”. In one or more embodiments, the sessions may be saved every few minutes, for example. In one or more embodiments, the time period for saving a session may be user or programmatically defined. A collaborator is able to access the workspace 300 at any time. In one or more embodiments, a collaborator is able to access the “last synchronized view” of a workspace to view the history of annotations, content additions, etc. In one or more embodiments, the server 106 stores workspaces 300 as communication sessions and provides back-end services for communication and collaboration features.
The workspace 300 supports both online and offline use. The online mode refers to the real-time synchronized communication session. In one or more embodiments, in an offline mode, a collaborator may view the last-synchronized view of the past workspace 300. In some embodiments, in an offline mode, the participant information may not be viewed and real-time communication tools may not be accessed. In one or more embodiments, in an offline mode, content 328 may be added to the space 300, and this and older existing content may be annotated. In one or more embodiments, any changes made to a space 300 when offline are synchronized when the collaborator is online again. An advantage that may be realized in the practice of some embodiments of the described systems and techniques is that embodiments of the invention support tightly coupled collaboration in an online mode by providing real-time communication tools, and support loosely coupled collaboration in an offline mode.
With regard to
A spaces screen 600 is displayed in
Participants may be added as the task progresses. After a workspace 300 has been created, the user may access the contacts screen 700 illustrated in
A user may enter and edit profile information on the profile screen (not shown) after selection of the profile screen button 506. Profile information may be provided by employee databases. In one or more embodiments, users may enter keywords in their profile to describe their expertise.
A notifications screen 900 is displayed in
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
It should be noted that any of the methods described herein can include an additional step of providing a system comprising distinct software modules embodied on a computer readable storage medium; the modules can include, for example, any or all of the elements depicted in the block diagrams and/or described herein; by way of example and not limitation, a contacts module, a media tool module, and a mobile workspace module. The method steps can then be carried out using the distinct software modules and/or sub-modules of the system, as described above, executing on one or more hardware processors 202 (
This written description uses examples to disclose the invention, including the preferred embodiments, and also to enable any person skilled in the art to practice the invention, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the invention is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal languages of the claims. Aspects from the various embodiments described, as well as other known equivalents for each such aspects, can be mixed and matched by one of ordinary skill in the art to construct additional embodiments and techniques in accordance with principles of this application.
Those in the art will appreciate that various adaptations and modifications of the above-described embodiments can be configured without departing from the scope and spirit of the claims. Therefore, it is to be understood that the claims may be practiced other than as specifically described herein.