Maintaining Multiple Chat Relationships With A User

Samsung India Electronics Pvt. Ltd.
Granted App No 3695/DEL/2014 Patent 471725 Computer Science

Patent information

IP India · live record
Application number
3695/DEL/2014
Filing date
12 December 2014
Status
Granted
Legal status
Inforce
Publication number
25/2016
Publication type
INA
Invention field
Computer Science
Patent number
471725
Grant date
22 November 2023
Next renewal due
12 December 2026

Abstract

The invention relates to a method for maintaining a plurality of relationship behaviour with a participant in a plurality of group conversations of an instant messaging service. The method comprises receiving a first user input for controlling display of a message received from the participant in a first group conversation from amongst the plurality of group conversations, wherein the first user input is specific to the first group conversation; and filtering the message received from the participant in the first group conversation according to the first user input. Figure 1.

Applicants

1
India
Samsung India Electronics Pvt. Ltd. Logix Cyber Park, Plot No. C 28-29, Tower D - Ground to 10th Floor, Tower C - 7th to 10th Floor, Sector-62, Noida – 201301, Uttar Pradesh, India

Inventors

4
India
SHARMA, AnkurGanga Mandir Colony, RoopWas, Bharatpur, Rajasthan, India
India
GUPTA, Sachin KumarHouse No. 114, Bank Colony, Premier Nagar, Aligarh – 202001, Uttar Pradesh, India
India
RUSTAGI, VaibhavHouse No. 1004, Amrapali Village, Near KalaPathar, Indirapuram, Ghaziabad, Uttar Pradesh, India
India
KUMAR, VikasForest Colony, Chatra. District + P.O. – Chatra, Jharkhand – 825401, India

Specification

Show full textCollapse

