US20120239782A1 - Method and Apparatus Pertaining to Pushing Content Via A Push Proxy Gateway - Google Patents

Method and Apparatus Pertaining to Pushing Content Via A Push Proxy Gateway Download PDF

Info

Publication number
US20120239782A1
US20120239782A1 US13/051,281 US201113051281A US2012239782A1 US 20120239782 A1 US20120239782 A1 US 20120239782A1 US 201113051281 A US201113051281 A US 201113051281A US 2012239782 A1 US2012239782 A1 US 2012239782A1
Authority
US
United States
Prior art keywords
content
push
control circuit
proxy gateway
push proxy
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/051,281
Inventor
Srikanth SrinivasMurthy Basavanahally
Mahesh Babubhai Bhuta
Rakesh Kumar Arora
Matthew Rogers D'Andrea
Marco Di Cesare
Kannan Narayanan Iyer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BlackBerry Ltd
Original Assignee
Research in Motion Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Research in Motion Ltd filed Critical Research in Motion Ltd
Priority to US13/051,281 priority Critical patent/US20120239782A1/en
Assigned to RESEARCH IN MOTION CORPORATION reassignment RESEARCH IN MOTION CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: Basavanahally, Srikanth SrinivasMurthy, BHUTA, MAHESH BABUBHAI
Assigned to RESEARCH IN MOTION LIMITED reassignment RESEARCH IN MOTION LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: RESEARCH IN MOTION CORPORATION
Assigned to RESEARCH IN MOTION CORPORATION reassignment RESEARCH IN MOTION CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BHUTA, MAHESH BABUBHAI, Iyer, Kannan Narayanan, Basavanahally, Srikanth SrinivasMurthy
Assigned to RESEARCH IN MOTION LIMITED reassignment RESEARCH IN MOTION LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ARORA, RAKESH KUMAR, D'Andrea, Matthew Rogers, Di Cesare, Marco
Assigned to RESEARCH IN MOTION LIMITED reassignment RESEARCH IN MOTION LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: RESEARCH IN MOTION CORPORATION
Priority to CA2771559A priority patent/CA2771559A1/en
Priority to EP12159988.0A priority patent/EP2501110A3/en
Publication of US20120239782A1 publication Critical patent/US20120239782A1/en
Assigned to BLACKBERRY LIMITED reassignment BLACKBERRY LIMITED CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: RESEARCH IN MOTION LIMITED
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/561Adding application-functional data or data for application control, e.g. adding metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Definitions

  • This disclosed concept relates generally to pushing content to a communication device and more particularly to pushing content via a push proxy gateway.
  • the recipient device proactively requests the content, at a time of need, using a so-called pull methodology.
  • some service or source takes the independent initiative to forward the content to the recipient device using a so-called push methodology.
  • a push proxy gateway serves as a necessary intermediary network element to facilitate pushing content from a server-side push application to the recipient device.
  • push proxy gateway There are, however, more than one type of push proxy gateway. These types include, for example, the enterprise server (i.e., a push proxy gateway that is hosted by an enterprise (such as a manufacturer of goods, a transport company, a provider of legal services, and so forth) behind their firewall) as well as the Internet server (i.e., a push proxy gateway that is hosted by a primary service provider).
  • the server-side application that seeks to push content to a given recipient device to know which type of push proxy gateway to employ for a given recipient device. In some cases this becomes further complicated in that the particular type of push proxy gateway to employ for a given recipient device can vary depending upon the particular recipient device push-friendly application itself.
  • each server-side push-based application maintains a map of its subscriber's addresses and the transport type (i.e., the push proxy gateway type) to be used when pushing content to each particular subscriber device (and/or subscriber-device application, as the case may be).
  • transport type i.e., the push proxy gateway type
  • FIG. 1 comprises a flow diagram as configured in accordance with various embodiments of the disclosed concept
  • FIG. 2 comprises a block diagram as configured in accordance with various embodiments of the disclosed concept
  • FIG. 3 comprises a flow diagram as configured in accordance with various embodiments of the disclosed concept
  • FIG. 4 comprises a block diagram as configured in accordance with various embodiments of the disclosed concept
  • FIG. 5 comprises a block diagram as configured in accordance with various embodiments of the disclosed concept.
  • FIG. 6 comprises a signal flow diagram as configured in accordance with various embodiments of the disclosed concept.
  • a network element such as a server-side library, is configured to accept push registrations from each of a plurality of communication devices. These push registrations can each include at least an address for receiving pushed content and a categorical identification of a push proxy gateway type to use when pushing the content to the communication. In a typical application setting this network element then stores these push registrations for future use.
  • the network element upon then receiving content to push to a given one of the plurality of communication devices from a push application, along with an address for that communication device, can use that address to identify the push proxy gateway type that corresponds to the push application to thereby provide an identified push proxy gateway type. The network element can then use this information to forward the content to the identified push proxy gateway type to thereby facilitate pushing the content to the intended recipient device.
  • this pushed-content service information can include identifying information such as, but not limited to, an email address, a device personal identification number, and so forth.
  • This pushed-content service information can also comprise the aforementioned categorical identification of the push proxy gateway type to use when pushing content to the communication device (either on a device basis or on an application-by-application basis as desired).
  • These teachings relieve a push-application server from the burden of maintaining an accurate, complete, and current record of which push proxy gateway type to employ when pushing content to a given subscriber's platform (or subscriber's application). These teachings can also serve to lighten traffic burdens on the network by potentially reducing the number of informational exchanges that are required to ensure currency of information across a large number of pushed-content subscribers and pushed-content servers.
  • teachings can be readily deployed in an economical manner and can serve to leverage the utility and service of legacy infrastructure. These teachings are also highly scalable and can provide satisfactory service over a wide range of devices, applications, network architectures, bearer mediums, gateway types, and the like.
  • FIG. 1 an illustrative process 100 that is compatible with many of these teachings will now be presented.
  • a control circuit as comprises a part of an end-user device such as a communication device carries out this process 100 .
  • this predetermined event can comprise, for example, powering up of the control circuit 101 .
  • This might comprise powering up from a complete loss of power (as can occur, for example, when the communication device's battery has been removed or when a user sets the on/off switch to “off”) or, if desired, might comprise powering up from a reduced state of power consumption (as occurs when, for example, the control circuit sleeps).
  • control circuit In response to detecting this predetermined event, the control circuit responsively registers 102 pushed-content service information with a server-side library.
  • a server-side library to refer to a software artifact that encompasses a set of rich functionality.
  • this pushed-content service information can comprise, at least in part, identifying information as pertains to the control circuit.
  • An email address can comprise one potentially useful example in these regards.
  • a device personal identification number (PIN) comprises another potentially useful example, depending upon the application setting.
  • PIN personal identification number
  • this pushed-content service information can comprise, at least in part, a categorical identification of a push proxy gateway type to use when pushing content to the platform that includes the control circuit.
  • Push proxy gateways are generally known in the art and hence, for the sake of brevity, further elaboration in these regards will not be provided here.
  • this can comprise identifying whether an enterprise-type push proxy gateway should be employed when pushing content or whether, say, an Internet-type push proxy gateway should be employed instead.
  • This categorical identification of push proxy gateway by type may, or may not, also accompany identification of a specific push proxy gateway as desired. In any event, this categorical identification can be provided as being generally applicable to the device that includes the control circuit. These teachings will also accommodate, however, providing this categorical identification on an application-by-application basis. In this case, a plurality of different types of push proxy gateways may be identified as being appropriate for use when pushing content to a given device such as a communication device, with the specific type to employ in a given instance depending upon the particular application that serves to receive (or process or present) the pushed content.
  • the platform comprises a communication device 200 of choice (such as a wireless two-way mobile device such as, but not limited to, a modern smart phone, a pad/tablet-based device, a laptop, and so forth).
  • a communication device 200 of choice such as a wireless two-way mobile device such as, but not limited to, a modern smart phone, a pad/tablet-based device, a laptop, and so forth.
  • This illustrative communication device 200 includes a control circuit 201 that operably couples to a memory 202 and a network interface 203 (such as a wireless network interface).
  • the memory can serve to store, for example, some or all of the aforementioned identifying information.
  • the control circuit 201 can comprise a fixed-purpose hard-wired platform or can comprise a partially or wholly programmable platform. All of these architectural options are well known and understood in the art and require no further description here.
  • control circuit 201 comprises an at least partially programmable platform
  • the aforementioned memory 202 can also comprise a non-transitory computer-readable media that serves to store the executable code to permit the control circuit 201 to carry out the desired functionality.
  • the control circuit 201 can be configured (for example, via appropriate programming) to carry out one or more of the actions and functionality set forth herein. This can include, by way of example, detecting the aforementioned predetermined event and responding to that detecting by registering the aforementioned pushed-content service information with a server-side library.
  • a corresponding process 300 that can be carried out by, for example, a control circuit as comprises a part of the aforementioned server-side library will be presented for the sake of illustration but without intending any particular limitations in these regards.
  • the control circuit accepts 301 push registrations from each of a plurality of communication devices.
  • these push registrations can each include at least an address (such as one or more email addresses, device PINs, and so forth) for receiving pushed content and a categorical identification of a push proxy gateway type to use when pushing the content to the communication device. This can comprise, by way of illustration, identifying an enterprise server type or an Internet server type.
  • this can comprise accepting registrations from a single device that presents a plurality of categorical identifications of push proxy gateway types where those identifications correspond to different applications at the communication device. So configured, a given communication device can utilize differing categories of push proxy gateway types depending upon the particular application that facilitates pushing the content.
  • the control circuit can then store 302 these push registrations in a corresponding memory to facilitate subsequent use of that information.
  • this can comprise locally storing this information using a memory that shares, for example, a same power supply, chassis, housing or the like with the control circuit.
  • this could comprise remotely storing this information using a physically remote memory that couples to the control circuit via an intervening network but which does not share a common power supply, chassis, housing or the like with the control circuit.
  • the server-side library can now optionally leverage the availability of the aforementioned information to facilitate pushing content to registered devices if desired.
  • optional support in this regard can comprise receiving 303 content to push to a given one of the aforementioned plurality of communication devices from a push application along with an address for this particular communication device.
  • This content can of course assume any of a wide variety of data formats and can include textual content, still image content, video content, audio content, and so forth as desired.
  • the present teachings are generally applicable to all pushable content.
  • the control circuit can use 304 the proffered address to identify the push proxy gateway type that corresponds to this push application. This identified push proxy gateway type can then be used to forward 305 the received content to a push proxy gateway of the correct, designated type. That push proxy gateway can then forward the content on to the addressed communication device.
  • the above-described process 300 can also be readily enabled using any of a wide variety of available, readily-configured platforms, including partially or wholly programmable platforms as are known in the art or dedicated purpose platforms as may be desired for some applications.
  • FIG. 4 an illustrative approach (and non-limiting approach) to such a platform will now be provided.
  • the platform comprises a server-side library 400 of choice.
  • This illustrative server-side library 400 includes a control circuit 401 that operably couples to a memory 402 and a network interface 403 .
  • the memory can serve to store, for example, one or more tables or other storage paradigms that correlate the aforementioned registered identifying information with corresponding categorical identifications of particular push proxy gateway types.
  • the control circuit 401 can again comprise a fixed-purpose hard-wired platform or can comprise a partially or wholly programmable platform.
  • control circuit 401 comprises an at least partially programmable platform
  • the aforementioned memory 402 can also serve to store the executable code to permit the control circuit 401 to carry out the desired functionality.
  • control circuit 401 can be configured (for example, via appropriate programming) to carry out one or more of the actions and functionality set forth herein.
  • FIG. 5 provides an illustrative system-wide overview in these general regards.
  • a wireless communication device 200 can register with a server-side library 400 as per these teachings via one or more intervening networks 501 .
  • the architecture of such networks, and the manners by which such components can compatibly communicate with one another, comprise a well-understood area of endeavor.
  • the present teachings are not particularly sensitive to any particular choices in these regards, further elaboration will not be provided here.
  • this illustration depicts two different types of push proxy gateways as being available; a type A push proxy gateway 502 and a type N push proxy gateway 503 .
  • the communications device 200 can register its preference (or requirement) that either a type A or type N push proxy gateway be used when pushing content to the communications device 200 (either in general or on an application-by-application basis as desired).
  • a content server 504 having content to push to the communication device 200 can forward that content, along with the corresponding recipient address, to the service-side library 400 (via, for example, the network 501 as appropriate).
  • the server-side library 400 can determine the push proxy gateway type to employ when pushing this content to this communication device 200 by employing that proffered address as described above.
  • the server-side library 400 can then forward that content along with the address to a push proxy gateway of the identified type and the latter can then push that content to the communication device 200 to complete the push.
  • FIG. 6 provides a further illustrative example in these same regards.
  • the communication device 200 subscribes 601 to a content server 504 to receive pushed content
  • the communication device 200 detects 602 an event of interest as described above and responds by conducting a push registration 603 with the server-side library 400 . It is during this push registration that the communication device 200 provides both its address (to be used when receiving the pushed content) and its preference or requirements regarding which type of push proxy gateway to be used when pushing the desired content.
  • the communication device 200 may register to receive pushed content from more than one content server or application.
  • a single registration session 603 can serve to include a corresponding plurality of registrations in these regards. If desired, however, these teachings will accommodate using a plurality of push registration sessions 604 to accommodate such a situation.
  • the content server 504 provides to the server-side library 400 content 605 to be pushed to the communication device 200 along with the address for the intended recipient of the pushed content.
  • the server-side library 400 uses the address to look-up or otherwise determine 606 the push proxy gateway type to be used when pushing the content to the communication device 200 . Assuming in this example that the communication device 200 had designated a type A push proxy gateway in such circumstances, the server-side library 400 now forwards the content along with the recipient's address 607 to a type A push proxy gateway 502 . The latter than pushes the content 608 to the communication device 200 using that address.
  • content can be reliably and efficiently pushed to a subscriber without requiring that each and every push server maintain specific information regarding which type of push proxy gateway is to be utilized when pushing content to a given subscriber.
  • the described push registration can be carried out at other times of choice. This might be on a regular, periodic basis (such as once a day, once a week, or some other duration of interest). These teachings will also accommodate, of course, facilitating such a push registration whenever it can be determined (directly or indirectly) that the communication device has just subscribed to a new pushed-content service.

Abstract

A network element accepts push registrations from each of a plurality of communication devices. These push registrations can include a pushed-content address and identification of a push proxy gateway type to use when pushing the content to the communication device. Upon receiving content from a push application to push to a given communication device along with the device's address, the network element can use that address to identify the push proxy gateway type to use when forwarding the content via a push proxy gateway to the intended recipient device.

Description

    TECHNICAL FIELD
  • This disclosed concept relates generally to pushing content to a communication device and more particularly to pushing content via a push proxy gateway.
  • BACKGROUND
  • Generally speaking, there are two primary ways to deliver content to a recipient device via an intervening network (or networks). By one approach the recipient device proactively requests the content, at a time of need, using a so-called pull methodology. By the other approach some service or source takes the independent initiative to forward the content to the recipient device using a so-called push methodology.
  • In many application settings a push proxy gateway serves as a necessary intermediary network element to facilitate pushing content from a server-side push application to the recipient device. There are, however, more than one type of push proxy gateway. These types include, for example, the enterprise server (i.e., a push proxy gateway that is hosted by an enterprise (such as a manufacturer of goods, a transport company, a provider of legal services, and so forth) behind their firewall) as well as the Internet server (i.e., a push proxy gateway that is hosted by a primary service provider). A typical prior art approach in these regards requires the server-side application that seeks to push content to a given recipient device to know which type of push proxy gateway to employ for a given recipient device. In some cases this becomes further complicated in that the particular type of push proxy gateway to employ for a given recipient device can vary depending upon the particular recipient device push-friendly application itself.
  • At present, many networks meet this need by having each server-side push-based application maintain a map of its subscriber's addresses and the transport type (i.e., the push proxy gateway type) to be used when pushing content to each particular subscriber device (and/or subscriber-device application, as the case may be). Such an approach, however, imposes information synchronization challenges and can burden a network with considerable supporting traffic in these regards.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 comprises a flow diagram as configured in accordance with various embodiments of the disclosed concept;
  • FIG. 2 comprises a block diagram as configured in accordance with various embodiments of the disclosed concept;
  • FIG. 3 comprises a flow diagram as configured in accordance with various embodiments of the disclosed concept;
  • FIG. 4 comprises a block diagram as configured in accordance with various embodiments of the disclosed concept;
  • FIG. 5 comprises a block diagram as configured in accordance with various embodiments of the disclosed concept; and
  • FIG. 6 comprises a signal flow diagram as configured in accordance with various embodiments of the disclosed concept.
  • Elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions, relative positioning, or both of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments of the present disclosed concept. Also, common but well-understood elements that are useful or necessary in a commercially feasible embodiment are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present disclosed concept. Certain actions or steps may be described or depicted in a particular order of occurrence while those skilled in the art will understand that such specificity with respect to sequence is not actually required. The terms and expressions used herein have the ordinary technical meaning as is accorded to such terms and expressions by persons skilled in the technical field as set forth above except where different specific meanings have otherwise been set forth herein.
  • DETAILED DESCRIPTION
  • Generally speaking, pursuant to these various embodiments, a network element, such as a server-side library, is configured to accept push registrations from each of a plurality of communication devices. These push registrations can each include at least an address for receiving pushed content and a categorical identification of a push proxy gateway type to use when pushing the content to the communication. In a typical application setting this network element then stores these push registrations for future use.
  • The network element, upon then receiving content to push to a given one of the plurality of communication devices from a push application, along with an address for that communication device, can use that address to identify the push proxy gateway type that corresponds to the push application to thereby provide an identified push proxy gateway type. The network element can then use this information to forward the content to the identified push proxy gateway type to thereby facilitate pushing the content to the intended recipient device.
  • These teachings will also accommodate having a platform such as a communication device respond to the detection of a predetermined event (such as powering up) by registering pushed-content service information with the aforementioned network element. By one approach this pushed-content service information can include identifying information such as, but not limited to, an email address, a device personal identification number, and so forth. This pushed-content service information can also comprise the aforementioned categorical identification of the push proxy gateway type to use when pushing content to the communication device (either on a device basis or on an application-by-application basis as desired).
  • These teachings relieve a push-application server from the burden of maintaining an accurate, complete, and current record of which push proxy gateway type to employ when pushing content to a given subscriber's platform (or subscriber's application). These teachings can also serve to lighten traffic burdens on the network by potentially reducing the number of informational exchanges that are required to ensure currency of information across a large number of pushed-content subscribers and pushed-content servers.
  • These teachings can be readily deployed in an economical manner and can serve to leverage the utility and service of legacy infrastructure. These teachings are also highly scalable and can provide satisfactory service over a wide range of devices, applications, network architectures, bearer mediums, gateway types, and the like.
  • These and other benefits may become clearer upon making a thorough review and study of the following detailed description. Referring now to the drawings, and in particular to FIG. 1, an illustrative process 100 that is compatible with many of these teachings will now be presented. For the purposes of this example it will be presumed that a control circuit as comprises a part of an end-user device such as a communication device carries out this process 100.
  • Pursuant to this process 100 the control circuit detects 101 a predetermined event of choice. By one approach, this predetermined event can comprise, for example, powering up of the control circuit 101. This might comprise powering up from a complete loss of power (as can occur, for example, when the communication device's battery has been removed or when a user sets the on/off switch to “off”) or, if desired, might comprise powering up from a reduced state of power consumption (as occurs when, for example, the control circuit sleeps).
  • In response to detecting this predetermined event, the control circuit responsively registers 102 pushed-content service information with a server-side library. (Those skilled in the relevant art will understand a “library” to refer to a software artifact that encompasses a set of rich functionality.)
  • By one approach this pushed-content service information can comprise, at least in part, identifying information as pertains to the control circuit. An email address can comprise one potentially useful example in these regards. A device personal identification number (PIN) comprises another potentially useful example, depending upon the application setting. In addition, these teachings will accommodate any of a wide variety of identifiers as desired.
  • By one approach, in lieu of the foregoing or in combination therewith as desired, this pushed-content service information can comprise, at least in part, a categorical identification of a push proxy gateway type to use when pushing content to the platform that includes the control circuit. (Push proxy gateways are generally known in the art and hence, for the sake of brevity, further elaboration in these regards will not be provided here.) For the sake of example but without intending any particular limitations in these regards, this can comprise identifying whether an enterprise-type push proxy gateway should be employed when pushing content or whether, say, an Internet-type push proxy gateway should be employed instead.
  • This categorical identification of push proxy gateway by type may, or may not, also accompany identification of a specific push proxy gateway as desired. In any event, this categorical identification can be provided as being generally applicable to the device that includes the control circuit. These teachings will also accommodate, however, providing this categorical identification on an application-by-application basis. In this case, a plurality of different types of push proxy gateways may be identified as being appropriate for use when pushing content to a given device such as a communication device, with the specific type to employ in a given instance depending upon the particular application that serves to receive (or process or present) the pushed content.
  • The above-described process 100 can be readily enabled using any of a wide variety of available, readily-configured platforms, including partially or wholly programmable platforms as are known in the art or dedicated purpose platforms as may be desired for some applications. Referring now to FIG. 2, an illustrative approach (and non-limiting approach) to such a platform will now be provided. In this example, the platform comprises a communication device 200 of choice (such as a wireless two-way mobile device such as, but not limited to, a modern smart phone, a pad/tablet-based device, a laptop, and so forth).
  • This illustrative communication device 200 includes a control circuit 201 that operably couples to a memory 202 and a network interface 203 (such as a wireless network interface). The memory can serve to store, for example, some or all of the aforementioned identifying information. The control circuit 201 can comprise a fixed-purpose hard-wired platform or can comprise a partially or wholly programmable platform. All of these architectural options are well known and understood in the art and require no further description here.
  • When the control circuit 201 comprises an at least partially programmable platform the aforementioned memory 202 can also comprise a non-transitory computer-readable media that serves to store the executable code to permit the control circuit 201 to carry out the desired functionality. In any event, the control circuit 201 can be configured (for example, via appropriate programming) to carry out one or more of the actions and functionality set forth herein. This can include, by way of example, detecting the aforementioned predetermined event and responding to that detecting by registering the aforementioned pushed-content service information with a server-side library.
  • Referring now to FIG. 3, a corresponding process 300 that can be carried out by, for example, a control circuit as comprises a part of the aforementioned server-side library will be presented for the sake of illustration but without intending any particular limitations in these regards.
  • Pursuant to this process 300 the control circuit accepts 301 push registrations from each of a plurality of communication devices. As described above, these push registrations can each include at least an address (such as one or more email addresses, device PINs, and so forth) for receiving pushed content and a categorical identification of a push proxy gateway type to use when pushing the content to the communication device. This can comprise, by way of illustration, identifying an enterprise server type or an Internet server type.
  • Also as described above, this can comprise accepting registrations from a single device that presents a plurality of categorical identifications of push proxy gateway types where those identifications correspond to different applications at the communication device. So configured, a given communication device can utilize differing categories of push proxy gateway types depending upon the particular application that facilitates pushing the content.
  • The control circuit can then store 302 these push registrations in a corresponding memory to facilitate subsequent use of that information. By one approach this can comprise locally storing this information using a memory that shares, for example, a same power supply, chassis, housing or the like with the control circuit. By another approach (in lieu of the foregoing or in combination therewith) this could comprise remotely storing this information using a physically remote memory that couples to the control circuit via an intervening network but which does not share a common power supply, chassis, housing or the like with the control circuit.
  • So configured, the server-side library can now optionally leverage the availability of the aforementioned information to facilitate pushing content to registered devices if desired. With continued reference to FIG. 3, optional support in this regard can comprise receiving 303 content to push to a given one of the aforementioned plurality of communication devices from a push application along with an address for this particular communication device. This content can of course assume any of a wide variety of data formats and can include textual content, still image content, video content, audio content, and so forth as desired. The present teachings are generally applicable to all pushable content.
  • The control circuit can use 304 the proffered address to identify the push proxy gateway type that corresponds to this push application. This identified push proxy gateway type can then be used to forward 305 the received content to a push proxy gateway of the correct, designated type. That push proxy gateway can then forward the content on to the addressed communication device.
  • The above-described process 300 can also be readily enabled using any of a wide variety of available, readily-configured platforms, including partially or wholly programmable platforms as are known in the art or dedicated purpose platforms as may be desired for some applications. Referring now to FIG. 4, an illustrative approach (and non-limiting approach) to such a platform will now be provided. In this example, the platform comprises a server-side library 400 of choice.
  • This illustrative server-side library 400 includes a control circuit 401 that operably couples to a memory 402 and a network interface 403. The memory can serve to store, for example, one or more tables or other storage paradigms that correlate the aforementioned registered identifying information with corresponding categorical identifications of particular push proxy gateway types. The control circuit 401 can again comprise a fixed-purpose hard-wired platform or can comprise a partially or wholly programmable platform.
  • And again, when the control circuit 401 comprises an at least partially programmable platform the aforementioned memory 402 can also serve to store the executable code to permit the control circuit 401 to carry out the desired functionality. In any event, the control circuit 401 can be configured (for example, via appropriate programming) to carry out one or more of the actions and functionality set forth herein.
  • FIG. 5 provides an illustrative system-wide overview in these general regards. In this example a wireless communication device 200 can register with a server-side library 400 as per these teachings via one or more intervening networks 501. The architecture of such networks, and the manners by which such components can compatibly communicate with one another, comprise a well-understood area of endeavor. As the present teachings are not particularly sensitive to any particular choices in these regards, further elaboration will not be provided here.
  • For the sake of example this illustration depicts two different types of push proxy gateways as being available; a type A push proxy gateway 502 and a type N push proxy gateway 503. Pursuant to these teachings the communications device 200 can register its preference (or requirement) that either a type A or type N push proxy gateway be used when pushing content to the communications device 200 (either in general or on an application-by-application basis as desired).
  • So configured, a content server 504 having content to push to the communication device 200 can forward that content, along with the corresponding recipient address, to the service-side library 400 (via, for example, the network 501 as appropriate). The server-side library 400, in turn, can determine the push proxy gateway type to employ when pushing this content to this communication device 200 by employing that proffered address as described above. The server-side library 400 can then forward that content along with the address to a push proxy gateway of the identified type and the latter can then push that content to the communication device 200 to complete the push.
  • FIG. 6 provides a further illustrative example in these same regards. Here, following when the communication device 200 subscribes 601 to a content server 504 to receive pushed content, the communication device 200 detects 602 an event of interest as described above and responds by conducting a push registration 603 with the server-side library 400. It is during this push registration that the communication device 200 provides both its address (to be used when receiving the pushed content) and its preference or requirements regarding which type of push proxy gateway to be used when pushing the desired content.
  • As alluded to above the communication device 200 may register to receive pushed content from more than one content server or application. By one approach a single registration session 603 can serve to include a corresponding plurality of registrations in these regards. If desired, however, these teachings will accommodate using a plurality of push registration sessions 604 to accommodate such a situation.
  • Later, the content server 504 provides to the server-side library 400 content 605 to be pushed to the communication device 200 along with the address for the intended recipient of the pushed content. The server-side library 400 uses the address to look-up or otherwise determine 606 the push proxy gateway type to be used when pushing the content to the communication device 200. Assuming in this example that the communication device 200 had designated a type A push proxy gateway in such circumstances, the server-side library 400 now forwards the content along with the recipient's address 607 to a type A push proxy gateway 502. The latter than pushes the content 608 to the communication device 200 using that address.
  • So configured, content can be reliably and efficiently pushed to a subscriber without requiring that each and every push server maintain specific information regarding which type of push proxy gateway is to be utilized when pushing content to a given subscriber.
  • Those skilled in the art will recognize that a wide variety of modifications, alterations, and combinations can be made with respect to the above described embodiments without departing from the spirit and scope of the disclosed concept, and that such modifications, alterations, and combinations are to be viewed as being within the ambit of the inventive concept. As but one example in these regards, the described push registration can be carried out at other times of choice. This might be on a regular, periodic basis (such as once a day, once a week, or some other duration of interest). These teachings will also accommodate, of course, facilitating such a push registration whenever it can be determined (directly or indirectly) that the communication device has just subscribed to a new pushed-content service.

Claims (20)

1. A apparatus comprising:
a memory;
a network interface; and
a control circuit operably coupled to the memory and the network interface, the control circuit being configured to:
accept push registrations from each of a plurality of communication devices, each push registration including at least an address for receiving pushed content and a categorical identification of a push proxy gateway type to use when pushing the content to the communication device; and
store the push registrations in the memory.
2. The apparatus of claim 1 wherein the categorical identification identifies whether the push proxy gateway type is to comprise an enterprise server or an Internet server.
3. The apparatus of claim 1 wherein the address for receiving pushed content at least comprises at least one of an email address and a device personal identification number.
4. The apparatus of claim 1 wherein the control circuit is configured to accept multiple push registrations, on an application-by-application basis, from a single one of the plurality of communication devices.
5. The apparatus of claim 4 wherein the control circuit is configured to accept multiple push registrations, on an application-by-application basis, from a single one of the plurality of communication devices such that the single one of the plurality of communication devices can utilize differing categories of push proxy gateways types depending upon the application that facilitates pushing the content.
6. The apparatus of claim 1 wherein the control circuit is further configured to:
receive content to push to a given one of the plurality of communication devices from a push application along with an address for the given one of the plurality of communication devices;
use the address for the given one of the plurality of communication devices to identify the push proxy gateway type that corresponds to the push application to thereby provide an identified push proxy gateway type; and
forward the content to push to the given one of the plurality of communication devices to a push proxy gateway of the identified push proxy gateway type to thereby facilitate pushing the content to the given one of the plurality of communication devices.
7. An apparatus comprising:
a memory having stored therein identifying information for the apparatus;
a network interface; and
a control circuit operably coupled to the memory and the network interface, the control circuit being configured to:
detect a predetermined event; and
in response to detecting the predetermined event, register pushed-content service information with a server-side library.
8. The apparatus of claim 7 wherein the identifying information comprises, at least in part, at least one of an email address and a device personal identification number.
9. The apparatus of claim 7 wherein the pushed-content service information comprises, at least in part, a categorical identification of a push proxy gateway type to use when pushing content to the apparatus.
10. The apparatus of claim 9 wherein the categorical identification of a push proxy gateway type to use when pushing content to the apparatus categorically identifies the push proxy gateway type to use when pushing content on an application-by-application basis.
11. The apparatus of claim 7 wherein the predetermined event comprises, at least in part, powering up of the apparatus.
12. A method comprising:
detecting, by a control circuit, a predetermined event; and
in response to detecting the predetermined event and by the control circuit, registering pushed-content service information with a server-side library.
13. The method of claim 12 wherein registering pushed-content service information with a server-side library comprises, at least in part, providing identifying information as pertains to the control circuit to the server-side library.
14. The method of claim 13 wherein the identifying information comprises, at least in part, at least one of an email address and a device personal identification number that pertains to the control circuit.
15. The method of claim 12 wherein the pushed-content service information comprises, at least in part, a categorical identification of a push proxy gateway type to use when pushing content to a communication device that includes the control circuit.
16. The method of claim 15 wherein the categorical identification of a push proxy gateway type to use when pushing content to the communication device categorically identifies the push proxy gateway type to use when pushing content on an application-by-application basis.
17. The method of claim 12 wherein the predetermined event comprises, at least in part, powering up of the control circuit.
18. A non-transitory computer-readable media having executable code stored therein, which executable code, when executed by a processor, causes the processor to:
detect a predetermined event; and
in response to detecting the predetermined event, register pushed-content service information with a server-side library.
19. The non-transitory computer-readable media of claim 18 wherein the executable code causes to processor to register pushed-content service information with a server-side library by, at least in part, providing identifying information as pertains to the control circuit to the server-side library.
20. The non-transitory computer-readable media of claim 19 wherein the pushed-content service information comprises, at least in part, a categorical identification of a push proxy gateway type to use when pushing content to a communication device that includes the control circuit.
US13/051,281 2011-03-18 2011-03-18 Method and Apparatus Pertaining to Pushing Content Via A Push Proxy Gateway Abandoned US20120239782A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/051,281 US20120239782A1 (en) 2011-03-18 2011-03-18 Method and Apparatus Pertaining to Pushing Content Via A Push Proxy Gateway
CA2771559A CA2771559A1 (en) 2011-03-18 2012-03-15 Method and apparatus pertaining to pushing content via a push proxy gateway
EP12159988.0A EP2501110A3 (en) 2011-03-18 2012-03-16 Method and apparatus pertaining to pushing content via a push proxy gateway

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/051,281 US20120239782A1 (en) 2011-03-18 2011-03-18 Method and Apparatus Pertaining to Pushing Content Via A Push Proxy Gateway

Publications (1)

Publication Number Publication Date
US20120239782A1 true US20120239782A1 (en) 2012-09-20

Family

ID=45841368

Family Applications (1)

Application Number Title Priority Date Filing Date
US13/051,281 Abandoned US20120239782A1 (en) 2011-03-18 2011-03-18 Method and Apparatus Pertaining to Pushing Content Via A Push Proxy Gateway

Country Status (3)

Country Link
US (1) US20120239782A1 (en)
EP (1) EP2501110A3 (en)
CA (1) CA2771559A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130212225A1 (en) * 2012-01-22 2013-08-15 Tejas Networks Limited Method and system of redirecting streaming content over a communication network
US20150163168A1 (en) * 2012-08-20 2015-06-11 Fujitsu Limited Seamless push system and method for same

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9736256B2 (en) 2014-02-13 2017-08-15 Microsoft Technology Licensing, Llc Implementing server push at server stack

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6707809B1 (en) * 1999-02-25 2004-03-16 Utstarcom, Inc. Method for forwarding data to idle mobile nodes, and home agent control node for use in the method
US20050169285A1 (en) * 2004-01-15 2005-08-04 Wills Fergus M. Stateful push notifications
US20060179115A1 (en) * 2005-02-09 2006-08-10 Nokia Corporation Controlling push operation in a communication system
US7289788B2 (en) * 2004-05-26 2007-10-30 Avaya Technology Corp. Mobile gateway for secure extension of enterprise services to mobile devices
US20080233979A1 (en) * 2005-04-26 2008-09-25 Huawei Technologies Co., Ltd. Method for Implementing a Push Service
US20090075641A1 (en) * 2007-09-18 2009-03-19 Metropcs Wireless, Inc. Automated over-the-air firmware update for a wireless phone
US20090282256A1 (en) * 2008-05-12 2009-11-12 Sony Ericsson Mobile Communications Ab Secure push messages
US20100050245A1 (en) * 2008-08-20 2010-02-25 Yellowpages.Com Llc Systems and Methods to Provide Information and Services to Authorized Users
US20100227632A1 (en) * 2009-03-09 2010-09-09 Apple Inc. Push notification service
US7849135B2 (en) * 2004-04-09 2010-12-07 At&T Mobility Ii Llc Sharing content on mobile devices
US20110173291A1 (en) * 2007-12-21 2011-07-14 Nokia Siemens Networks Oy Messaging mechanism
US20120210415A1 (en) * 2011-02-11 2012-08-16 Visto Corporation Method, apparatus and system for provisioning a push notification session
US8423058B2 (en) * 2010-04-07 2013-04-16 Apple Inc. Registering client computing devices for online communication sessions

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6311206B1 (en) * 1999-01-13 2001-10-30 International Business Machines Corporation Method and apparatus for providing awareness-triggered push
US20070260674A1 (en) * 2006-05-02 2007-11-08 Research In Motion Limited Push framework for delivery of dynamic mobile content

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6707809B1 (en) * 1999-02-25 2004-03-16 Utstarcom, Inc. Method for forwarding data to idle mobile nodes, and home agent control node for use in the method
US20050169285A1 (en) * 2004-01-15 2005-08-04 Wills Fergus M. Stateful push notifications
US7849135B2 (en) * 2004-04-09 2010-12-07 At&T Mobility Ii Llc Sharing content on mobile devices
US7289788B2 (en) * 2004-05-26 2007-10-30 Avaya Technology Corp. Mobile gateway for secure extension of enterprise services to mobile devices
US20060179115A1 (en) * 2005-02-09 2006-08-10 Nokia Corporation Controlling push operation in a communication system
US20080233979A1 (en) * 2005-04-26 2008-09-25 Huawei Technologies Co., Ltd. Method for Implementing a Push Service
US20090075641A1 (en) * 2007-09-18 2009-03-19 Metropcs Wireless, Inc. Automated over-the-air firmware update for a wireless phone
US20110173291A1 (en) * 2007-12-21 2011-07-14 Nokia Siemens Networks Oy Messaging mechanism
US20090282256A1 (en) * 2008-05-12 2009-11-12 Sony Ericsson Mobile Communications Ab Secure push messages
US20100050245A1 (en) * 2008-08-20 2010-02-25 Yellowpages.Com Llc Systems and Methods to Provide Information and Services to Authorized Users
US20100227632A1 (en) * 2009-03-09 2010-09-09 Apple Inc. Push notification service
US8423058B2 (en) * 2010-04-07 2013-04-16 Apple Inc. Registering client computing devices for online communication sessions
US20120210415A1 (en) * 2011-02-11 2012-08-16 Visto Corporation Method, apparatus and system for provisioning a push notification session

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Freeman, Jacqueline, How Do I Find the MAC Address (Physical Address) of My PC?, August 2007, Dowling College *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130212225A1 (en) * 2012-01-22 2013-08-15 Tejas Networks Limited Method and system of redirecting streaming content over a communication network
US10432682B2 (en) * 2012-01-22 2019-10-01 Tejas Networks Limited Method and system of redirecting streaming content over a communication network
US20150163168A1 (en) * 2012-08-20 2015-06-11 Fujitsu Limited Seamless push system and method for same

Also Published As

Publication number Publication date
EP2501110A2 (en) 2012-09-19
CA2771559A1 (en) 2012-09-18
EP2501110A3 (en) 2013-11-20

Similar Documents

Publication Publication Date Title
AU2003281101B2 (en) System and method for providing partial presence notifications
CN101483672B (en) Processing method, system, gateway server and mobile terminal for service information access
US9065666B2 (en) System and method of multi-media conferencing between universal plug and play (UPnP) enabled telephony devices and wireless area network (WAN) devices
JP2013017204A (en) Apparatus and methods for network identification of open market wireless devices
US20140032493A1 (en) Method, apparatus and system for synchronizing contact information
US20160028584A1 (en) Electronic device and ims service providing method thereof
US9417887B2 (en) Method and apparatus for bootstrapping gateway in device management system
EP2501110A2 (en) Method and apparatus pertaining to pushing content via a push proxy gateway
CN102959925A (en) Methods and apparatuses for handling time zone information in an internet protocol multimedia subsystem, IMS, network
US20140095728A1 (en) Methods and Systems for Providing Multiple Network Services By Way of a Single Machine-to-Machine Gateway Device
US20100306349A1 (en) Method and System for Configuring Service on Terminal
US8385251B2 (en) Data communication control apparatus, data communication system, data communication method, and computer-readable storage medium recording data communication program
CN112368991B (en) Method for improved handling of IP multimedia subsystem calls in home mobile communication networks and visited mobile communication networks
US20150031341A1 (en) Method for responding to push notification based communication request
US8230081B2 (en) Feature set based content communications systems and methods
AU2019369205B9 (en) Exchange, communication system, registration method, and program
CN110881017B (en) Communication service registration method, system, electronic device, authentication method and server
CN113490164A (en) Mobile application message pushing platform
US20110294480A1 (en) Communication system, internal line managing apparatus, internal phone management method, and non-transitory computer readable storage medium
CN112839309A (en) Short message delivery method, network element registration method, device, gateway, system and storage medium
US9544426B2 (en) Method for transmitting data related to a call
US20110274033A1 (en) Using Secondary Channel to Activate Primary Channel for Data, Video, and Voice Communication
KR20170103322A (en) Method for providing guide information service
US20210266382A1 (en) System, method, and computer program for establishing an over the air (ota) communication channel between a communication service provider and a user device
KR101088356B1 (en) A system and method for managing network connectivity disruptions in a multi- homed UPnP device

Legal Events

Date Code Title Description
AS Assignment

Owner name: RESEARCH IN MOTION CORPORATION, DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BASAVANAHALLY, SRIKANTH SRINIVASMURTHY;BHUTA, MAHESH BABUBHAI;REEL/FRAME:025996/0964

Effective date: 20110321

AS Assignment

Owner name: RESEARCH IN MOTION LIMITED, CANADA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RESEARCH IN MOTION CORPORATION;REEL/FRAME:026402/0167

Effective date: 20110420

AS Assignment

Owner name: RESEARCH IN MOTION LIMITED, CANADA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ARORA, RAKESH KUMAR;D'ANDREA, MATTHEW ROGERS;DI CESARE, MARCO;SIGNING DATES FROM 20110817 TO 20110826;REEL/FRAME:027010/0518

Owner name: RESEARCH IN MOTION CORPORATION, DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BASAVANAHALLY, SRIKANTH SRINIVASMURTHY;BHUTA, MAHESH BABUBHAI;IYER, KANNAN NARAYANAN;SIGNING DATES FROM 20110816 TO 20110916;REEL/FRAME:027010/0487

AS Assignment

Owner name: RESEARCH IN MOTION LIMITED, ONTARIO

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RESEARCH IN MOTION CORPORATION;REEL/FRAME:027213/0796

Effective date: 20111028

AS Assignment

Owner name: BLACKBERRY LIMITED, ONTARIO

Free format text: CHANGE OF NAME;ASSIGNOR:RESEARCH IN MOTION LIMITED;REEL/FRAME:034077/0227

Effective date: 20130709

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION