US-12625666-B2 - System and method for providing shared sessions on a collaborative platform
Abstract
Examples enable a shared session for a collaborative platform where a user can elect to become a presenter of a shared session where the user can share their view state of a shared content of the collaborative platform. The recipients of the shared session can participate without navigating away or leaving the collaborative platform.
Inventors
- Avantika Gomes
- Emily Lin Hasham
- Jenny Wen
- Nicolle Matson
Assignees
- Figma, Inc.
Dates
- Publication Date
- 20260512
- Application Date
- 20240507
Claims (20)
- 1 . A network computer system comprising: a memory sub-system to store a set of instructions; one or more processors that operate to execute a set of instructions, the set of operations causing the network computer system to perform operations comprising: enabling a plurality of users to operate corresponding computing devices to collaborate on a shared workspace file, each user of the plurality of users accessing the shared workspace file at the same time to view and update the shared workspace file; enabling at least a first user of the plurality of users to operate a first computing device and provide a first input to trigger a shared session, the first input identifying the first user as a presenter of the shared session; upon the shared session being triggered, initiating a shared session joining countdown timer on a computing device of at least a subset of the plurality of the computing devices, the subset including one or more computing devices of the plurality of computing devices other than the first computing device, the shared session joining countdown timer being associated with a time window in which users of computing devices in the subset of the plurality of computing devices are allowed to join or decline to join the shared session; enabling a corresponding user of each computing device of the subset to make a selection, while the shared session joining countdown timer is in progress, as to whether the computing device is to join or not join the shared session; upon termination of any shared session joining countdown timer on a respective computing device of the subset where the corresponding user does not make the selection, implement a default selection for joining the shared session for that computing device; and transmitting view data generated from a first computing device of the first user to each computing device of the subset that has joined the shared session, to cause each computing device to mirror a view state of the shared workspace file as rendered on the first computing device.
- 2 . The network computer system of claim 1 , wherein the operations further comprise: causing the first computing device to generate and transmit view data to the network computer system, the view data including parametrized information defining the view state of the shared workspace file as rendered on the first computing device.
- 3 . The network computer system of claim 2 , wherein the parametrized information identifies one or more of (i) a portion of the shared workspace file that is rendered on the first computing device, (ii) a magnification level of a view of the rendered workspace file, and/or (iii) position information that identifies a location of a cursor on the first computing device.
- 4 . The network computer system of claim 3 , wherein enabling the corresponding user of each computing device of the subset to make the selection includes transmitting an invitation to each computing device of the subset, the invitation enabling the corresponding user of the computing device to join or not join the shared session.
- 5 . The network computer system of claim 4 , wherein in response to a second user declining to join the shared session, enabling the second user to continue to collaborate on the workspace while transmitting the view data to each computing device of the subset where the selection is made to join the shared session.
- 6 . The network computer system of claim 1 , wherein initiating the shared session countdown timer on the computing device of the subset of includes transmitting timer data to each computing device of the subset to cause the computing device to independently implement a countdown timer.
- 7 . The network computer system of claim 1 , wherein the operations include: initiating a countdown timer on the first computing device, the countdown timer indicating a time when view data generated from the first computing device is transmitted to each computing device of the subset.
- 8 . The network computer system of claim 1 , wherein the operation include: enabling at least a second user of the plurality of users to operate a second computing device to provide a second input to trigger a change in presenter for the shared session, and making the second user presenter by triggering a second computing device of the second user to generate view data, and retransmitting the view data to other computing devices of the subset and the first computing device.
- 9 . The network computer system of claim 8 , where the operations include: retransmitting the view data generated from the second computing device to other computing devices of the subset and the first computing device.
- 10 . The network computer system of claim 9 , further comprising: automatically transmitting shared session data of the second computing device to each computing device of the subset, so that a transition of the presenting computing device from the first computing device to the second computing device is seamless.
- 11 . A computer-implemented method comprising: enabling a plurality of users to operate corresponding computing devices to collaborate on a shared workspace file, each user of the plurality of users accessing the shared workspace file at the same time to view and update the shared workspace file; enabling at least a first user of the plurality of users to operate a first computing device and provide a first input to trigger a shared session, the first input identifying the first user as a presenter of the shared session; upon the shared session being triggered, initiating a shared session joining countdown timer on a computing device of at least a subset of the plurality of the computing devices, the subset including one or more computing devices of the plurality of computing devices other than the first computing device, the shared session joining countdown timer being associated with a time window in which users of computing devices in the subset of the plurality of computing devices are allowed to join or decline to join the shared session; enabling a corresponding user of each computing device of the subset to make a selection, while the shared session joining countdown timer is in progress, as to whether the computing device is to join or not join the shared session; upon termination of any shared session joining countdown timer on a respective computing device of the subset where the corresponding user does not make the selection, implement a default selection for joining the shared session for that computing device; and transmitting view data generated from a first computing device of the first user to each computing device of the subset that has joined the shared session, to cause each computing device to mirror a view state of the shared workspace file as rendered on the first computing device.
- 12 . The method of claim 11 , wherein the operations further comprise: causing the first computing device to generate and transmit view data to a network computer system, the view data including parametrized information defining the view state of the shared workspace file as rendered on the first computing device.
- 13 . The method of claim 12 , wherein the parametrized information identifies one or more of (i) a portion of the shared workspace file that is rendered on the first computing device, (ii) a magnification level of a view of the rendered workspace file, and/or (iii) position information that identifies a location of a cursor on the first computing device.
- 14 . The method of claim 13 , wherein enabling the corresponding user of each computing device of the subset to make the selection includes transmitting an invitation to each computing device of the subset, the invitation enabling the corresponding user of the computing device to join or not join the shared session.
- 15 . The method of claim 14 , wherein in response to a second user declining to join the shared session, enabling the second user to continue to collaborate on the workspace while transmitting the view data to each computing device of the subset where the selection is made to join the shared session.
- 16 . The method of claim 11 , wherein initiating the shared session countdown timer on the computing device of the subset of includes transmitting timer data to each computing device of the subset to cause the computing device to independently implement a countdown timer.
- 17 . The method of claim 11 , wherein the operations include: initiating a countdown timer on the first computing device, the countdown timer indicating a time when view data generated from the first computing device is transmitted to each computing device of the subset.
- 18 . The method of claim 11 , further comprising enabling at least a second user of the plurality of users to operate a second computing device to provide a second input to trigger a change in presenter for the shared session, and making the second user presenter by triggering a second computing device of the second user to generate view data, and retransmitting the view data to other computing devices of the subset and the first computing device.
- 19 . The method of claim 18 , further comprising: retransmitting the view data generated from the second computing device to other computing device.
- 20 . A non-transitory computer-readable medium that stores instructions, which when executed by one or more processors of a computer system, cause the computer system to perform operations comprising: enabling a plurality of users to operate corresponding computing devices to collaborate on a shared workspace file, each user of the plurality of users accessing the shared workspace file at the same time to view and update the shared workspace file; enabling at least a first user of the plurality of users to provide a first input to trigger a shared session, the first input identifying the first user as a presenter of the shared session; upon the shared session being triggered, initiating a shared session joining countdown timer on a computing device of at least a subset of the plurality of the computing devices, the subset including one or more computing devices of the plurality of computing devices other than the first computing device, the shared session joining countdown timer being associated with a time window in which users of computing devices in the subset of the plurality of computing devices are allowed to join or decline to join the shared session; enabling a corresponding user of each computing device of the subset to make a selection, while the shared session joining countdown timer is in progress, as to whether the computing device is to join or not join the shared session; upon termination of any shared session joining countdown timer on a respective computing device of the subset where the corresponding user does not make the selection, implement a default selection for joining the shared session for that computing device; and transmitting view data generated from a first computing device of the first user to each computing device of the subset that has joined the shared session, to cause each computing device to mirror a view state of the shared workspace file as rendered on the first computing device.
Description
RELATED APPLICATIONS This application claims benefit of priority to Provisional U.S. Patent Application No. 63/464,627, filed May 7, 2023; the aforementioned priority application being hereby incorporated by reference in its entirety. TECHNICAL FIELD Examples described herein relate to a collaborative platform, and more specifically, a system and method for providing shared sessions on a collaborative platform. BACKGROUND Software design tools have many forms and applications. In the realm of application user interfaces, for example, software design tools require designers to blend functional aspects of a program with aesthetics and even legal requirements, resulting in a collection of pages which form the user interface of a software application product. Product designers and developers who collaborate on projects, including product design projects, often find it challenging to track and share product development progress, in addition to other changing objectives and requirements as a product design project evolves. Synchronous meetings can bring myriad cross-functional voices into the design process and help teams develop and refine ideas together. During such live collaborative sessions, designers are looking for ways to ensure their collaborators are focused on the right parts of their work product content and files. They may desire ways to review their designs in a more timely, collaborative and focused manner, with the ability to call their attention to, or direct their members of their collaborative group to, a specific part of workspace files in order to share progress, context and to update project and product requirements as well as instructions related thereto. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 illustrates a collaborative platform for initiating shared sessions, according to one or more embodiments. FIG. 2A illustrate an example method for initiating a shared session on collaborative platform, according to one or more embodiments. FIG. 2B illustrates an example method for implementing a shared session for a group of computing devices, according to one or more embodiments. FIG. 3A through FIG. 3C illustrate example interfaces for a shared session provided through a collaborative platform, according to one or more embodiments. FIG. 4A through FIG. 4D illustrate additional examples of interfaces for a shared session provided through a collaborative platform, according to one or more embodiments. FIG. 5 illustrates a computer system on which one or more embodiments can be implemented. FIG. 6 illustrates a user computing device for use with one or more examples, as described. DETAILED DESCRIPTION Embodiments herein enable user devices interconnected within a collaborative platform in a network computing system to facilitate workshops, meetings, and team exercises in accordance with a shared canvas. Embodiments allow a particular collaborator (referred to herein as a presenter) within a group of collaborators, to initiate gathering others in the group of collaborators to “follow” their view of a shared canvas that relates to a collaborative project undertaken. The presenter can be designated as such upon requesting other collaborators in a product design file, for instance, to follow the presenter around a shared canvas. In examples, the shared canvas can render a portion of a design file generated with a design application. In variations, the shared canvas can render other types of content, such as content generated through use of a collaborative a whiteboarding application, graphic design application (e.g., for use in creating slides), or coding file. Typically, among a group of collaborators across a networked computing system, simply screen-sharing content among collaborators, as is common, can present significant communication and continuity challenges. Design files, for example, can be intricate and complex, where communication about specific elements or aspects becomes difficult to reference with particularity. Through examples as described, a presenter is able to focus a user to specific aspects of a shared canvas, to, for example, (i) demonstrate steps for creating or editing attributes of a shared design; (ii) communicate verbally (e.g., through a shared or associated audio channels) or through text about specific aspects of the shared design; and/or (iii) gather collaborators for an online group meeting regarding or pertaining to content rendered from a workspace file (e.g., whiteboarding application, graphic design application, etc.). According to some examples, a network computer system enables collaborators to follow a presenter who navigates, in real time, a given work-space or file. Upon initiation of a shared session, the network computer system synchronizes the view of collaborators to be the same as the view of the presenter. Accordingly, if the presenter makes changes to their view of the shared canvas, the network computer system detects the changes and then propagates those