The invention generally relates to instant messaging service. More particularly, the invention relates to maintaining multiple chat relationships with a user. BACKGROUND There is a growing usage of instant messaging service in recent times. Due to the rapid progress in development of internet and mobile services the instant messaging is spreading day by day. It also provides a very good medium for people to communicate with each other or a group of people in real time. The usage of instant messaging is observed both in personal as well as professional domains. The growth and spread of social networking has added more to its relevance. The methodologies of such systems have evolved from just being a one-one or one-many communication to being managing communications with respect to the relations between people or a group of people. People who are either directly or indirectly related over a network can communicate with each other through instant messaging. With such a huge growing number of people’s participation it is thus important to maintain dynamically the relationship between people. Some existing solutions pertain to different aspects and modes in a group conversation communication. As per existing solutions, a user can block a user or set of members in a group conversation session over instant messenger. Few solutions also talk about maintaining specific relation with specific members in that group conversation window. As per the current solutions, if a user prefers to block some particular member in that group conversation, the relationship between the two remains globally set. The user in cases where he blocks some members does not receive the input from those members. The existing solutions also point about flagging off selected content among specific members in a group conversation window. Despite the previously mentioned teachings, it can be said that there is still need to provide for improvements in this area of technology. 3 SUMMARY OF THE INVENTION In accordance with the purposes of the invention, the present invention as embodied and broadly described herein, provides a solution in the domain of group conversations over an instant messaging network. The user can communicate with a particular member of a group of members in a group conversation session. The user can be the administrator of the group conversation session or just a participating member. The solution also considers that the user can communicate with a group of people in active multiple parallel group conversation sessions. These parallel active group conversation sessions may include the same set of users, different set of users or some users that are common to these parallel running group conversation sessions. It is desirable by the user to be involved in such parallel and different sessions of group conversations that are running on different context or subject matter. The value of discussions in such sessions may be entirely different and independent from each other. The method and system according to the present invention rely on the conviction that the user can desire to communicate with other user or group of users preferably based on the context or subject matter of the group communication. As such, the user may prefer not to communicate with a certain user or group of user in an active group conversation over that subject matter. The user may feel that the communication from such users is of no value to him and annoying in particular. Therefore, he may desire to "disallow" such communication with those users in that group conversation session. Performing such an operation as described above, the user will not be made available the communications delivered into the group conversation by those selected users in the user's window. In this way, the user prefers to shield himself from the presumed annoying content to be presented to him. At the same time, this operation of the user may not affect the capacity of those users to actively communicate with other members in the same group conversation session. The user in this case also desires to communicate with a person or group of persons "disallowed" communication in a separate group conversation, which is ongoing in parallel, but on an entirely different context/subject matter. The user does not considers the inputs 4 from those members as annoying for this subject matter. Therefore, the user intends to "allow" the communications with such persons or selective persons from the above list. The system allows the user to practice such preference by providing him the option to "allow" communication with such users in an ongoing different group conversation session. The system at the same time does not affect the user’s preferences with respect to the selected members for other group conversation. Thus, the system allows users to maintain a different relationship status with respect to the same users/members in different group conversation sessions based on different contexts running parallel at the same instance. The system also provides the user flexibility of changing the relationship status at the run time in a group conversation session. Therefore, the user can "disallow" communication from certain members and can also revert the option for selected members in the same group conversation session. The system provides integrated menu options for the user to exercise such preference in runtime. The user when "disallows" communication from certain members may feel left out or may get out of sync from the ongoing group conversation as the user preferred not to view communication from those members. In such cases, the system provides the user with integrated option in the Menu. Utilising this option the user can view the input communication with respect to disallowed users in a separate preview window. The user may prefer to integrate some valid messages from such preview window, which could enable him to be in relevant sync with the ongoing conversation. The system provides much more flexibility to the user in terms of exercising his choice by providing a “partially allow” relationship behaviour. Once the user decides to set the above mentioned relationship behaviour he intends to view only the important context/phrase, or important word entered by the “partially disallowed” user. This will help the user to avoid the presumed annoying content and at the same time remain in active sync with the context in the ongoing group conversation. In this way, the proposed solution provides the user ability to manage the relationship status/behaviour with other members in multiple forms at the same time. The system thus manages many local relationships with respect to two users in multiple group conversation sessions running at the same time. The present solution provides user flexibility, preference, and choice in managing his relationship level for communication over the instant messaging 5 with a specified user or a group of specified users, that too dynamically and in a polymorphic manner. In this way, the user can manage his relationship access with others based on different contexts all running at the same time. These and other features as well as advantages will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings and claims. BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS: To further clarify advantages and aspects of the invention, a more particular description of the invention will be rendered by reference to specific embodiments thereof, which is illustrated in the appended drawings. It is appreciated that these drawings depict only typical embodiments of the invention and are therefore not to be considered limiting of its scope. The invention will be described and explained with additional specificity and detail with the accompanying drawings in which: Figure 1 illustrates an exemplary method for maintaining a plurality of relationship behaviour with a participant in a plurality of group conversations of an instant messaging service. Figure 2 illustrates an exemplary method for selective access of content in a group conversation of an instant messaging service. Figure 3 illustrates an exemplary computing system to implement above methods. Figures 4-9 illustrate a use case of the invention. Figure 10 illustrate client server architecture for implementing the invention. Figure 11 illustrates a block level representation of the client side system. Figure 12 provides a block level representation of the receiving unit at the client side. Figure 13 provides a block level representation of the system at server side. Figure 14 illustrates the functioning of the processing unit that includes a input parser engine. 6 Figure 15 illustrates a flow chart representation of working of input parser engine. Figure 16 illustrates a representation of frame message of method M1. Figure 17 illustrates a flow chart representation on working of method M1. Figure 18 illustrates a representation of the frame message composed in method M2. Figure 19 illustrates a flow representation on working of method M2. Figure 20 illustrates a flow chart representation on working of method M3. Figure 21 illustrates a flow chart representation on working of method M4. Figure 22 illustrates the functioning of the dynamic updation unit. Figure 23 illustrates a table showing the various categories of messages used at client side. Figure 24 illustrates the general format of the packet used over network. Figure 25 illustrates the category A1 message format. Figure 26 illustrates the category A2 message format. Figure 27 illustrates the category A3 message format. Figure 28 illustrates the category A4 message format. Figure 29 illustrates the representational data structure used for maintaining the database at the client side. Figure 30 illustrates a flow chart representation of the working of the input parser at DYU. Figure 31 illustrates a flow chart representation of the working of method D1. Figure 32 illustrates a flow chart representation of working of method D2. Figure 33 illustrates a flow chart representation of working of method D3. Figure 34 illustrates a flow chart representation of working of method D4. Figure 35 illustrates the message category table at server side. 7 Figure 36 illustrates the database structure used at the server side. Figure 37 illustrates flow chart representation of the working of receiving unit. Figure 38 illustrates flow chart representation of the working of the relationship manager unit. Figure 39 illustrates flow chart representation of the working of method R2. Figure 40 illustrates the TABLE 3 used at the server side. Figure 41 illustrates a flow chart representation of the working of broadcast Unit. It may be noted that to the extent possible, like reference numerals have been used to represent like elements in the drawings. Further, those of ordinary skill in the art will appreciate that elements in the drawings are illustrated for simplicity and may not have been necessarily drawn to scale. For example, the dimensions of some of the elements in the drawings may be exaggerated relative to other elements to help to improve understanding of aspects of the invention. Furthermore, the one or more elements may have been represented in the drawings by conventional symbols, and the drawings may show only those specific details that are pertinent to understanding the embodiments of the invention so as not to obscure the drawings with details that will be readily apparent to those of ordinary skill in the art having benefit of the description herein. DETAILED DESCRIPTION It should be understood at the outset that although illustrative implementations of the embodiments of the present disclosure are illustrated below, the present invention may be implemented using any number of techniques, whether currently known or in existence. The present disclosure should in no way be limited to the illustrative implementations, drawings, and techniques illustrated below, including the exemplary design and implementation illustrated and described herein, but may be modified within the scope of the appended claims along with their full scope of equivalents. The term “some” as used herein is defined as “none, or one, or more than one, or all.” Accordingly, the terms “none,” “one,” “more than one,” “more than one, but not all” or “all” would all fall under the definition of “some.” The term “some embodiments” may refer to no 8 embodiments or to one embodiment or to several embodiments or to all embodiments. Accordingly, the term “some embodiments” is defined as meaning “no embodiment, or one embodiment, or more than one embodiment, or all embodiments.” The terminology and structure employed herein is for describing, teaching and illuminating some embodiments and their specific features and elements and does not limit, restrict or reduce the spirit and scope of the claims or their equivalents. More specifically, any terms used herein such as but not limited to “includes,” “comprises,” “has,” “consists,” and grammatical variants thereof do NOT specify an exact limitation or restriction and certainly do NOT exclude the possible addition of one or more features or elements, unless otherwise stated, and furthermore must NOT be taken to exclude the possible removal of one or more of the listed features and elements, unless otherwise stated with the limiting language “MUST comprise” or “NEEDS TO include.” Whether or not a certain feature or element was limited to being used only once, either way it may still be referred to as “one or more features” or “one or more elements” or “at least one feature” or “at least one element.” Furthermore, the use of the terms “one or more” or “at least one” feature or element do NOT preclude there being none of that feature or element, unless otherwise specified by limiting language such as “there NEEDS to be one or more... ” or “one or more element is REQUIRED.” Unless otherwise defined, all terms, and especially any technical and/or scientific terms, used herein may be taken to have the same meaning as commonly understood by one having an ordinary skill in the art. Reference is made herein to some “embodiments.” It should be understood that an embodiment is an example of a possible implementation of any features and/or elements presented in the attached claims. Some embodiments have been described for the purpose of illuminating one or more of the potential ways in which the specific features and/or elements of the attached claims fulfil the requirements of uniqueness, utility and non-obviousness. Use of the phrases and/or terms such as but not limited to “a first embodiment,” “a further embodiment,” “an alternate embodiment,” “one embodiment,” “an embodiment,” “multiple embodiments,” “some embodiments,” “other embodiments,” “further embodiment”, “furthermore embodiment”, “additional embodiment” or variants thereof do NOT necessarily refer to the same embodiments. Unless otherwise specified, one or more 9 particular features and/or elements described in connection with one or more embodiments may be found in one embodiment, or may be found in more than one embodiment, or may be found in all embodiments, or may be found in no embodiments. Although one or more features and/or elements may be described herein in the context of only a single embodiment, or alternatively in the context of more than one embodiment, or further alternatively in the context of all embodiments, the features and/or elements may instead be provided separately or in any appropriate combination or not at all. Conversely, any features and/or elements described in the context of separate embodiments may alternatively be realized as existing together in the context of a single embodiment. Any and all details set forth herein are used in the context of some embodiments and therefore should NOT be necessarily taken as limiting factors to the attached claims. The attached claims and their legal equivalents can be realized in the context of embodiments other than the ones used as illustrative examples in the description below. Figure 1 illustrates an exemplary method (100) for maintaining a plurality of relationship behaviour with a participant in a plurality of group conversations of an instant messaging service. In one embodiment, the method comprises: receiving (101) a first user input for controlling display of a message received from a participant in a first group conversation from amongst the plurality of group conversations, wherein the first user input is specific to the first group conversation; and filtering (102) the message received from the participant in the first group conversation according to the first user input. In a further embodiment, the first user input is to allow, partially allow, or disallow the message received from the participant in the first group conversation. In a further embodiment, the filtering further comprises completely allowing and/or displaying the message received from the participant in the first group conversation. In a further embodiment, the filtering further comprises completely disallowing and/or blocking the message received from the participant in the first group conversation. In a further embodiment, the completely disallowing and/or the message comprises blocking the message from the participant in a main chat window of the first group conversation. 10 In a further embodiment, the filtering further comprises partially allowing the message received from the participant in the first group conversation. In a further embodiment, the partially allowed message comprises content allowable as per at least one predefined criterion, such as according to a predefined type of words. Examples of such predefined type of words include, but are not limited to subjects, nouns, verbs, etc. In a further embodiment, the partially allowing the message comprises displaying a partial message corresponding to the message received from the participant in a main chat window of the first group conversation. In a further embodiment, all messages received from the participant are indicated in a preview window that is other than a main chat window of the first group conversation. In a further embodiment, all the messages received from the participant are indicated in the preview window using corresponding time stamp. In a further embodiment, one or more messages selected from amongst all the messages are restored to the main chat window upon user request. In a further embodiment, the preview window is dynamically synchronized with the main chat window of the first group conversation. In a further embodiment, the preview window is displayed upon an event with respect to the participant in the first group conversation. In a further embodiment, the first user input is provided through an event with respect to the participant in the first group conversation. In a further embodiment, the event is at least one of right click, left click, long press, double tap, swipe, single tap, pinch gesture, zoom gesture, or a combination thereof. In a further embodiment, the message is a text message, an image message, an icon based message, a voice message, an audio message, a video message, or a combination thereof. In a further embodiment, the method (100) comprises: displaying (103) the filtered message in the first group conversation. 11 In a further embodiment, the method (100) comprises: receiving (104) a second user input for controlling display of a message received from the participant in a second group conversation from amongst the plurality of group conversations, wherein the second user input is specific to the second group conversation and different from the first user input; and filtering (105) the message received from the participant in the second group conversation according to the second user input. In a further embodiment, the method (100) comprises: displaying (106) the filtered message in the second group conversation. Figure 2 illustrates an exemplary method (200) for selective access of content in a group conversation of an instant messaging service. In one embodiment, the method (200) comprises: receiving (201) a user input for partially allowing at least one message received from a participant in a group conversation, wherein the user input is specific to said group conversation; partially allowing (202 the at least one message according to a predefined criterion; and displaying (203) the partially allowed message in a main window of the group conversation. In a further embodiment, the method (200) comprises: receiving (204) a user request to view a complete message corresponding to the partially allowed message; and displaying (205), in response to the user request, a preview window other than the main window of the group conversation, the preview window indicating a timestamp corresponding to the complete message received from the participant. In a further embodiment, the method (200) comprises: receiving (206 a user selection on the time stamp corresponding to the complete message; and displaying (207), in the main window, the complete message corresponding to the selected time stamp. Figure 3 illustrates a computing system (300), which may include a processor (301), a memory (302), an input means (303), a display (304), and a filter (305). In one preferred implementation, the computing system (300) may be a server system or a client system. In another implementation, the computing system’s functionality may be distributed between a client system and a server system. In one embodiment, the computing system (300) maintains a plurality of relationship behaviour with a participant in a plurality of group conversations of an instant messaging service. In said embodiment, the computing system (300) comprises: the input means (303) 12 for receiving a first user input for controlling display of a message received from a participant in a first group conversation from amongst the plurality of group conversations, wherein the first user input is specific to the first group conversation; and the filter (305) for filtering the message received from the participant in the first group conversation according to the first user input. In a further embodiment, the first user input is to allow, partially allow, or disallow the message received from the participant in the first group conversation. In a further embodiment, the filtering further comprises completely allowing and/or displaying the message received from the participant in the first group conversation. In a further embodiment, the filtering further comprises completely disallowing and/or blocking the message received from the participant in the first group conversation. In a further embodiment, the completely disallowing and/or the message comprises blocking the message from the participant in a main chat window of the first group conversation. In a further embodiment, the filtering further comprises partially allowing the message received from the participant in the first group conversation. In a further embodiment, the partially allowed message comprises content allowable as per at least one predefined criterion, such as according to a predefined type of words. Examples of such predefined type of words include, but are not limited to subjects, nouns, verbs, etc. In a further embodiment, the partially allowing the message comprises displaying a partial message corresponding to the message received from the participant in a main chat window of the first group conversation. In a further embodiment, all messages received from the participant are indicated in a preview window that is other than a main chat window of the first group conversation. In a further embodiment, all the messages received from the participant are indicated in the preview window using corresponding time stamp. In a further embodiment, one or more messages selected from amongst all the messages are restored to the main chat window upon user request. 13 In a further embodiment, the preview window is dynamically synchronized with the main chat window of the first group conversation. In a further embodiment, the preview window is displayed upon an event with respect to the participant in the first group conversation. In a further embodiment, the first user input is provided through an event with respect to the participant in the first group conversation. In a further embodiment, the event is at least one of right click, left click, long press, double tap, swipe, single tap, pinch gesture, zoom gesture, or a combination thereof. In a further embodiment, the message is a text message, an image message, an icon based message, a voice message, an audio message, a video message, or a combination thereof. In a further embodiment, the inputs means further receive a second user input for controlling display of a message received from the participant in a second group conversation from amongst the plurality of group conversations, wherein the second user input is specific to the second group conversation and different from the first user input; and the filter is further configured to filter the message received from the participant in the second group conversation according to the second user input. In another embodiment, the computing system (300) provides selective access of content in a group conversation of an instant messaging service. In said embodiment, the computing system (300) comprises: the input means (303) for receiving a user input for partially allowing at least one message received from a participant in a group conversation, wherein the user input is specific to said group conversation; the filter (305) for partially allowing the at least one message according to a predefined criterion; and the display screen (304) a display screen for displaying the partially allowed message in a main window of the group conversation. In a further embodiment, the input means (303) further receive a user request to view a complete message corresponding to the partially allowed message; and the display screen (304) is further configured to display, in response to the user request, a preview window other than the main window of the group conversation, the preview window indicating a timestamp corresponding to the complete message received from the participant. 14 In a further embodiment, the input means (303) further receive a user selection on the time stamp corresponding to the complete message; and the display screen (304) is further configured to display, in the main window, the complete message corresponding to the selected time stamp. The present invention aims to address the ‘N’ number of users who are connected over instant messaging network. Here, N is any positive integer. The users are allowed to maintain multiple relations with each other during the ongoing parallel multiple group conversation sessions over the network. The general working of the system with respect to user is explained below with reference to Figures 4-9. As shown, client A can exist in multiple group conversation sessions with other users at the same time (4000). The client A, maintains a “disallow” relationship with user C in “technical discussion” session at the same time client A maintains a “partial allow” relationship with user C in “political affairs” session & a “allow” relationship in “team event planning” group conversation sessions. The client A could not maintain multiple relationship behaviour with a particular member on group conversation sessions running in parallel based on different context in the existing systems (5000). The existing systems tend to observe a global behaviour of relationship between users connected over an instant messaging network. The Client A is provided a graphical option to set his relationship behaviour with members in a group conversation session. If the Client A, decides to “disallow” communication from User F, the content from USER F will not be made available to client A (6000). At the same time, if the client A decides to opt for the “partial allow” option, then the communication from user F will be partially displayed to client A (7000). By partial display we mean that using existing techniques, only the important context of the typed message will be displayed to client A and not the complete text input by user F. The Client A, is also provided the graphical option to view the blocked content with respect to a certain member in a group conversation session (8000). The client A, can also highlight selective messages in the provided view from the list of disallowed communication and the highlighted timestamps will be used to integrate the respective text messages back into the ongoing conversation session window dynamically. The user can now easily scroll back to have a stronger grasp of the ongoing conversation with respect to the disallowed member (9000). The main advantage of the present invention is that it provides the user much flexibility and choice in maintaining a relationship behaviour with respect to other members on the instant messaging network. This proves particular advantageous in professional 15 situations, where there is a need to maintain parallel group conversation sessions based on different contexts. The user now will have a choice to exercise his choice with respect to a member without in a way affecting his comfort level as well as taking care of professional goals. The system does not limit itself to any particular social networking domain and does not assume or discard the existence of relationships between participating member in the instant messaging network. The invention does not limit itself to particular architectural design for implementation across networks. The method is scalable across a particular instant messaging service or a group of instant messaging service governed by a central instant messaging network. The invention provides user much flexibility with respect to viewing a communication from certain member, which may be in particular emotionally disturbing for the user. The Invention is scalable to be implemented easily across different computing devices including the touch based computing devices or gesture based computing devices. The invention can also be scaled across various different ways of getting input from external devices for example using joysticks or stylus etc. Though the invention is further described based on a client and server architecture, yet those skilled in the art will appreciate that the invention is not restricted by the same and can be implemented in a similar system on client-client basis or only on the local client system side basis. The basic description of the units employed at each side is as follows: CLIENT SIDE SYSTEM The individual users who are the members of the group conversation session are the referred clients in the solutions. The clients are hosted on different computing devices, which are connected to the network via a centralized server offering the services of instant messaging. The system of client side will be composed of the modules listed in Table 1 below: 1 DISPLAY UNIT This is Hardware I/O unit which presents the user interface to the client/user 2 PROCESSING UNIT This module is responsible for processing the directed Inputs from the User and the database. 3 DYNAMIC UPDATION UNIT This module processes the runtime inputs from the Receiving unit, Database and the processing unit and presents a dynamic updated chat structure to be displayed to the user. 16 4 NETWORK RECEIVING UNIT This module receives the output from the display unit, processes it and outputs to the server. It also receives the inputs from the server, processes it and outputs to the Dynamic updation unit. 5 STORAGE UNIT This is storage memory unit where the referred database will be maintained. Table 1 SERVER SIDE SYSTEM The individual clients who are participating in the instant messaging sessions will be centrally controlled by the Server. The proposed system is integrated on the server end. The system on the server side will be composed of the modules listed in Table 2 below: 1 RECEIVING UNIT This module is responsible for maintaining active connections with clients & receiving the input from the clients over the network and passing it to processing unit. 2 RELATIONSHIP MANAGER UNIT This Module is responsible for maintaining the relationship of the user with individual members in different group conversation sessions active on the client window. 3 BROADCAST UNIT This module receives formatted packet from RM unit and broadcasts to provided clients in the network. 4 STORAGE UNIT The RM unit maintains this database, actively managing the relationship behaviour among members in different group conversation sessions. Table 2 Figure 10 illustrates a client (1001) and server (1002) architecture (1000) being followed by the system. The proposed system which gets implemented at the client side will be responsible to provide the user with the relevant display options to exercise his choices. The system does not intend to take care of how multiple group conversation sessions are started and how the members are added in the individual group conversation sessions. The System employs methods to provide the user with options: (a) To set a relationship behaviour 17 with any participating member in any of the ongoing group conversation sessions; (b) To provide the user menu options to be able to view the blocked content with respect to a specific user; (c) To provide user with options to selectively integrate the blocked content from a member into the current conversation window dynamically updating the ongoing conversation session; (d) To provide the user with menu options to set the relationship behaviour with respect to selected members in multiple groups at the same time; (e) To provide the functionality of transmitting the users relationship preferences when updated at the client side to server in a special formatted message. Figure 11 illustrates block level representation (1100) of the client side system, which includes a processing unit (1101), a display unit (1102), a dynamic updation unit (1103), a receving unit (1104), a database (1105), and network (1106). The processing unit (1101) performs the following functions: (a) To collect the input from the display unit. The input in itself can be either an event performed by the user or the data selected by the user from the output of the event performed; (b) The user can perform two events which are specified by the system. The user can perform the “right click” event on a member or can perform a “left click” of mouse event on a member active in a group conversation; (c) The “right click” event will allow the user to be displayed the choice of either selecting to “disallow” or “allow” communication from that member; (d) The “left click” event will allow the user to be displayed the set of messages logged in by the member from the time instance he was disallowed communication (let’s call this as Td) till the current time(Tc).The user once displayed the list of messages as per their occurrence timestamp can now select by highlighting the specific messages he wants to integrate back into the group conversation window; (e) The data highlighted by the user in step 4 will be provided as input to the parser engine; and (f) The parser engine routes the control to relevant methods M1, M2, M3 or M4 as per suitable calculations. The user interacts with the display unit (1102). The system provides the user with options to perform two basic events: (1) Event 1: “right click“ or simple Tap function over the displayed icon of the member in the group conversation session. This indicates the change of the relationship (allowed or disallowed). This can also be a “double Tap” or “double touch” function performed over the displayed icon of the member on a touch user interface based systems. This indicates the change of relationship to “Partial Allow” from either “allowed or not allowed” relationships between the chat users. The event 1 can also be 18 realized in terms of gesture-based technologies in future. The user will be presented with the choice to either “disallow” or “allow” or “partially allow” communication from that particular member. (2) Event 2: “left click” or long press or three tap function over the displayed icon of the member in the group conversation session. This brings a pop-up of a disallowed user with all his timestamps. User can choose a timeline to see that content. For an allowed user all his content with timestamps are visible in a pop-up. User can choose a timeline to remove that content from the chat. The event 2 can also be realized in terms of gesture-based technologies in future. The user will be presented with the content of the messages input into that group conversation session by that member since the time the communication was disallowed from him (Td) until current time (Tc). The dynamic update unit (1103) performs the following functions: (a) To prepare the instance of “current Database” and provide it to the display unit and store it in the database storage (1105); (b) The “current Database” signifies the dynamically updated Database visible to the user. This is prepared by the usual inputs of participating members from the network (1106) as well as the Retrieved disallowed communication data content by the user with respect to a specific member in the group conversation session; (c) The user exercises his “choice” of changing the relationship behaviour with respect to a particular member. The DYU creates this special category message (category A2) informing the central server about the users choice; (d).If the choice contains the value “partial allow” then the DYU does not create a special category ‘A2’ message to be send to server. In this case the DYU just maintains a record of the user’s choice and will apply this on the messages received from that member from the network t its end; (e) the DYU also performs the function of receiving the normal conversation packets from the network and integrating them in the “current Database” as well as stored database. Here the DYU takes particular care of the “partial allow” option and applies known methods to extract the central context of the message before integrating it into the “current database”; (f) The DYU is also responsible for retrieving the disallowed communication with respect to a certain member within a certain time frame (Td<->Tc) from network. This is achieved by creating a special category (category A3) retrieval request message to server; (g) The DYU is also responsible for integrating the highlighted content in the displayed disallowed content to the “current Database” and output it to the display unit; and 8. The DYU is also responsible for parsing the messages received from server. The messages can be of category A1(normal conversation messages ) or category A4 (request retrieval messages).The DYU processes the Category A4 messages, retrieves the data content 19 from the client stored database and sends the response to A4 back to the server in a composed list. The input parser engine for the dynamic update unit (1103) performs the following functionality: (a) the input parser engine in DYU receives input from the Receiving unit, the Processing unit, The display unit; (b) If the message is sent by the Display unit, method D1 is executed; (c) If the message is sent by the Processing unit, method D2 is executed; (d) If the message is sent by the Receiving unit, method D3 is executed; and (e) If no messages received the input parser maintains itself in idle/No Op state and continuously polls for the input. The receiving unit (1104) is a simple module, which performs the following functions: (a) To Receive the Incoming message packets over the network. These message are sent by the server to the client; (b) To transmit the messages from client to the server. This includes transmitting all A1, A2, A3, A4 category defined messages as standard messages over the network; (c) To interact directly with the Dynamic updation unit and the display unit; and (d) To implement the standard available network protocols to perform its functioning. Figure 12 provides a block level representation (1200) of the receiving unit (1104) at the client side. The receiving unit (1104) continuously receives input form the display unit, dynamic updation unit, and the network. If network is the sender, then signal is sent to dynamic updation unit. If network is not the sender, them the message to be sent if first standardized and then sent to the network. Figure 13 provides a block level representation (1300) of the system at server side, which includes a receiving unit (1301), a relationship manger unit (1302), a broadcast unit (1303), a database storage unit (1304), and network (1305). The server side system will perform the following functions. (a) The system will be responsible for inter-communication (reception & transmission) of the messages from 'N' number of clients connected to the instant messaging network. (b) The system will manage the Dynamic relationships between the number of users connected to each other in various group conversation sessions across the network (1304). (c) The system will also manage the "disallow" & "allow" choices of the user and accordingly filter the communication at its side, so that the intended user will not be transmitted the packets from the disallowed member. (d) The System will also manage and assist the user to retrieve the "disallowed" data with respect to certain member (client). (e) 20 The system continuously updates its database (1304) as per the current relationship behaviour among different clients across different group conversation sessions. (f) The system does not maintain any kind of storage of communication data between the connected clients at its end. The receiving unit (1301) at the server side performs the following functions: (a) continuously receives the packets from the instant messaging network; (b) delivers the received messages to the relationship manager unit or the broadcast unit; (c) provides the access to the message category table and clearly distinguishes between the various categories of the messages received. Further, the receiving unit employs method R1 to determine the correct receiver of the packets received from the network. The relationship manager (1302) can be described to be one of the core component at the server end. It performs the following functions. It manages the dynamic relationship behaviour of the different clients with respect to each other. A database table is maintained at the server side that keeps track of the current relationship of the user with respect to other members per group conversation session. It also processes the special category 'A3' message. This a retrieval request from the user. It employs method R2 to process the 'A3" request and create a 'A4' type packet to retrieve the messages from the intended client. It passes on the messages of 'A1' category to the broadcast unit. The broadcast unit (1303) performs the following functions at the server side: It is responsible for transmitting the message packets to the network. It can receive the messages either from the receiving unit or through the Relationship manager (RM) unit. If the messages are received from the RM unit, the messages are broadcast to the respective clients. The Broadcast unit accesses the database table corresponding to the group id in the message. It then populates the list of clients that are authorized for this message and broadcast the message to those members only. If the message if from Receiving unit, then it’s a response to a category ‘A4’ message. It accesses the TABLE 3 and determines the receiver client Id and the message is transmitted to that intended receiver only. Figure 14 illustrates the functioning of the processing unit that includes an input parser engine (1401), which receives inputs from a display I/O unit (1402) and dynamic updation unit (1403). The input is received by this parser continuously. The parser polls for the input infinitely. If the input is “Event 1”, then method M1 is executed by the parser engine. If the input is “Event 2”, then the parser engine checks. If it is a command type from user to present the data or input type with user selected data that needs to be dynamically 21 integrated. If “Event 2” is command type then method M2 is executed by the parser engine else if it is data input type then method M4 is executed by the parser engine. If the input is sent from the Dynamic updation unit, then method M3 is executed by the parser engine. Figure 15 illustrates a flow chart representation (1500) of working of input parser engine that performs pooling for input (1501). If sender is dynamic updation unit (1502), then method M3 is performed (1503). Otherwise, it is checked if event 1 is performed (1504) – If yes, then method M1 is performed (1505). Otherwise, it is checked if event 2 is performed (1506)– if yes, then method M2 is called (1507). Otherwise Method M4 is called (1508). Figure 16 illustrates a representation (1600) of frame message of method M1, while Figure 17 illustrates a flow chart representation (1700) on working of method M1. As shown, group id, member id, choice is collected from the user (1701). After that, the time instance Td is determined (1702). In the end, the message is prepared with group id, member id, choice which is passed to the dynamic updation unit for performing an update into TABLE[Group Id] in the Database (1703). Figure 18 illustrates a representation (1800) of the frame message composed in method M2, while the Figure 19 illustrates a flow representation (1900) on working of method M2. Firstly, the input from parser engine contains the Group id, member Id (1901). After that, the current time instance Tc is determined (1902). Then, the Last updated Time instance for “disallow” Td is to be determined (1903). The information is fetched from accessing TABLE[Group Id] from the Database. The time instance Td is fetched. The above information, [Group Id, member Id, Td, Tc] is framed in a message, which is passed on to the dynamic updation unit (1904). Similarly, Figure 20 illustrates a flow chart representation (2000) on working of method M3. Firstly, the Input from parser engine contains a message frame with information such as group Id, member Id, and the list of messages for that member from time Td till Time Tc fetched from the server by dynamic updation unit (2001). After that, the Messages are segregated from the frame (2002). The Input to the display Unit will consist of respective timestamps being displayed to the user in a preview window (2003). Similarly, Figure 21 illustrates a flow chart representation (2100) on working of method M4. Firstly, the inputs from parser engine contain the group id, member id and the index of the highlighted timestamps from the preview shown by method M3 (2101). After 22 that, the messages are selected by their indexes framed in a new packet with group id, member id and delivered to the dynamic updation unit (2102). Figure 22 illustrates the functioning (2200) of the dynamic updation unit. Here, input parser engine (2202) received inputs from the processing unit (2204), display unit (2201), and receiving unit (2203) and directly/indirectly calls methods D1, D2, D3, or D4. These methods continuously update the database storage unit (2205) and the display unit (2201). Current Database is a database containing the current content, which is being displayed in the group conversation window. This includes the message being received from other members in the conversation session. This includes the messages being received from the other members in the conversation session. This also includes the provided highlighted messages from the user. These highlighted messages are from the past data of the disallowed communication. This data is dynamically integrated into this database. The messages that are input by the user itself are also present in the current database. Stored Database is a database that is locally stored on the client storage unit. This is restricted copy of the current database. This does not include the disallowed communication data with respect to a certain member. In this way, the system does not store the disallowed communication data at the client side. It performs a data retrieval process from the network for the same on user’s request. The various categories of messages maintained by the system as demonstrated below. Figure 23 illustrates a table (2300) showing the various categories of messages used at client side. Figure 24 illustrates the general format (2400) of the packet used over network. Figure 25 illustrates the category A1 message format (2500). Figure 26 illustrates the category A2 message format (2600). Figure 27 illustrates the category A3 message format (2700). Figure 28 illustrates the category A4 message format (2800). 23 Figure 29 illustrates the representational data structure (2900) used for maintaining the database at the client side. Figure 30 illustrates a flow chart representation (3000) of the working of the input parser at DYU. It starts with polling for input (3001), then it is checked whether sender is the display unit (3002). If yes. Then method D1 is called (3003). Otherwise, it is checked whether the sender is processing unit (3004). If yes, then method (D2) is called (3005). Otherwise, it is checked whether the sender is receiving unit (3006). If yes, then method D3 is called (3007). Otherwise, the process goes to ideal state (3008), but keeps on polling for input (3001). Figure 31 illustrates a flow chart representation (3100) of the working of method D1. Firstly, the input from display unit here includes the data content inserted by the client in ongoing group conversation session (3101). After that, the input includes the group Id, Client id & the message itself (3102). The “current Database” is updated with the input message, The method D4 is executed in this way (3103). Figure 32 illustrates a flow chart representation (3200) of working of method D2. Firstly, the input is parsed based on the category of the message frame (3201). It is checked if the category is ‘A5’ (3202), the message contains the group id, member id, choice (3203). It is checked if the category is ‘A6’ (3205), the message contains the group id, member id, Td, Tc (3206). It is checked if the category is ‘A7’ (3207), the message contains the group id, member id, index of highlighted disallowed messages (3208). Each of these messages is sent to receiving unit (3204). The category ‘A5’ is processed by creating a special category ‘A2’ request message to be sent over the network to the server. The category ‘A6’ is processed by creating a special category retrieval request message ‘A3’ to be sent over the network to the server. The category ‘A7’ is processed by integrating the provided list of highlighted disallowed communication data into the “current database”. This data is not updated in the “stored database”. In the end, the process goes to ideal state (3209), but keeps on polling for input (3201). Figure 33 illustrates a flow chart representation (3300) of the working of method D3. The input from the network can contains the messages of category A1, A4. If the message is category ‘A1’,the Client id, group Id is retrieved from the message. The Data content is also parsed. The message is then appropriately updated in the “current Database”. The method D4 then is executed to store it in “stored database”. If the message is category ‘A4’, then it is a 24 Data retrieval request from the server. The message is parsed and the values of Td & Tc are extracted along with the Group Id. The Data content from the “stored Database” is accessed and the messages which lie within the timestamp Td to Tc are fetched. The messages selected have timestamp t >Td and t

Documents

Sign in to open
Application documents
1 Specification.pdf 16 Dec 2014
2 FORM 5.pdf 16 Dec 2014
3 FORM 3.pdf 16 Dec 2014
4 Form 26..pdf 16 Dec 2014
5 Drawing.pdf 16 Dec 2014
6 3695-del-2014-Correspondance Others-(24-12-2014).pdf 24 Dec 2014
7 3695-DEL-2014-PA [19-09-2019(online)].pdf 19 Sep 2019
8 3695-DEL-2014-ASSIGNMENT DOCUMENTS [19-09-2019(online)].pdf 19 Sep 2019
9 3695-DEL-2014-8(i)-Substitution-Change Of Applicant - Form 6 [19-09-2019(online)].pdf 19 Sep 2019
10 3695-DEL-2014-OTHERS-101019.pdf 14 Oct 2019
11 3695-DEL-2014-Correspondence-101019.pdf 14 Oct 2019
12 3695-DEL-2014-FER.pdf 13 Nov 2019
13 3695-DEL-2014-OTHERS [12-05-2020(online)].pdf 12 May 2020
14 3695-DEL-2014-FER_SER_REPLY [12-05-2020(online)].pdf 12 May 2020
15 3695-DEL-2014-DRAWING [12-05-2020(online)].pdf 12 May 2020
16 3695-DEL-2014-COMPLETE SPECIFICATION [12-05-2020(online)].pdf 12 May 2020
17 3695-DEL-2014-CLAIMS [12-05-2020(online)].pdf 12 May 2020
18 3695-DEL-2014-US(14)-HearingNotice-(HearingDate-26-09-2023).pdf 24 Aug 2023
19 3695-DEL-2014-FORM-26 [23-09-2023(online)].pdf 23 Sep 2023
20 3695-DEL-2014-Correspondence to notify the Controller [23-09-2023(online)].pdf 23 Sep 2023
21 3695-DEL-2014-Written submissions and relevant documents [11-10-2023(online)].pdf 11 Oct 2023
22 3695-DEL-2014-PatentCertificate22-11-2023.pdf 22 Nov 2023
23 3695-DEL-2014-IntimationOfGrant22-11-2023.pdf 22 Nov 2023
Search strategy
1SearchStrategyMatrix_13-11-2019.pdf

