Patents by Inventor Nikhil Bobde
Nikhil Bobde has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20150163258Abstract: In particular embodiments, a computing device accesses data associated with a first user of a social-networking system. Based at least in part on the data, the computing device determines a current availability of the first user to communicate with a second user of the social-networking system in substantially real time. The availability of the first user is determined based at least in part on a reachability of the first user and a willingness to communicate of the first user. The computing device provides for display to the second user an indication of the current availability of the first user as determined.Type: ApplicationFiled: December 5, 2013Publication date: June 11, 2015Applicant: Facebook, Inc.Inventors: David Harry Garcia, III, Raymond Endres, Nikhil Bobde
-
Patent number: 8837704Abstract: A client-side signaling mechanism that allows a client to control how a telephone call is handled on a call server. The client user can create call routing rules on the client device using a client control component that manages session protocol messages. Once created, the call routing rule(s) created on the client are transmitted to the call server where a call routing component of the call server processes the rule(s) for a call related to the client. When the server receives the rule(s) and determines that the rule(s) are related to an existing call (incoming or currently in-process), the server halts current normal server rules processing for that call and executes the client-created rule(s). In one example, SIP session messages are employed for client control of server-side call forwarding.Type: GrantFiled: August 31, 2006Date of Patent: September 16, 2014Assignee: Microsoft CorporationInventors: Rajesh Ramanathan, Amritansh Raghav, Eran Shtiegman, Nikhil Bobde
-
Patent number: 8321506Abstract: An architecture for an extensible real-time collaboration system is provided. The architecture presents a unified application program interface for writing application programs that use communications protocols. The architecture has activity objects, endpoint objects, and multiple media stacks. These objects may use various communications protocols, such as Session Initiation Protocol or Real-Time Transport Protocol to send and receive messages. The activity objects, endpoint objects, and multiple media stacks may each have one or more APIs that an application developer can use to access or provide collaboration-related functionality. These objects map the API to the underlying implementation provided by other objects. Using the activity objects enables a developer to provide less application logic than would otherwise be necessary to provide complex collaboration services.Type: GrantFiled: August 14, 2004Date of Patent: November 27, 2012Assignee: Microsoft CorporationInventors: Mu Han, Krishnamurthy Ganesan, Adrian Potra, Nikhil Bobde
-
Patent number: 8065405Abstract: A method and system for aggregating presence information generated by multiple devices associated with a single user is presented. A server acting as a presence agent on behalf of a first user and the first user's computing device receives and responds to a subscription request generated by a computing device operated by a second user that wishes to be permitted as a watcher of the first user. If the server is not capable of acting as a presence agent, then the first user's computing device assumes the role of a presence agent.Type: GrantFiled: May 18, 2009Date of Patent: November 22, 2011Assignee: Microsoft CorporationInventors: Nikhil Bobde, Jeremy T. Buch, Ajay P. Chitturi, Ann Demirtjis, Vishwajith Kumbalimutt, David J. Simons, Zachary Taylor
-
Patent number: 7856470Abstract: A method and system for accepting invitations sent to multiple endpoints for an instant messaging participant is provided. The acceptance system allows multiple endpoints of a participant to be registered at the same time with an instant messaging service. The endpoint of the inviting participant sends an invitation to the instant messaging service indicating that the receiving participant is to be invited to establish a conversation with the inviting participant. When the instant messaging service receives the invitation, it detects that the receiving participant has multiple endpoints registered and forwards the invitation to each registered endpoint. When an endpoint receives the invitation request, it displays an information window asking whether the receiving participant wants to accept the invitation. Upon acceptance, the endpoint sends an acceptance to the endpoint of the inviting participant to establish the conversation between that endpoint and the endpoint of the inviting participant.Type: GrantFiled: May 27, 2005Date of Patent: December 21, 2010Assignee: Microsoft CorporationInventors: Amritansh Raghav, Ankur Chavda, Eran Shtiegman, Nikhil Bobde, Parag Samdadiya
-
Patent number: 7769809Abstract: Techniques for associating one or more real-time sessions, which are each signaled separately, into one logical conversation without a centralized control, are provided. Some techniques share a conversation identifier that uniquely identifies a logical conversation across the real-time sessions that belong to the logical conversation. The conversation identifier is generated before the first real-time session belonging to the logical conversation is signaled, and distributed to the other participants in the logical conversation via the signaling channel. A called participant can use the conversation identifier for associating the previous real-time sessions belonging to the logical conversation, and for making new invitations for other real-time sessions that are associated with the same logical conversation.Type: GrantFiled: August 2, 2005Date of Patent: August 3, 2010Assignee: Microsoft CorporationInventors: Parag Samdadiya, Amritansh Raghav, Danny Levin, Eran Shtiegman, Nikhil Bobde
-
Patent number: 7770007Abstract: A method and system is provided to integrate the Kerberos security mechanism into the message flow of the signaling operation under the Session Initiation Protocol to allow a SIP client and a SIP proxy to authenticate each other. When the SIP proxy receives an request message, such an INVITE request, from the SIP client, it responds with a challenge message indicating that authentication based on Kerberos is required. In response, the SIP client sends a second request message with a proxy authorization header containing authentication data, including a Kerberos server ticket for the Proxy, to allow the proxy to authenticate the client's user.Type: GrantFiled: June 4, 2007Date of Patent: August 3, 2010Assignee: Microsoft CorporationInventors: Nikhil Bobde, Ann Demirtjis, Mu Han
-
Publication number: 20100030906Abstract: A method and system for establishing a connection with a server after a connection has been broken is provided. A connection system in a service layer of a client detects that a connection between the client and the server has been broken. Upon detecting the broken connection, the connection system of the service layer automatically attempts to re-establish an application-level connection to the server. If the connection system can re-establish an application-level connection to the server, then it need not notify the application layer of the broken connection.Type: ApplicationFiled: August 19, 2009Publication date: February 4, 2010Applicant: Microsoft CorporationInventors: Elena Apreutesei, Nagendra V. Kolluru, Nikhil Bobde
-
Patent number: 7653715Abstract: A system for detecting and communicating the presence of one or more computing devices is presented. The invention also presents a method and system for aggregating presence information generated by multiple devices associated with a single user. A server acting as a presence agent on behalf of a first user receives and responds to a subscription request generated by a computing device operated by a second wishing to be permitted as a watcher of the first user. When the second user corresponds to access preferences of the first user, a notify message is sent to the second user's device that includes presence information indicative of an activity level and availability level associated with the first user. When the first user employs multiple computing devices, the server generates an aggregate presence document that is representative of the overall presence of the first user.Type: GrantFiled: January 30, 2006Date of Patent: January 26, 2010Assignee: Microsoft CorporationInventors: Nikhil Bobde, Robert Brown, Jeremy T. Buch, Ajay P. Chitturi, Ann Demirtjis, Vishwajith Kumbalimutt, David J. Simons, Zachary Taylor
-
Patent number: 7594020Abstract: A method and system for establishing a connection with a server after a connection has been broken is provided. A connection system in a service layer of a client detects that a connection between the client and the server has been broken. Upon detecting the broken connection, the connection system of the service layer automatically attempts to re-establish an application-level connection to the server. If the connection system can re-establish an application-level connection to the server, then it need not notify the application layer of the broken connection.Type: GrantFiled: May 31, 2005Date of Patent: September 22, 2009Assignee: Microsoft CorporationInventors: Elena Apreutesei, Nagendra V. Kolluru, Nikhil Bobde
-
Publication number: 20080075261Abstract: A client-side signaling mechanism that allows a client to control how a telephone call is handled on a call server. The client user can create call routing rules on the client device using a client control component that manages session protocol messages. Once created, the call routing rule(s) created on the client are transmitted to the call server where a call routing component of the call server processes the rule(s) for a call related to the client. When the server receives the rule(s) and determines that the rule(s) are related to an existing call (incoming or currently in-process), the server halts current normal server rules processing for that call and executes the client-created rule(s). In one example, SIP session messages are employed for client control of server-side call forwarding.Type: ApplicationFiled: August 31, 2006Publication date: March 27, 2008Applicant: Microsoft CorporationInventors: Rajesh Ramanathan, Amritansh Raghav, Eran Shtiegman, Nikhil Bobde
-
Publication number: 20080022383Abstract: A method and system is provided to integrate the Kerberos security mechanism into the message flow of the signaling operation under the Session Initiation Protocol to allow a SIP client and a SIP proxy to authenticate each other. When the SIP proxy receives an request message, such an INVITE request, from the SIP client, it responds with a challenge message indicating that authentication based on Kerberos is required. In response, the SIP client sends a second request message with a proxy authorization header containing authentication data, including a Kerberos server ticket for the Proxy, to allow the proxy to authenticate the client's user.Type: ApplicationFiled: June 4, 2007Publication date: January 24, 2008Applicant: Microsoft CorporationInventors: Nikhil Bobde, Ann Demirtjis, Mu Han
-
Publication number: 20070064672Abstract: A method for controlling or monitoring a common PBX phone line from a plurality of personal computer endpoints with multiple instances of application of a SIP soft phone application.Type: ApplicationFiled: August 31, 2005Publication date: March 22, 2007Applicant: Microsoft CorporationInventors: Amritansh Raghav, Ankur Chavda, Danny Levin, Nikhil Bobde
-
Publication number: 20070033249Abstract: Techniques for associating one or more real-time sessions, which are each signaled separately, into one logical conversation without a centralized control, are provided. Some techniques share a conversation identifier that uniquely identifies a logical conversation across the real-time sessions that belong to the logical conversation. The conversation identifier is generated before the first real-time session belonging to the logical conversation is signaled, and distributed to the other participants in the logical conversation via the signaling channel. A called participant can use the conversation identifier for associating the previous real-time sessions belonging to the logical conversation, and for making new invitations for other real-time sessions that are associated with the same logical conversation.Type: ApplicationFiled: August 2, 2005Publication date: February 8, 2007Applicant: Microsoft CorporationInventors: Parag Samdadiya, Amritansh Raghav, Danny Levin, Eran Shtiegman, Nikhil Bobde
-
Publication number: 20060271635Abstract: A method and system for accepting invitations sent to multiple endpoints for an instant messaging participant is provided. The acceptance system allows multiple endpoints of a participant to be registered at the same time with an instant messaging service. The endpoint of the inviting participant sends an invitation to the instant messaging service indicating that the receiving participant is to be invited to establish a conversation with the inviting participant. When the instant messaging service receives the invitation, it detects that the receiving participant has multiple endpoints registered and forwards the invitation to each registered endpoint. When an endpoint receives the invitation request, it displays an information window asking whether the receiving participant wants to accept the invitation. Upon acceptance, the endpoint sends an acceptance to the endpoint of the inviting participant to establish the conversation between that endpoint and the endpoint of the inviting participant.Type: ApplicationFiled: May 27, 2005Publication date: November 30, 2006Applicant: Microsoft CorporationInventors: Amritansh Raghav, Ankur Chavda, Eran Shtiegman, Nikhil Bobde, Parag Samdadiya
-
Publication number: 20060271681Abstract: A method and system for establishing a connection with a server after a connection has been broken is provided. A connection system in a service layer of a client detects that a connection between the client and the server has been broken. Upon detecting the broken connection, the connection system of the service layer automatically attempts to re-establish an application-level connection to the server. If the connection system can re-establish an application-level connection to the server, then it need not notify the application layer of the broken connection.Type: ApplicationFiled: May 31, 2005Publication date: November 30, 2006Applicant: Microsoft CorporationInventors: Elena Apreutesei, Nagendra Kolluru, Nikhil Bobde
-
Publication number: 20060190525Abstract: A system for detecting and communicating the presence of one or more computing devices is presented. The invention also presents a method and system for aggregating presence information generated by multiple devices associated with a single user. A server acting as a presence agent on behalf of a first user receives and responds to a subscription request generated by a computing device operated by a second wishing to be permitted as a watcher of the first user. When the second user corresponds to access preferences of the first user, a notify message is sent to the second user's device that includes presence information indicative of an activity level and availability level associated with the first user. When the first user employs multiple computing devices, the server generates an aggregate presence document that is representative of the overall presence of the first user.Type: ApplicationFiled: January 30, 2006Publication date: August 24, 2006Applicant: Microsoft CorporationInventors: Nikhil Bobde, Robert Brown, Jeremy Buch, Ajay Chitturi, Ann Demirtjis, Vishwajith Kumbalimutt, David Simons, Zachary Taylor
-
Publication number: 20060190591Abstract: A system for detecting and communicating the presence of one or more computing devices is presented. The invention also presents a method and system for aggregating presence information generated by multiple devices associated with a single user. A server acting as a presence agent on behalf of a first user receives and responds to a subscription request generated by a computing device operated by a second user that wishes to be permitted as a watcher of the first user. When the second user corresponds to access preferences specified by the first user, a notify message is sent to the second user's device that includes presence information indicative of an activity level and availability level associated with the first user. When the first user employs multiple computing devices, the server generates an aggregate presence document that is representative of the overall presence of the first user.Type: ApplicationFiled: January 13, 2006Publication date: August 24, 2006Applicant: Microsoft CorporationInventors: Nikhil Bobde, Robert Brown, Jeremy Buch, Vishwajith Kumbalimutt, David Simons, Zachary Taylor
-
Publication number: 20050091435Abstract: An architecture for an extensible real-time collaboration system is provided. The architecture presents a unified application program interface for writing application programs that use communications protocols. The architecture has activity objects, endpoint objects, and multiple media stacks. These objects may use various communications protocols, such as Session Initiation Protocol or Real-Time Transport Protocol to send and receive messages. The activity objects, endpoint objects, and multiple media stacks may each have one or more APIs that an application developer can use to access or provide collaboration-related functionality. These objects map the API to the underlying implementation provided by other objects. Using the activity objects enables a developer to provide less application logic than would otherwise be necessary to provide complex collaboration services.Type: ApplicationFiled: August 14, 2004Publication date: April 28, 2005Applicant: Microsoft CorporationInventors: Mu Han, Krishnamurthy Ganesan, Adrian Potra, Nikhil Bobde