Methods and systems for performing authentication and authorization in a user-device environment

Information

  • Patent Grant
  • 9100501
  • Patent Number
    9,100,501
  • Date Filed
    Tuesday, February 12, 2008
    16 years ago
  • Date Issued
    Tuesday, August 4, 2015
    8 years ago
Abstract
A method of authenticating a caller and authorizing a callee in a user-device environment may include receiving, by a gateway, a logon request comprising information associated with a caller and determining whether the caller is a subscriber based on at least a portion of the received caller information. If the caller is a subscriber, an other gateway may receive information associated with a callee who belongs to a contact list associated with the caller. The other gateway may determine whether the callee is authorized based on at least the callee information and the caller information, and if the callee is authorized, a call between the caller and the callee may be connected.
Description
C.-E. NOT APPLICABLE
F. BACKGROUND

Methods of communication have expanded beyond ordinary telephone calls. Today, millions of people worldwide communicate via text messages, VoIP, instant messaging, SMS and the like. In addition, telecommunications has evolved to utilize a personal computer as a primary means of communication.


Currently, the communications industry treats users and devices as disparate entities, even though users and devices interact with each other in various ways. For example, it is possible to identify a user based on the user's personal profile, preferences and/or the like. A device however, lacks an identity per se, apart from physical characteristics, such as a chip or a mobile telephone number. As such, there exists a communication disconnect between users and devices in a user-device environment.


G. SUMMARY

Before the present methods are described, it is to be understood that this invention is not limited to the particular systems, methodologies or protocols described, as these may vary. It is also to be understood that the terminology used herein is for the purpose of describing particular embodiments only, and is not intended to limit the scope of the present disclosure which will be limited only by the appended claims.


In an embodiment, a method of authenticating a caller and authorizing a callee in a user-device environment may include receiving, by a gateway, a logon request comprising information associated with a caller and determining whether the caller is a subscriber based on at least a portion of the received caller information. If the caller is a subscriber, an other gateway may receive information associated with a callee who belongs to a contact list associated with the caller. The other gateway may determine whether the callee is authorized based on at least the callee information and the caller information, and if the callee is authorized, a call between the caller and the callee may be connected.


In an embodiment, a system for authenticating a caller and authorizing a callee in a user-device environment may include a first gateway configured to authenticate a caller based on at least information associated with the caller and information associated with a plurality of subscribers. The system may also include a second gateway configured to authorize a callee based on one or more authorization preferences associated with the caller and information associated with the callee. The second gateway may be in communication with the first gateway, and the callee may belong to a contact list associated with the caller.





H. BRIEF DESCRIPTION OF THE DRAWINGS

Aspects, features, benefits and advantages of the present invention will be apparent with regard to the following description and accompanying drawings, of which:



FIG. 1 illustrates a flow chart of an exemplary method of performing authentication and authorization in a user-device environment according to an embodiment.



FIG. 2 depicts an exemplary system for performing authentication and authorization in a user-device environment according to an embodiment.



FIG. 3 illustrates a flow chart for an exemplary method of determining a provider associated with a callee and determining a corresponding protocol based on the provider according to an embodiment.



FIG. 4 illustrates an exemplary system for determining a provider associated with a callee and a corresponding protocol according to an embodiment.



FIG. 5 illustrates a flow chart of an exemplary method of connecting a call according to an embodiment.



FIG. 6 illustrates an exemplary system for connecting a call according to an embodiment.



FIG. 7 illustrates a flow chart of an exemplary method of utilizing a plurality of gateways according to an embodiment.



FIG. 8 illustrates an exemplary system of utilizing a plurality of gateways according to an embodiment.



FIG. 9 illustrates a flow chart of an exemplary method of connecting a call via a single gateway according to an embodiment.



FIG. 10 illustrates an exemplary system for connecting a call via a single gateway according to an embodiment.



FIG. 11 illustrates a flow chart of an exemplary method of connecting a call according to an embodiment.



FIG. 12 illustrates an exemplary system for connecting a call according to an embodiment.





I. DETAILED DESCRIPTION

It will be appreciated that various of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications. Also that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.



FIG. 1 illustrates a flow chart of an exemplary method of performing authentication and authorization in a user-device environment according to an embodiment. FIG. 2 depicts an exemplary system for performing authentication and authorization in a user-device environment according to an embodiment.


A user, or caller, may be connected 100 to a first gateway 205 by a mobile device 200, such as a cellular phone, a personal digital assistant (“PDA”), a media player or the like. In an embodiment. a caller may be connected to the first gateway 205 via a data request such as an HTTP request. Information associated with the caller may be obtained 105 by the first gateway 205 from the data request. For example, the caller's Mobile Systems International Subscriber Identity Number (“MSISDN”) and/or namespace identification may be obtained 105. In an embodiment, a MSISDN may be a unique number that may identify a subscription in a mobile network. A namespace identification may be a unique identification associated with a caller such as an instant messaging screen name, a VoIP identification and the like.


