A client system comprising:
- a processor;
- and
- a memory storing instructions that, when executed by the processor, cause the processor to:
- receive a first request to form one or more connections between a first user of a group of users and a first subgroup of users of the group of users;
- receive a second request to form one or more connections between a second user of the group of users and a second subgroup of users of the group of users;
- establish the one or more connections within the client system between the first user of the group of users and the first subgroup of users;
- establish the one or more connections within the client system between the second user of the group of users and the second subgroup of users of the group of users;
- set up a first group of users as participants of a first synchronized presentation session, the first synchronized presentation session being a first shared session to view an on-demand stream enabled broadcast among the first group of users, the first group of users not participating in creation of the on-demand stream enabled broadcast but participating in sharing viewing of the on-demand stream enable broadcast, the participants being determined based on the established one or more connections between the first user of the group of users and the one or more of the first subgroup of users of the group of users, the first user of the group of users having initiated the synchronized presentation session, the one or more connections between the first user of the group of users and each of one or more of the first subgroup of users being established prior to the initiation of the synchronized presentation session by the first user of the group of users, wherein one of the first group of users has control of the synchronized presentation session to stop, fast forward, or reverse the synchronized presentation session, while others of the first group of users have limited or no control of the synchronized presentation session;
- set up a second group of users as participants of a second synchronized presentation session, the second synchronized presentation session being a second shared session to view the on-demand stream enabled broadcast among the second group of users, the second group of users not participating in creation of the on-demand stream enabled broadcast but participating in sharing viewing of the on-demand stream enabled broadcast, the participants being determined based on the established one or more connections between the second user of the group of users and the second subgroup of the group of users, the second user of the group of users having initiated the synchronized presentation session, the one or more connections between the second user of the group of users and each of the second subgroup of the group of users being established prior to the initiation of the synchronized presentation by the second user of the group of users, wherein one of the second group of users has control of the synchronized presentation session to stop, fast forward, or reverse the synchronized presentation session, while others users of the second group of users have limited or no control of the synchronized presentation session;
- present first media content to a display device of at least one of the first group of users upon start of the first synchronized presentation session;
- present the first media content to a display device of at least one of the second group of users upon start of the second synchronized presentation session;
- transmit a first signal to external systems associated with one or more of the participants of the first synchronized presentation session upon the start of the first synchronized presentation session, such that the external systems associated with the one or more of the participants of the first synchronized presentation session present second media content synchronized with the first media content;
- transmit a second signal to the external systems associated with one or more of the participants of the second synchronized presentation session upon the start of the second synchronized presentation session, such that the external systems associated with the one or more of the participants of the second synchronized presentation session present second media content synchronized with the first media content, the second media content including a first plurality of instant messages among participants of the first synchronized presentation and a second plurality of instant messages among participants of the second synchronized presentation;
- provide the first plurality of instant messages to be displayed on the display device of at least one of the first group of users during the first synchronized presentation session;
- and
- provide the second plurality of instant messages to be displayed on the display device of at least one of the second group of users during the second synchronized presentation session.