ERegister / renewals

Inforce
3rd Renewed 20 Feb 2024 Period 12 Dec 2016 – 12 Dec 2017 · CBR 12221 · Certificate 44549 ₹4,000
4th Renewed 20 Feb 2024 Period 12 Dec 2017 – 12 Dec 2018 · CBR 12221 · Certificate 44550 ₹4,000
5th Renewed 20 Feb 2024 Period 12 Dec 2018 – 12 Dec 2019 · CBR 12221 · Certificate 44551 ₹4,000
6th Renewed 20 Feb 2024 Period 12 Dec 2019 – 12 Dec 2020 · CBR 12221 · Certificate 44552 ₹4,000
7th Renewed 20 Feb 2024 Period 12 Dec 2020 – 12 Dec 2021 · CBR 12221 · Certificate 44553 ₹12,000
8th Renewed 20 Feb 2024 Period 12 Dec 2021 – 12 Dec 2022 · CBR 12221 · Certificate 44554 ₹12,000
9th Renewed 20 Feb 2024 Period 12 Dec 2022 – 12 Dec 2023 · CBR 12221 · Certificate 44555 ₹12,000
10th Renewed 20 Feb 2024 Period 12 Dec 2023 – 12 Dec 2024 · CBR 12221 · Certificate 44556 ₹12,000
11th Renewed 14 Nov 2024 Period 12 Dec 2024 – 12 Dec 2025 · CBR 68279 · Certificate 205667 ₹24,000
12th Renewed 23 Oct 2025 Period 12 Dec 2025 – 12 Dec 2026 · CBR 54977 · Certificate 83008 ₹24,000