In an embodiment, a MSISDN may be obtained 105 from the mobile device 200. For example, the first gateway may query an application on the mobile device for the MSISDN. Alternatively, the caller may manually input the MSISDN using the mobile device 200. For example, the caller may enter his mobile phone number including the area and/or country code. In another embodiment, the caller may specify the MSISDN and/or the namespace identification at registration. In an alternative embodiment, the first gateway 205 may obtain the MSISDN based on the caller's locale information. For example, upon registration, a caller may provide locale information such as an area code, a telephone number, a zip code or the like that corresponds to the caller's current location. In an embodiment, at least a portion of the locale information may be included in the data request. A server-data function may use the locale information from the data request to obtain the caller's corresponding MSISDN. In an embodiment, the server-data function may be on a server in communication with the first gateway 205.


In an embodiment, the first gateway 205 may connect 110 the caller to a second gateway 210. In an embodiment, the second gateway 210 may be a Wireless Village Gateway. The caller may be connected 110 to the second gateway 210 via a user-based protocol, such as Extensible Messaging and Presence Protocol (“XMPP”) or the like. In an embodiment, the caller may also be connected to a presence environment 235. A presence environment 235 may be an environment in which one or more users may monitor the presence of and/or communicate with one or more other users.


In an embodiment, the caller may be authenticated 115 at the second gateway 210. Authentication 115 may verify the identity of the caller. In an embodiment, information associated with the caller may be compared with information associated with a plurality of known subscribers. Information associated with the plurality of subscribers may be stored in a storage medium 240, such as a database, that may be located on the second gateway 210. Alternatively, the storage medium 240 may be located remotely from the second gateway 210. In an embodiment, each subscriber may be associated with information such as a MSISDN, a namespace identification and/or the like.


In an embodiment, the MSISDN and/or the namespace identification associated with a caller may be transmitted from the first gateway 205 to the second gateway 210. The second gateway 210 may compare one or more of the MSISDN and the namespace identification to the MSISDNs and namespace identifications of known subscribers to determine whether the caller is a subscriber. The second gateway 210 may approve or deny the caller's request for logon based on this comparison. For example, if the caller is determined to be a subscriber, then the request may be approved. Otherwise, the request may be denied.


In an embodiment, if the caller's logon request is approved, information associated with one or more of the caller's contacts may be retrieved 120. In an embodiment, the retrieved information may include a contacts list associated with the caller. In an embodiment the contacts list may be retrieved 120 from one or more of the first gateway 205, the second gateway 210 or the presence environment 235. In an embodiment a direct inward dialing (“DID”) number associated with each contact in the retrieved contact list may be transmitted from one or more of the first gateway 205, the second gateway 210 or the presence environment 235 to the mobile device 200.


In an embodiment, one or more authorization preferences associated with the caller may be used to authorize a callee. Authorization preferences may include an indication of the communication mode, such as “Chat Only,” “Voice Only,” or neither. Authorization preferences may also include a permission associated with a contact. For example, if a caller blocked a contact on his contact list, then the contact may not be allowed to communicate with the caller.


In an embodiment, the authorization preferences may be identified 125 by the first gateway 205. In an embodiment, identification 125 of one or more of the authorization preferences may include receiving the one or more authorization preferences from the caller's mobile device 200. In an embodiment, one or more of the authorization preferences may be predetermined by, for example, a service provider. For example, a service provider may set a default value associated with a communication mode authorization preference to be “Chat Only.” If a caller wants to enable voice capability, the caller may request that the service provider upgrade the caller's service.


In an embodiment, one or more authorization preferences associated with the caller may have been previously transmitted to the first gateway 205 and stored on the storage medium 220 associated with the first gateway 205. For example, if a caller disabled, or blocked, a contact from his contact list, then this authorization preference may be received 125 by the first gateway 205 and stored in the storage medium 220 corresponding to the first gateway 205.



11 In an embodiment, a caller may customize his authorization preferences. This may be accomplished by installing a software application 230 on a computing device 225, such as a personal computer. The software application 230 may enable customized authorization preferences by allowing a caller to communicate with the first gateway 205 via a communication channel, such as HTTP.


In an embodiment, a caller may select a contact, or callee, with whom the caller wishes to communicate with from the caller's contact list. Software on the caller's mobile device 200 may embed information associated with the contact, such as the contact's namespace identification, in a User-to-User Information Element (“UUIE”) field so that it may be transmitted when the call is placed. In an alternate embodiment, a short code representing at least a portion of information associated with the contact, such as the contact's namespace identification, may be retrieved from the storage medium 220 associated with the first gateway 205. The retrieved portion of information may be embedded in the UUIE field.


In an embodiment, the UUIE field may store 32 bytes. If the information associated with a callee exceeds 16 Unicode characters, it may be too large for the UUIE field to accurately store. In an embodiment, each Unicode character may be represented by two bytes. The first byte may be a code and the second byte may be a character. In an embodiment, embedding information in the UUIE may include stripping out the first byte from the information associated with the callee in all but the first character. This may allow the UUIE field to store information of up to 31 characters.


