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: 20150163258
    Abstract: 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: Application
    Filed: December 5, 2013
    Publication date: June 11, 2015
    Applicant: Facebook, Inc.
    Inventors: David Harry Garcia, III, Raymond Endres, Nikhil Bobde
  • Patent number: 8837704
    Abstract: 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: Grant
    Filed: August 31, 2006
    Date of Patent: September 16, 2014
    Assignee: Microsoft Corporation
    Inventors: Rajesh Ramanathan, Amritansh Raghav, Eran Shtiegman, Nikhil Bobde
  • Patent number: 8321506
    Abstract: 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: Grant
    Filed: August 14, 2004
    Date of Patent: November 27, 2012
    Assignee: Microsoft Corporation
    Inventors: Mu Han, Krishnamurthy Ganesan, Adrian Potra, Nikhil Bobde
  • Patent number: 8065405
    Abstract: 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: Grant
    Filed: May 18, 2009
    Date of Patent: November 22, 2011
    Assignee: Microsoft Corporation
    Inventors: Nikhil Bobde, Jeremy T. Buch, Ajay P. Chitturi, Ann Demirtjis, Vishwajith Kumbalimutt, David J. Simons, Zachary Taylor
  • Patent number: 7856470
    Abstract: 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: Grant
    Filed: May 27, 2005
    Date of Patent: December 21, 2010
    Assignee: Microsoft Corporation
    Inventors: Amritansh Raghav, Ankur Chavda, Eran Shtiegman, Nikhil Bobde, Parag Samdadiya
  • Patent number: 7769809
    Abstract: 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: Grant
    Filed: August 2, 2005
    Date of Patent: August 3, 2010
    Assignee: Microsoft Corporation
    Inventors: Parag Samdadiya, Amritansh Raghav, Danny Levin, Eran Shtiegman, Nikhil Bobde
  • Patent number: 7770007
    Abstract: 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: Grant
    Filed: June 4, 2007
    Date of Patent: August 3, 2010
    Assignee: Microsoft Corporation
    Inventors: Nikhil Bobde, Ann Demirtjis, Mu Han
  • Publication number: 20100030906
    Abstract: 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: Application
    Filed: August 19, 2009
    Publication date: February 4, 2010
    Applicant: Microsoft Corporation
    Inventors: Elena Apreutesei, Nagendra V. Kolluru, Nikhil Bobde
  • Patent number: 7653715
    Abstract: 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: Grant
    Filed: January 30, 2006
    Date of Patent: January 26, 2010
    Assignee: Microsoft Corporation
    Inventors: Nikhil Bobde, Robert Brown, Jeremy T. Buch, Ajay P. Chitturi, Ann Demirtjis, Vishwajith Kumbalimutt, David J. Simons, Zachary Taylor
  • Patent number: 7594020
    Abstract: 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: Grant
    Filed: May 31, 2005
    Date of Patent: September 22, 2009
    Assignee: Microsoft Corporation
    Inventors: Elena Apreutesei, Nagendra V. Kolluru, Nikhil Bobde
  • Publication number: 20080075261
    Abstract: 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: Application
    Filed: August 31, 2006
    Publication date: March 27, 2008
    Applicant: Microsoft Corporation
    Inventors: Rajesh Ramanathan, Amritansh Raghav, Eran Shtiegman, Nikhil Bobde
  • Publication number: 20080022383
    Abstract: 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: Application
    Filed: June 4, 2007
    Publication date: January 24, 2008
    Applicant: Microsoft Corporation
    Inventors: Nikhil Bobde, Ann Demirtjis, Mu Han
  • Publication number: 20070064672
    Abstract: 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: Application
    Filed: August 31, 2005
    Publication date: March 22, 2007
    Applicant: Microsoft Corporation
    Inventors: Amritansh Raghav, Ankur Chavda, Danny Levin, Nikhil Bobde
  • Publication number: 20070033249
    Abstract: 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: Application
    Filed: August 2, 2005
    Publication date: February 8, 2007
    Applicant: Microsoft Corporation
    Inventors: Parag Samdadiya, Amritansh Raghav, Danny Levin, Eran Shtiegman, Nikhil Bobde
  • Publication number: 20060271635
    Abstract: 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: Application
    Filed: May 27, 2005
    Publication date: November 30, 2006
    Applicant: Microsoft Corporation
    Inventors: Amritansh Raghav, Ankur Chavda, Eran Shtiegman, Nikhil Bobde, Parag Samdadiya
  • Publication number: 20060271681
    Abstract: 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: Application
    Filed: May 31, 2005
    Publication date: November 30, 2006
    Applicant: Microsoft Corporation
    Inventors: Elena Apreutesei, Nagendra Kolluru, Nikhil Bobde
  • Publication number: 20060190525
    Abstract: 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: Application
    Filed: January 30, 2006
    Publication date: August 24, 2006
    Applicant: Microsoft Corporation
    Inventors: Nikhil Bobde, Robert Brown, Jeremy Buch, Ajay Chitturi, Ann Demirtjis, Vishwajith Kumbalimutt, David Simons, Zachary Taylor
  • Publication number: 20060190591
    Abstract: 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: Application
    Filed: January 13, 2006
    Publication date: August 24, 2006
    Applicant: Microsoft Corporation
    Inventors: Nikhil Bobde, Robert Brown, Jeremy Buch, Vishwajith Kumbalimutt, David Simons, Zachary Taylor
  • Publication number: 20050091435
    Abstract: 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: Application
    Filed: August 14, 2004
    Publication date: April 28, 2005
    Applicant: Microsoft Corporation
    Inventors: Mu Han, Krishnamurthy Ganesan, Adrian Potra, Nikhil Bobde