METHOD AND SYSTEM FOR COMMUNICATION BETWEEN A SERVER AND A CLIENT DEVICE
Systems and methods providing users with a rich web experience are disclosed. In one embodiment, a client and at least one server are in communication using a dual communication link. In another embodiment, a markup language based instant messaging application is disclosed. The instant messaging application may include group instant messaging. The instant messaging application may also provide group member persistence and message persistence at the server. In another embodiment, a card based web application is disclosed, where the card information and character may be shared with other users or within a group. The cards may also be configurable by users.
1 . A method comprising:
causing to be displayed, at a first client device, through a group messaging application, a first card that contains first content that is currently shared with only a set of users that includes a first user of the first client device and a second user of a second client device that is different than the first client device;
while the first card is displayed, causing to be displayed, at the first client device, through the group messaging application, a second card that is different than the first card and that contains second content that is shared with only the set of users;
wherein the method is performed by one or more computing devices.
2 . The method of claim 1 , wherein the first card includes HTML or XML for displaying the first content.
3 . The method of claim 1 , wherein:
the first content is of a first type;
the second content is of a second type that is different than the first type.
4 . The method of claim 3 , wherein the first type is one of text, a file, an image, audio, video, or a poll.
5 . The method of claim 1 , wherein:
the first content of the first card comprises a first conversation between the set of users;
the second content of the second card comprises a second conversation, that is different than the first conversation, between the set of users.
6 . The method of claim 1 , wherein causing the first card and the second card to be displayed comprises causing the first card and the second card to be displayed within a single window of the group messaging application.
7 . The method of claim 1 , further comprising:
receiving input that selects the first card;
in response to receiving the input, causing at least a portion of a version of the first card to be displayed outside of the single window;
wherein the version of the first card is larger than the first card.
8 . The method of claim 1 , further comprising:
receiving, from a user, at the first client device, input regarding customization data;
in response receiving the input, applying the customization data to the first card, wherein the customization data includes one or more of a color of the first card, a background image in the first card, a size or font of text in the first card, or an animation to play within the first card.
9 . The method of claim 8 , further comprising:
in response to receiving the input, causing the customization data to be applied to a corresponding card that is displayed on a client device of each other user in the set of users.
10 . The method of claim 8 , further comprising:
storing the customization data in a particular file;
storing the first content in a markup language file that is separate from the particular file.
11 . The method of claim 1 , wherein:
the first card is shared among a plurality of client devices that includes the first client device, the second client device, and one or more other client devices.
12 . The method of claim 1 , further comprising:
in response to user input and while displaying the first card and the second card, creating a new card that is used to share content with only the set of users.
13 . The method of claim 1 , further comprising:
in response to receiving user input that indicates text data:
adding the text data to the first card;
causing the text data to be shared with each user in the set of users.
14 . The method of claim 1 , further comprising:
in response to receiving input that indicates a Uniform Resource Locator (URL):
causing a web page to be rendered and displayed in the first card and in a different card that is displayed to each other user in the set of users.
15 . The method of claim 1 , further comprising:
while causing the first card and the second card to be displayed, causing a plurality of options to be displayed;
wherein each option of the plurality of options is associated with a different set of one or more cards and a different set of users;
wherein the first card and the second card are associated with a first option and the set of users;
in response to input that selects a second option of the plurality of options:
ceasing to display the first card and the second card, and
causing, to be displayed concurrently, a third card and a fourth card that are associated with the second option and a second set of users that is different than the set of users.
16 . One or more non-transitory computer-readable media storing instructions which, when executed by one or more processors, cause:
causing to be displayed, at a first client device, through a group messaging application, a first card that contains first content that is currently shared with only a set of users that includes a first user of the first client device and a second user of a second client device that is different than the first client device;
while the first card is displayed, causing to be displayed, at the first client device, through the group messaging application, a second card that is different than the first card and that contains second content that is shared with only the set of users.
17 . The one or more computer-readable media of claim 16 , wherein the first card includes HTML or XML for displaying the first content.
18 . The one or more computer-readable media of claim 16 , wherein:
the first content is of a first type;
the second content is of a second type that is different than the first type.
19 . The one or more computer-readable media of claim 18 , wherein the first type is one of text, a file, an image, audio, video, or a poll.
20 . The one or more computer-readable media of claim 16 , wherein:
the first content of the first card comprises a first conversation between the set of users;
the second content of the second card comprises a second conversation, that is different than the first conversation, between the set of users.
21 . The one or more computer-readable media of claim 16 , wherein causing the first card and the second card to be displayed comprises causing the first card and the second card to be displayed within a single window of the group messaging application.
22 . The one or more computer-readable media of claim 16 , wherein the instructions, when executed by the one or more processors, further cause:
receiving input that selects the first card;
in response to receiving the input, causing at least a portion of a version of the first card to be displayed outside of the single window;
wherein the version of the first card is larger than the first card.
23 . The one or more computer-readable media of claim 16 , wherein the instructions, when executed by the one or more processors, further cause:
receiving, from a user, at the first client device, input regarding customization data;
in response receiving the input, applying the customization data to the first card, wherein the customization data includes one or more of a color of the first card, a background image in the first card, a size or font of text in the first card, or an animation to play within the first card.
24 . The one or more computer-readable media of claim 23 , wherein the instructions, when executed by the one or more processors, further cause:
in response to receiving the input, causing the customization data to be applied to a corresponding card that is displayed on a client device of each other user in the set of users.
25 . The one or more computer-readable media of claim 23 , wherein the instructions, when executed by the one or more processors, further cause:
storing the customization data in a particular file;
storing the first content in a markup language file that is separate from the particular file.
26 . The one or more computer-readable media of claim 16 , wherein:
the first card is shared among a plurality of client devices that includes the first client device, the second client device, and one or more other client devices.
27 . The one or more computer-readable media of claim 16 , wherein the instructions, when executed by the one or more processors, further cause:
in response to user input and while displaying the first card and the second card, creating a new card that is used to share content with only the set of users.
28 . The one or more computer-readable media of claim 16 , wherein the instructions, when executed by the one or more processors, further cause:
in response to receiving user input that indicates text data:
adding the text data to the first card;
causing the text data to be shared with each user in the set of users.
29 . The one or more computer-readable media of claim 16 , wherein the instructions, when executed by the one or more processors, further cause:
in response to receiving input that indicates a Uniform Resource Locator (URL):
causing a web page to be rendered and displayed in the first card and in a different card that is displayed to each other user in the set of users.
30 . The one or more computer-readable media of claim 16 , wherein the instructions, when executed by the one or more processors, further cause:
while causing the first card and the second card to be displayed, causing a plurality of options to be displayed;
wherein each option of the plurality of options is associated with a different set of one or more cards and a different set of users;
wherein the first card and the second card are associated with a first option and the set of users;
in response to input that selects a second option of the plurality of options:
ceasing to display the first card and the second card, and
causing, to be displayed concurrently, a third card and a fourth card that are associated with the second option and a second set of users that is different than the set of users.