In an embodiment, a DID number associated with a callee may be received from the caller's mobile device 200. The DID number may be received by the first gateway 205 via a global system for mobile communication (“GSM”) channel. In an embodiment, call information may also be transmitted to the first gateway 205. The call information may include one or more of the contact's namespace identification, short code, UUIE field and/or the like. In an embodiment, the contact's namespace identification and/or the short code may be embedded in the UUIE field.


In an embodiment, the first gateway 205 may convert the GSM channel to a session initiation protocol (“SIP”). The UUIE field and at least a portion of its corresponding information may be extracted from the incoming call information. In an embodiment, the storage medium 220 associated with the first gateway 205 may map the callee's namespace identification to the intended callee's namespace identification so the call may reach the desired callee.


In an embodiment, callee authorization may be performed 130. Callee authorization may verify that the callee with whom a caller wishes to communicate is a valid callee for that caller.


In an embodiment, the caller's MSISDN may be mapped to one or more of the caller's authorization preferences. The MSISDN may be automatically transmitted to the first gateway 205 when a call is placed. Alternatively, the caller's MSISDN may be embedded in the UUIE field. The MSISDN may be extracted from the UUIE field and mapped to one or more of the caller's authorization preferences.


In an embodiment, the first gateway 205 may use the one or more authorization preferences associated with the caller to authorize a callee. The first gateway 205 may compare the callee information that it receives to one or more of the authorization preferences associated with the caller. As such, an authorization process may use the caller's identify and the callee's identify to authorize a callee.


In an embodiment, when authorization is successfully completed, the first gateway may convert the GSM channel to a SIP REFER, via ISUP, and may send the SIP REFER to a third gateway 215 to connect 135 the call. In an embodiment, the third gateway 215 may transfer the call to a computing device associated with the intended callee, and communication may be successfully established between the caller's mobile device 200 and the callee's computing device. In an embodiment, the first gateway 205 may also convert the GSM channel to a real-time transport protocol (“RTP”) channel to enable voice flow between the caller and the callee via the first gateway 205.


In an embodiment, authentication and/or authorization may be performed by different protocols in various environments. However, to successfully perform authentication and authorization, a data request from a caller may be converted to an appropriate protocol in order open communication between the caller and the callee. For example, the communication environments of providers may be fundamentally different. As such, each provider may utilize a specific protocol that best showcases its capabilities.



FIG. 3 illustrates a flow chart for an exemplary method of determining a provider associated with a callee and determining a corresponding protocol based on the provider according to an embodiment. FIG. 4 illustrates an exemplary system for determining a provider associated with a callee and a corresponding protocol according to an embodiment.


In an embodiment, a gateway 405 may receive 300 a logon request from a mobile device 400 associated with a caller via a protocol, such as HTTP. Information associated with the caller's contacts, such as a contact list, may be sent 305 to the caller's mobile device 400 from the gateway 405. In an embodiment, the caller may select a contact from his contact list with whom to communicate. This selection may be received 310 by the gateway 405. A data request, such as an HTTP request, may be received 315 by the gateway 405. The call may be connected to the gateway 405 by a GSM audio channel. In an embodiment, the gateway 405 may determine 320 into which communication environment the caller is dialing. Based on the communication environment, the gateway 405 may convert 325 the data request to a protocol associated with the communication environment. For example, a first provider may utilize an XMPP protocol to enable communication in its communication environment, while a second provider may utilize a HTTP/DTBC protocol to enable communication in its communication environment. A caller may place a call to a callee who belongs to the first provider. The gateway 405 may determine 320 that the callee is a user of the first provider and may convert 325 the data request to an XMPP protocol. In an embodiment, the call may be completed 330 between the caller's mobile device 400 and a computing device 410, 415 associated with the callee, such as a personal computer or the like.


In an embodiment, a caller may be connected to one or more communication environments prior to determining which communication environment is associated with the intended callee. FIG. 5 illustrates a flow chart of an exemplary method of connecting a call according to an embodiment. FIG. 6 illustrates an exemplary system for connecting a call according to an embodiment.


A caller may be connected 500 to a gateway 605 via a data request, such as HTTP. The gateway 605 may connect 505 the caller to one or more communication environments. In an embodiment, the caller may be connected to a communication environment via a protocol associated with the communication environment. For example, a first communication environment may utilize a merged protocol, such as XMPP and a Jingle protocol, while a second communication environment may utilize an HTTP/DTBC protocol. The caller may be connected to both communication environments via the associated protocols.


In an embodiment, information associated with the caller's contacts, such as a contact list, may be sent 510 from the gateway 605 to caller's mobile device 600. In an embodiment, contacts belonging to a communication environment may be sent 510 via the protocol associated with the communication environment. For example, any contacts belonging to the first communication environment may be sent 510 via a XMPP+Jingle protocol, while any contacts belonging to the second communication environment may be sent 510 via a HTTP/DTBC protocol. In an embodiment, one or more unique dial codes associated with one or more contacts may be sent 510 to the mobile device 600.


In an embodiment, the caller may select a contact to call. This selection may be received 515 by the gateway 605. A data request may be received 520 by the gateway 605. In an alternate embodiment, the data request may be merged with the retrieval of information associated with one or more of the caller's contacts.


In an embodiment, the call may be connected 525 via a GSM audio channel between the caller's mobile device 600 and the gateway 605. The gateway 605 may determine 530 the communication environment associated with the callee and may convert 535 the call based on the determined communication environment. For example, if the caller wants to communicate with a callee who is a user of the first communication environment, the gateway 605 may complete the call over an XMPP +Jingle protocol. In an embodiment, both the audio and the data portions of the call may be completed over the protocol. Alternatively, the audio portion may be converted from the GSM channel to an RTP protocol. In an embodiment, the call may be completed between the caller's mobile device 600 and a computing device 610, 615 associated with the callee, such as a personal computer or the like.


In an embodiment, a caller may be connected to a plurality of gateways in order to communicate with a contact. FIG. 7 illustrates a flow chart of an exemplary method of utilizing a plurality of gateways according to an embodiment. FIG. 8 illustrates an exemplary system of utilizing a plurality of gateways according to an embodiment.


In an embodiment, a caller may be connected 700 to a plurality of gateways via a plurality of protocols. For example, a caller may be connected 700 to a first gateway 800 via a first protocol, and may be connected 700 to a second gateway 805 via a second protocol. In an embodiment, information associated with the caller's contacts, such as a portion of a contact list, may be sent 705 from one or more gateways to the caller's mobile device 810. In an embodiment, the contacts belonging to a communication environment may be sent via the protocol associated with the communication environment. For example, any contacts that belong to a first communication environment may be sent by the first gateway 800 via the first protocol.


In an embodiment, the caller may select a contact to call. This selection may be received 710 by one or more gateways 800, 805. A data request may be received 715 by one or more gateways 800, 805. The gateway associated with the communication environment of the callee may connect 720 the call to a computing device 815, 820 associated with the callee.


In an embodiment, a call may be connected between a caller and a callee via a single gateway. FIG. 9 illustrates a flow chart of an exemplary method of connecting a call via a single gateway according to an embodiment. FIG. 10 illustrates an exemplary system for connecting a call via a single gateway according to an embodiment.


A gateway 1005 may receive 900 a logon request from a caller via a mobile device 1000. In an embodiment, the caller may logon to the gateway 1005 via a protocol such as XMPP, Jingle or the like. The caller may logon to the gateway 1005 via a merged protocol. A merged protocol may comprise a plurality of protocols, such as XMPP and Jingle. In an embodiment, information associated with one or more of the caller's contacts, such as a contact list, may be retrieved 905 by the gateway 1005 and sent 910 to the mobile device 1000 via one or more protocols. The caller may select a contact from the contact list with whom to communicate. A data request may be received 915 by the gateway 1005 via one or more of the associated protocols. In an embodiment, a DID number associated with the contact may be sent 920 to the mobile device 1000. A DTMF sequence may also be sent to the mobile device 1000. In an embodiment, the call may be connected 925 via a GSM audio channel.


In an embodiment, a call may be connected via a merged gateway and a third party. FIG. II illustrates a flow chart of an exemplary method of connecting a call according to an embodiment. FIG. 12 illustrates an exemplary system for connecting a call according to an embodiment.


A logon request may be received 1100 by a gateway 1200 from a mobile device 1205. The request may be received 1100 over a first protocol 1210, such as XMPP. In an alternative embodiment, the request may be received 1100 over a second protocol 1215. In an embodiment, the second protocol 1215 may be associated with a third party, such as a service provider. For example, a user may logon to the gateway 1200 via HTTP, thus opening a channel to the third party/HTTP protocol.


In an embodiment, information associated with the caller's contacts, such as a contact list, may be retrieved 1105 by the gateway 1200 and sent to the mobile device 1205 via the first protocol 1210. The caller may select a contact from the contact list with whom to communicate. Information associated with the caller and/or the callee may be received 1110 by the gateway 1200 over the second protocol 1215, and the call may be connected 1115 using a GSM audio channel to enable voice.


It will be appreciated that various of the above-disclosed and other features and functions. or alternatives thereof, may be desirably combined into many other different systems or applications. Also that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.

Claims
  • 1. A method of authenticating a caller and authorizing a callee in a user-device environment, the method comprising: receiving, by a first gateway, a logon request comprising information associated with the caller, wherein a second gateway determines whether the caller is a subscriber to a network based on at least a portion of the received caller information;when the caller is a subscriber, receiving, by the first gateway, information associated with the callee, wherein the callee belongs to a contact list associated with the caller; anddetermining, by the first gateway, whether the callee is authorized based on at least the callee information and one or more authorization preferences associated with the caller, wherein the one or more authorization preferences comprise a communication mode of a plurality of communication modes permitted between the caller and callee;wherein, when the callee is authorized, a call is connected between the caller and the callee.
  • 2. The method of claim 1, wherein determining whether the caller is a subscriber comprises: comparing at least a portion of the caller information to at least a portion of information associated with one or more subscribers.
  • 3. The method of claim 1, wherein determining whether the caller is a subscriber comprises: identifying, from the caller information, one or more of a MSISDN and a namespace identification associated with the caller;identifying one or more subscribers, wherein each subscriber has a corresponding MSISDN and namespace identification; andcomparing one or more of the MSISDN and the namespace identification associated with the caller to one or more of the MSISDN and namespace identification associated with one or more subscribers.
  • 4. The method of claim 1, wherein receiving information associated with the callee comprises one or more of the following: receiving a direct-inward-dialing number associated with the callee;receiving a namespace identification associated with the callee;extracting callee information from a user-to-user element field; orretrieving callee information from a storage medium.
  • 5. The method of claim 1, wherein determining whether the callee is authorized comprises: identifying the one or more authorization preferences associated with the caller;comparing the one or more authorization preferences to at least a portion of the callee information.
  • 6. The method of claim 5, wherein identifying the one or more authorization preferences comprises: identifying a MSISDN from the caller information; andidentifying the one or more authorization preferences based on the identified MSISDN.
  • 7. The method of claim 1, wherein connecting the call between the caller and the callee comprises: converting, by the first gateway, a global system for mobile communication channel between a mobile device associated with the caller and the first gateway to a session initiation protocol.
  • 8. The method of claim 1, wherein connecting the call between the caller and the callee comprises: converting, by the first gateway, a global system for mobile communication channel between a mobile device associated with the caller and the first gateway to a session initiation protocol refer;transmitting the session initiation protocol refer to a third gateway; andconnecting the call to a computing device associated with the callee via the third gateway.
  • 9. The method of claim 1, wherein connecting the call between the caller and the callee comprises: converting, by the first gateway, a global system for mobile communication channel between a mobile device associated with the caller and the first gateway to a real-time transport protocol.
  • 10. A system for authenticating a caller and authorizing a callee in a user-device environment comprising: a first gateway configured to authenticate the caller based on at least information associated with the caller and information associated with a plurality of subscribers; anda second gateway configured to authorize the callee based on one or more authorization preferences associated with the caller and information associated with the callee, wherein the second gateway is in communication with the first gateway, wherein the callee belongs to a contact list associated with the caller, and wherein the one or more authorization preferences comprise a communication mode of a plurality of communication modes permitted between the caller and callee.
  • 11. The system of claim 10, wherein the first gateway and the second gateway are in communication via a user-based protocol.
  • 12. The system of claim 10, wherein the second gateway comprises a storage medium configured to: store the subscriber information; andmap at least a portion of the caller information to the subscriber information.
  • 13. The system of claim 10, wherein the second gateway comprises a storage medium configured to map at least a portion of the callee information to the one or more authorization preferences.
  • 14. The system of claim 10, further comprising a third gateway in communication with the second gateway, wherein the third gateway is configured to: receive a session initiation protocol refer from the second gateway; andconnect a call between a mobile device associated with the caller and a computing device associated with the callee.
  • 15. The system of claim 10, wherein the second gateway is configured to convert a global system for mobile communication channel between a mobile device associated with the caller and the second gateway to a session initiation protocol.
  • 16. The system of claim 10, wherein the second gateway is configured to convert a global system for mobile communication channel between a mobile device associated with the caller and the second gateway to a real-time transport protocol.
  • 17. The method of claim 1, wherein the plurality of communication modes comprises two or more of chat only, voice only, both chat and voice, or blocked.
  • 18. The method of claim 5, wherein the identifying the one or more authorization preferences comprises receiving the one or more authorization preferences from at least one of a mobile device associated with the caller, a service provider associated with the caller, or the first gateway.
  • 19. An apparatus for authenticating a caller and authorizing a callee in a user-device environment, the apparatus comprising: means for receiving, by a first gateway, a logon request comprising information associated with the caller, wherein a second gateway determines whether the caller is a subscriber to a network based on at least a portion of the received caller information;means for receiving by the first gateway, when the caller is a subscriber, information associated with the callee, wherein the callee belongs to a contact list associated with the caller; andmeans for determining, by the first gateway, whether the callee is authorized based on at least the callee information and one or more authorization preferences associated with the caller, wherein the one or more authorization preferences comprise a communication mode of a plurality of communication modes permitted between the caller and callee;wherein, when the callee is authorized, a call is connected between the caller and the callee.
  • 20. A non-transitory computer-readable medium for authenticating a caller and authorizing a callee in a user-device environment, comprising: at least one instruction for receiving, by a first gateway, a logon request comprising information associated with the caller, wherein a second gateway determines whether the caller is a subscriber to a network based on at least a portion of the received caller information;at least one instruction for receiving by the first gateway, when the caller is a subscriber, information associated with the callee, wherein the callee belongs to a contact list associated with the caller; andat least one instruction for determining, by the first gateway, whether the callee is authorized based on at least the callee information and one or more authorization preferences associated with the caller, wherein the one or more authorization preferences comprise a communication mode of a plurality of communication modes permitted between the caller and callee;wherein, when the callee is authorized, a call is connected between the caller and the callee.
  • 21. An apparatus for authenticating a caller and authorizing a callee in a user-device environment, the apparatus comprising: a component configured to receive, by a first gateway, a logon request comprising information associated with the caller, wherein a second gateway determines whether the caller is a subscriber to a network based on at least a portion of the received caller information;a component configured to receive, by the first gateway, when the caller is a subscriber, information associated with the callee, wherein the callee belongs to a contact list associated with the caller; anda component configured to determine, by the first gateway, whether the callee is authorized based on at least the callee information and one or more authorization preferences associated with the caller, wherein the one or more authorization preferences comprise a communication mode of a plurality of communication modes permitted between the caller and callee,wherein, when the callee is authorized, a call is connected between the caller and the callee.
B. CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority under 35 U.S.C. §119(e) to U.S. Provisional Application No. 60/889,305, filed Feb. 12, 2007 and U.S. Provisional Application No. 60/889,959 filed Feb. 15, 2007, the entireties of which are incorporated by reference herein. This application is related to U.S. patent application Ser. No. 11/971,605 filed Jan. 9, 2008.

US Referenced Citations (149)
Number Name Date Kind
4751728 Treat Jun 1988 A
4799253 Stern et al. Jan 1989 A
5570417 Byers Oct 1996 A
5577100 McGregor et al. Nov 1996 A
5635940 Hickman et al. Jun 1997 A
5848128 Frey Dec 1998 A
5878122 White et al. Mar 1999 A
5913162 Gourdin et al. Jun 1999 A
5946618 Agre et al. Aug 1999 A
6044263 Valentine et al. Mar 2000 A
6188762 Shooster Feb 2001 B1
6205126 Moon Mar 2001 B1
6333931 LaPier et al. Dec 2001 B1
6564261 Gudjonsson et al. May 2003 B1
6618590 Howe Sep 2003 B1
6678364 Ruckart Jan 2004 B2
6687362 Lindquist et al. Feb 2004 B1
6697858 Ezerzer et al. Feb 2004 B1
6707811 Greenberg et al. Mar 2004 B2
6751457 Martin Jun 2004 B1
6775375 Bhusri Aug 2004 B1
6850762 Ala-Luukko et al. Feb 2005 B1
6917610 Kung et al. Jul 2005 B1
6937873 Levy et al. Aug 2005 B2
7085260 Karaul et al. Aug 2006 B2
7099652 Brown et al. Aug 2006 B2
7110772 Wu Sep 2006 B1
7127488 Scott et al. Oct 2006 B1
7130620 Forman et al. Oct 2006 B2
7139370 Tse Nov 2006 B1
7243075 Shaffer et al. Jul 2007 B1
7257837 Xu et al. Aug 2007 B2
7274786 Fleischer, III et al. Sep 2007 B2
7280652 Bocking et al. Oct 2007 B2
7369650 Bhusri May 2008 B1
7395057 Awasthi et al. Jul 2008 B2
7436820 Beck et al. Oct 2008 B2
7471692 Erickson Dec 2008 B1
7480723 Grabelsky et al. Jan 2009 B2
7529231 Soo et al. May 2009 B2
7548611 Howe Jun 2009 B2
7620404 Chesnais et al. Nov 2009 B2
7634509 Onyon et al. Dec 2009 B2
7701883 Beckemeyer Apr 2010 B2
7738861 Fournier Jun 2010 B2
7974610 Nachum Jul 2011 B2
8116836 Ki Feb 2012 B2
8391848 Guedalia et al. Mar 2013 B2
20010038624 Greenberg et al. Nov 2001 A1
20020013163 O'Prey Jan 2002 A1
20020099670 Jakobsson Jul 2002 A1
20020120760 Kimchi et al. Aug 2002 A1
20020129103 Birkler et al. Sep 2002 A1
20020169984 Kumar et al. Nov 2002 A1
20020193107 Nascimento Dec 2002 A1
20030013441 Bhogal et al. Jan 2003 A1
20030046404 O'neill et al. Mar 2003 A1
20030046405 O'neill et al. Mar 2003 A1
20030050051 Vilander Mar 2003 A1
20030060211 Chern et al. Mar 2003 A1
20030091024 Stumer May 2003 A1
20030115138 Brown et al. Jun 2003 A1
20030118175 Hariri et al. Jun 2003 A1
20030148790 Pappalardo et al. Aug 2003 A1
20030190025 Okamura et al. Oct 2003 A1
20040019539 Raman et al. Jan 2004 A1
20040037396 Gray et al. Feb 2004 A1
20040044771 Allred et al. Mar 2004 A1
20040143669 Zhao et al. Jul 2004 A1
20040156394 Westman Aug 2004 A1
20040165714 Pinault Aug 2004 A1
20040202117 Wilson et al. Oct 2004 A1
20040203643 Bhogal et al. Oct 2004 A1
20040213209 O'Connor et al. Oct 2004 A1
20040229644 Heie et al. Nov 2004 A1
20040235509 Burritt et al. Nov 2004 A1
20050025043 Mussman et al. Feb 2005 A1
20050027867 Mueller et al. Feb 2005 A1
20050033852 Tenhunen Feb 2005 A1
20050036597 Kobrosly et al. Feb 2005 A1
20050059418 Northcutt Mar 2005 A1
20050070230 Das et al. Mar 2005 A1
20050102257 Onyon et al. May 2005 A1
20050138571 Keskar et al. Jun 2005 A1
20050157858 Rajagopalan et al. Jul 2005 A1
20050163065 Yule Jul 2005 A1
20050171799 Hull et al. Aug 2005 A1
20050182798 Todd et al. Aug 2005 A1
20050198031 Pezaris et al. Sep 2005 A1
20050198172 Appelman et al. Sep 2005 A1
20050198365 Wei Sep 2005 A1
20050221847 Brehler et al. Oct 2005 A1
20050249344 Mueller et al. Nov 2005 A1
20050273512 Cho Dec 2005 A1
20060018306 Nishida et al. Jan 2006 A1
20060018311 Kobayashi et al. Jan 2006 A1
20060023701 Nishida et al. Feb 2006 A1
20060026288 Acharya et al. Feb 2006 A1
20060029042 Nishida et al. Feb 2006 A1
20060029043 Nishida et al. Feb 2006 A1
20060029046 Nishida et al. Feb 2006 A1
20060031368 deCone Feb 2006 A1
20060040711 Whistler Feb 2006 A1
20060077932 Takeda et al. Apr 2006 A1
20060159456 Gumaste et al. Jul 2006 A1
20060168326 Baldwin et al. Jul 2006 A1
20060173961 Turski et al. Aug 2006 A1
20060205400 Kiyomoto Sep 2006 A1
20060209690 Brooke Sep 2006 A1
20060236388 Ying et al. Oct 2006 A1
20060246877 Kashanian et al. Nov 2006 A1
20060248146 Wilk Nov 2006 A1
20060270392 Scott et al. Nov 2006 A1
20060270400 DaSilva et al. Nov 2006 A1
20070005776 Hansen et al. Jan 2007 A1
20070016682 Hodgson Jan 2007 A1
20070060100 Watler et al. Mar 2007 A1
20070064607 Moon et al. Mar 2007 A1
20070071006 Bosch et al. Mar 2007 A1
20070112964 Guedalia et al. May 2007 A1
20070143397 Guedalia et al. Jun 2007 A1
20070162350 Friedman Jul 2007 A1
20070281676 Borras et al. Dec 2007 A1
20070287430 Hosain et al. Dec 2007 A1
20080003964 Alperin et al. Jan 2008 A1
20080013531 Elliott et al. Jan 2008 A1
20080037524 Koch et al. Feb 2008 A1
20080056208 Hinrikus et al. Mar 2008 A1
20080056235 Albina et al. Mar 2008 A1
20080070579 Kankar et al. Mar 2008 A1
20080076409 Hinrikus et al. Mar 2008 A1
20080096592 Waytena et al. Apr 2008 A1
20080139210 Gisby et al. Jun 2008 A1
20080159261 Bessis Jul 2008 A1
20080159515 Rines Jul 2008 A1
20080166999 Guedalia et al. Jul 2008 A1
20080167019 Guedalia et al. Jul 2008 A1
20080167020 Guedalia et al. Jul 2008 A1
20080167039 Guedalia et al. Jul 2008 A1
20080181165 Guedalia et al. Jul 2008 A1
20080188227 Guedalia et al. Aug 2008 A1
20080244023 Guedalia et al. Oct 2008 A1
20080248795 Petersen et al. Oct 2008 A1
20080263170 Caron et al. Oct 2008 A1
20080305782 Guedalia et al. Dec 2008 A1
20090190738 Guedalia et al. Jul 2009 A1
20100080376 Hartley et al. Apr 2010 A1
20110312308 Willey Dec 2011 A1
20130137421 Guedalia et al. May 2013 A1
Foreign Referenced Citations (22)
Number Date Country
10341737 Apr 2005 DE
1179941 Feb 2002 EP
1517256 Mar 2005 EP
1701569 Sep 2006 EP
2391135 Jan 2004 GB
9723083 Jun 1997 WO
9847298 Oct 1998 WO
WO 9934628 Jul 1999 WO
0198867 Dec 2001 WO
0215030 Feb 2002 WO
0221779 Mar 2002 WO
0239237 May 2002 WO
WO 03032613 Apr 2003 WO
03094011 Nov 2003 WO
2005065296 Jul 2005 WO
2006039552 Apr 2006 WO
WO 2006044654 Apr 2006 WO
2007001850 Jan 2007 WO
2007005124 Jan 2007 WO
2007025373 Mar 2007 WO
2007109559 Sep 2007 WO
2008013642 Jan 2008 WO
Non-Patent Literature Citations (18)
Entry
Saravanan Shanmugham, et al., Daniel C. Burnett, “Media Resource Control Protocol Version 2(MRCPv2)”, IETF Standard-Working-Draft, Internet Engineering Task Force, IETF, vol. Speechsc, No. 6, pp. 1-176 (2005).
Sinnreich, et al., “SIP telephony device requirements and configuration draft-sinnreich-sipdev-req-07.txt”, IETF Standard-Working-Draft, Internet Engineering Task Force, No. 7, pp. 1-37 (2005).
Griffin et al., “Integrating SIP, presence and FTP to provide wireless multimedia messaging”, Wireless Communications and Networking Conference, IEEE Communications Society, 4:2581-2586 (2004).
Handley et al., “RFC 2543 SIP: Session Initiation Protocol”, IETF Standard, Internet Engineering Task Force, pp. 1-153 (1999).
Handley et al., “SIP: Session Initiation Protocol”, IETF, Standard-Working-Draft, Internet Engineering Task Force, vol. 4, pp. 1-83 (1997).
Petrie, Pingtel Corp., A Framework for SIP User Agent Profile Delivery draft-iet f-sipping-config-framework-02. txt., IETF Standard-Working-Draft, Internet Engineering Task Force, No. 2, pp. 1-22 (2004).
Colman Ho, “Voice Over Internet Protocol (VolP) Overview”, Presentation to TSACC, Mar. 23, 2004; www.isacc.ca/isacc/—doc/Book%2017%20-%202004/TSACC-04-31305.ppt.
Alcatel-Lucent, “Alcatel-Lucent OmniPCX Enterprise Communication Server: Delivering powerful, reliable and scalable IP communications to drive your 21st century business”, 2007. http://www1.alcatel-lucent.com/com/en/ appcontent/opgss/ENT—OmniPCX%20Enterprise—datasheet—1007—EN—tcm228-1353221635.pdf.
SIP Connect, “CableLabs Proposal for SIP Connect 1.1”, 2007; http://www.sipforum.org/component/option, com—docman/task,doc—view/gid,149/Itemid,75/.
NST, New Standard Telephony, Convergence Simplified, Company Profile, NST 2005; http://www.ns-tel.com/files/NST—Company—Profile.pdf.
Janne Lundqvist et al., Messaging-over-IP—A network for messaging and information services; http://www.ericsson.com/ericsson/corpinfo/publications/review/1999—03/files/1999035.pdf.
Case Study, Intel Centrino, Mobile Technology, Intel Xeon Processor MP, Shanghai GM, “Seamless Communications”, http://www.intel.com/netcomms/technologies/voice/310998.pdf.
Kundan Narendra Singh, Thesis, “Reliable, Sealable and Interoperable Internet Telephony”, Columbia University, 2006; http://www1.cs.columbia.edu/˜kns10/publication/thesis.pdf.
Intel Communications Alliance, “TeleSym and Intel Deliver Voice-over-Internet-Protocol (VolP) Enterprise Communication Solution”, Jun. 2004; http://www.intel.com/network/csp/pdf/9003wp.pdf.
Sinnreich/Pulver Com H. et al.: “SIP Telephony Device Requirements and Configuration; draft-sinnreich-sipdev-req-08.txt”, IETF Standard-Working-Draft, Internet Engineering Task Force, IETF, CH, No. 8, Oct. 1, 2005, XP015043067 ISSN: 0000-0004.
Rosenberg, J. et al.: “SIP: Session Initiation Protocol” 20020601; 20020600; Jun. 1, 2002, pp. 1-269, XP015009039.
Schulzrinne Columbia University B. Volz Ericsson H: “Dynamic Host Configuration Protocol (DHCPv6) Options for Session Initiation Protocol (SIP) Servers; rfe3319.txt”, IETF Standard, Internet Engineering Task Force, IETF, CH. Jul. 1, 2003, XP015009189; ISSN: 0000-0003.
International Search Report and Written Opinion—PCT/US2008/053685, International Searching Authority—US, Alexandria, VA, Aug. 11, 2008.
Related Publications (1)
Number Date Country
20080192910 A1 Aug 2008 US
Provisional Applications (2)
Number Date Country
60889305 Feb 2007 US
60889959 Feb 2007 US