GB2453998A - Using telecommunication device identifiers to determine provisional device properties to allow compatible service provision. - Google Patents
Using telecommunication device identifiers to determine provisional device properties to allow compatible service provision. Download PDFInfo
- Publication number
- GB2453998A GB2453998A GB0721008A GB0721008A GB2453998A GB 2453998 A GB2453998 A GB 2453998A GB 0721008 A GB0721008 A GB 0721008A GB 0721008 A GB0721008 A GB 0721008A GB 2453998 A GB2453998 A GB 2453998A
- Authority
- GB
- United Kingdom
- Prior art keywords
- electronic device
- service
- properties
- mapping
- compatible
- 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.)
- Withdrawn
Links
- 238000013507 mapping Methods 0.000 claims abstract description 104
- 238000000034 method Methods 0.000 claims abstract description 78
- 230000001419 dependent effect Effects 0.000 claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 10
- 238000004891 communication Methods 0.000 claims description 67
- 238000010295 mobile communication Methods 0.000 claims description 32
- 230000004913 activation Effects 0.000 claims description 4
- 230000001413 cellular effect Effects 0.000 claims description 4
- 239000003795 chemical substances by application Substances 0.000 description 9
- 238000003860 storage Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000012706 support-vector machine Methods 0.000 description 6
- 230000001427 coherent effect Effects 0.000 description 5
- 230000003936 working memory Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008439 repair process Effects 0.000 description 4
- 230000015654 memory Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 241000577979 Peromyscus spicilegus Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000013329 compounding Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- H04L29/08927—
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
The present invention provides a method for supplying a service to a plurality of electronic devices, wherein each electronic device has an associated device identifier. The method comprises the steps of: receiving a device identifier from each electronic device, wherein the device identifier is one of a plurality of receivable device identifiers; mapping the received device identifier using at least one of a lookup table, a pattern matching algorithm and a matching service to produce one or more provisional device properties, the one or more provisional device properties being in a format that is dependent on the mapping method used; processing the one or more provisional device properties to generate one or more standardised device properties in a predetermined standard format, said format being independent of the mapping method used; and supplying a compatible service to each electronic device based on the one or more standardised device properties.
Description
Provisioning Service The present invention relates to a method and a system for supplying a compatible service to a specified electronic device. In particular the present invention relates to ascertaining the properties of an electronic device based on a device identifier received from the electronic device.
A compatible service can be thought of as a service that will function correctly upon or with a specified electronic device. Examples of possible services include location-based services, information-retrieval services, support services and the supply of specified applications or multimedia files. In order to correctly supply a compatible service to an electronic device a service provider typically requires knowledge of the technical specifications of the device. Within the prior art the service provider typically has such knowledge a priori to a request for a service; for example, in many situations a service provider will be either the manufacturer of the electronic device or will work in association with the manufacturer.
This is especially the case in the field of telecommunications, wherein the electronic device is typically a mobile communication device. For example, mobile communication devices such as mobile telephones or other internet-enabled devices are typically supplied by an access provider or communications network operator to a user or customer. The access provider receives the mobile communications device from a manufacturer and configures the software and hardware of the device before it is distributed to a user. As the access provider controls the supply of the mobile communication device it will have knowledge of the technical configuration of the device. This puts the access provider in a strong position as a service provider. An access provider may also customise the name or description of the mobile communication device to suit their own criteria.
For example, an access provider may have a list of users and their associated mobile telephone. When a user wishes to purchase or activate a service they * 2 typically do so via the access provider, the access provider either acting as a service provider themselves or as a gateway to a third party service provider.
The access provider is thus able to retrieve the technical configuration of the user's mobile telephone from within their own proprietary databases and supply this information to whatever party is acting as the service provider. Third parties who wish to supply a service to a user's mobile telephone are thus required to integrate their systems with the access provider's systems and have little freedom to independently supply a service to a user.
In the past, if a third party service provider did want to supply a service to a user's electronic device without working with an access provider they would come up against a severe technical limitation when trying to ascertain the properties of said device. In a modern competitive industry there will typically be tens, if not hundreds, of device manufacturers and each of these manufacturers will typically produce a number of different models and each of these models can have associated software which can be configured in a number of ways.
This then produces a large device-space representing all the possible hardware and software configurations of an electronic device. A service provider must match their service to the hardware and software configurations of a user's electronic device in order to be confident that their service will operate correctly upon said device. If a service provider provides a non-functioning service this will often reflect badly on the service provider and foreclose future custom. In many industries however, there is no standard of specifying this configuration accurately.
To provide a solution to this problem, there have been several attempts to standardise descriptions of electronic devices. The aim of these attempts is to allow a standardised description or specification of an electronic device to be sent as a message to a service provider. However, these attempts often end in failure. One reason for this is that the standards often cannot keep up with the relentless pace of change in many modern electronic industries. Another reason is that developing a standard can easily become a highly politicised process that can take many years to fruition and can equally as easily end in disagreement * 3 between contacting parties. Therefore, even if a standard can be finally agreed upon there will often be newly released hardware and/or software configurations that cannot be represented within the standard. This then generates a further reason for a service provider to have a relationship with the device manufacturer or have other a priori knowledge of the electronic device configuration in order to successfully supply a service.
The situation is further complicated by the fact that, in most cases, when an electronic device is repaired or serviced, the hardware and/or software configuration of the device will alter. In cases where the service provider is also the supplier of the electronic device (e.g. when the service provider is also the access provider) it is possible for the service provider to have knowledge of the repair operation and to record the new configuration within a list of users and their associated devices. However, if the party that repairs or services the electronic device is not the service provider then any change in the hardware and/or software configuration will not be available to the service provider. Hence even if a list of users and their associated devices is stored by a service provider a repair operation by a third party can produce a mismatch with information recorded in the list resulting in problems with service supply.
Another problem that exists when supplying a compatible service to a particular mobile communications device is that often there is a discrepancy between the identifying information present on the device itself and the information required to supply the compatible service. For example, a mobile telephone may be branded as a "Walkman phone" on its exterior but this will not be enough information to identify the exact model and/or build number of the device. This typically becomes a problem when the user is prompted to manually identify their mobile communications device through some form of user interface, as even if the user correctly describes the information present on the device the service provider cannot be sure what device the user has and thus what services will be compatible. This can be extremely frustrating for the user. O 4
There thus exists a problem within the art as to how to supply a compatible service to an electronic device wherein the electronic device is part of a heterogeneous group with varying hardware and/or software configurations. This problem is confounded by the fact that the hardware and/or software configuration of a particular electronic device can change over time and that attempts to agree on standard forms for device descriptions often end in failure.
In accordance with a first aspect of the present invention there is presented a method for supplying a service to a plurality of electronic devices, each electronic device having an associated device identifier, the method comprising the steps of: I. receiving a device identifier from each electronic device, wherein the device identifier is one of a plurality of receivable device identifiers; II. mapping the received device identifier using at least one of a lookup table, a pattern matching algorithm and a matching service to produce one or more provisional device properties, the one or more provisional device properties being in a format that is dependent on the mapping method used; Ill. processing the one or more provisional device properties to generate one or more standardised device properties in a predetermined standard format, said format being independent of the mapping method used; IV. supplying a compatible service to each electronic device based on the one or more standardised device properties.
By applying this method a service provider is able to supply a compatible service to an electronic device without knowing the configuration of the device beforehand. The service provider can also be confident that a request for a service will result in the delivery of a service that will operate correctly on the device. The method allows for successful supply of a service in technological fields that contain large heterogeneous groups of electronic devices wherein each device can have a variety of hardware or software configurations. By using a device identifier that is one of a plurality of receivable device identifiers and by a * S 5 mapping the device identifier to retrieve one or more provisional device properties using a variety of means, there is a high probability that the properties of an electronic device will be correctly ascertained. The method also allows the modular use of third party mapping modules wherein each of these mapping modules may provide device properties in a different form. By then processing the one or more provisional device properties to generate one or more standardised device properties a standardised description of the hardware and/or software configuration of the electronic device can be developed. This then enables third party service providers to supply a service to an electronic device without the need for an established service provider, such as an access provider, that has a link to the manufacture of the device or a database specifying the device characteristics of an identified user.
In a preferred embodiment of the present invention the electronic device is a communications device, typically one of a mobile, a cellular or a wireless communication device. These forms of electronic devices typically have a large device-space of possible device configurations. For example the device identifier may be dependent on at least one of: an access provider for the communications device, the version of the operating software resident upon the communications device, the hardware configuration of the communications device, the manufacturer of the communications device and the retailer of the communications device. For example, each electronic device could possibly have a different manufacturer and/or model specification. Furthermore within the field of communication devices there is currently no agreed standard with which to supply device information to a service provider and thus the method of the present invention is acutely required.
In a preferred embodiment of the present invention the electronic device operates upon at least one of the following access services or protocols: Global System for Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), high-frequency wireless local area network (WiFi or WLAN), second-and-a-half generation mobile communications networks (2.5G), Enhanced Data S 6 rates for Global Evolution (EDGE), third generation mobile communications networks (3G), or Worldwide Interoperability for Microwave Access (WiMax).
However, the present invention is not limited to the access services or protocols shown above and may be adapted to operate using any form of electronic communication where a device identifier is used, for example, digital TV standards, Bluetooth, User Datagram Protocol (UDP), wireless local area networks (WIFi") etc. In this case the device identifier is typically received over a communication network operating according to one of the above access services or protocols.
Preferably, the device identifier comprises a concatenated string sequence.
When using mobile communication devices this concatenated string sequence is typically referred to as a "user agent string". The hardware and/or software configuration of the electronic device is typically provided by compounding a number of variable fields to form the concatenated string sequence. The method allows a varying string sequence to be used with the resultant technical benefit of increased flexibility. This flexibility avoids the problems that occur when using a set standard that does not cover all the possible configurations within the device space.
In certain embodiments of the present invention the method further comprises supplying a compatible application to the electronic device. In other embodiments the method further comprises at least one of supplying a suitably formatted web page, supplying help or support information specific to the device, or supplying a compatible multimedia file. In general, any software or service that is specific to an electronic device may be supplied. Typically a compatible application is retrieved from a set of compatible applications based on the one or more standardised device properties. When supplying applications to an electronic device as part of supplying a compatible service, knowledge of the hardware and/or software configuration of the electronic device is essential to allow the supplied application to operate correctly upon the electronic device. The method of the present invention allows such an application to be supplied with a high confidence that the application will O 7 operate correctly. With prior art methods, it has often been found that up to 30 or percent of the applications supplied by a service provider do not operate upon the electronic device receiving said service.
In certain embodiments the device identifier further comprises an internet protocol (IP) address. This address, together with the one or more standardised device properties, can be used to supply a compatible service to the electronic device. The IP address may allow a service provider to ascertain certain information such as location and/or an access provider.
In certain embodiments of the present invention the method further comprises conditionally supplying the compatible service using decision rules operating on the one or more standardised device properties. These decision rules can be configurable. By supplying a service using decision rules with one or more standardised device properties as input, the method of the present invention effectively separates the decision logic of service supply from the process of electronic device identification. This is extremely useful as decision rules can be easily changed and configured in a modular manner without altering the method for ascertaining the properties of the electronic device.
In certain embodiments the device identifier will be received from each electronic device upon the activation, on each electronic device, of a link to a specified link address. This process may involve receiving a first message from each electronic device, wherein the first message comprises a preliminary address associated with the electronic device. The method may then further comprise the step of sending a second message to the preliminary address received from the electronic device, wherein the second message comprises the specified link address. In the context of a mobile communications device, the first message could be a short message service (SMS) message (alternatively known as a "TXT" or "text" message), a Wireless Application Protocol (WAP) push message or an email. The preliminary address could be the International Mobile Equipment Identity (IMEI) number of the device or the Mobile Systems International Subscriber Identity Number (MSISDN, commonly referred to as the O 8 "mobile telephone number") associated with the device. When this is received a further SMS message or email can be sent to the contact number received within the first message which allows a second message comprising a link such as a hyperlink to be sent to the electronic device. These method steps thus provide a simple way of activating the provisioning service based on information from the electronic device.
According to a second aspect of the present invention there is also provided a provisioning server comprising a processor adapted to perform the methods described above in accordance with the first aspect of the present invention. In this case the operation of the method can be seen to be the operation of a computer implemented method running upon a computer system. Thus one server or computer processor performing the above method steps can supply a compatible service.
According to a third aspect of the present invention there is provided a system for supplying a service to a plurality of electronic devices, each electronic device having an associated device identifier, the system comprising: a receiver for receiving a device identifier from each electronic device; a mapping generator, operably connected to the receiver, for mapping the received device identifier to one or more provisional device properties, wherein the mapping generator further comprises at least one of the following mapping modules:
a lookup table,
a pattern matching algorithm and a matching service, the one or more provisional device properties being in a format that is dependent on the mapping module used; a property processor, operably connected to the mapping generator, for processing the one or more provisional device properties to produce one or more standardised device properties in a predetermined standard format, said format being independent of the mapping module used; O 9 a service provider, operably connected to the property processor, for supplying a compatible service to each electronic device based on the one or more standardised device properties.
Through the use of the above system a service can be provided to a plurality of electronic devices and the service provider can be confident that the service will operate successfully on said electronic device. The system further provides a set of technical modules which are adapted to provide the same advantages and technical effects as those discussed in relation to the first aspect of the present invention.
In a preferred embodiment of the present invention the receiver is adapted to receive a device identifier from a communications device over a communications network. The receiver may be adapted to receive a device identifier from one of a mobile, a cellular or a wireless communication device over at least one of the following access services or protocols: GSM, GPRS, CDMA, TDMA, WiFi, WLAN, 2.5G, EDGE, 3G or WiMax.
In another preferred embodiment of the present invention the device identifier is dependent on at least one of: the access provider for the communications device, the version of the operating software resident on the communications device, the hardware configuration of the communications device, the manufacturer of the communications device and the retailer of the communications device. The device identifier associated with a particular electronic device is typically dependent on the configuration of said electronic device.
In another embodiment of the present invention the provisioning system further comprises decision logic adapted to operate on the one or more standardised device properties to conditionally supply the compatible services to the electronic devices. In certain cases the decision logic is configurable. O 10
In another embodiment of the present invention the system further comprises a database operably connected to the property processor. The property processor is then further adapted to retrieve one or more standardised device properties from a database using either the one or more provisional device properties or one or more different standardised device properties as an input. Thus the standardisation of the device properties can be implemented using standard database technology known in the art.
In another embodiment the device identified comprises a concatenated string sequence.
In a preferred embodiment the compatible service provided by the service provider comprises an application adapted to operate on the electronic device.
Said application can be provided from an application database comprising a set of applications and the service provider can be further adapted to retrieve a compatible application from the application database using the one or more standardised device properties. By storing the applications to be supplied to the electronic device in a database the service provider can easily access a compatible application or provide a link to said application. This simplifies and expedites delivery of a compatible application.
In another preferred embodiment of the present invention the receiver is adapted to receive an internet protocol (IP) address and the service provider is further adapted to supply a compatible service to the electronic device based on said IP address.
In certain embodiments the mapping generator property processor and service provider can collectively comprise a single server. The receiver can also be part of this server and can comprise an application program interface (API).
The receiver can be further adapted to receive a device identifier from each electronic device upon the activation, on each electronic device, of a link to a specified address. This actuation process can be implemented by further * 11 providing a link provider, the link provider being adapted to receive a first message from each electronic device, the first message comprising a preliminary address associated with the electronic device, and to send a second message to the preliminary address, the second message comprising the link to the specified address.
In accordance with a fourth aspect of the present invention there is provided an electronic device for use with the system as previously described in accordance with the third aspect.
Several examples of a method and a system according to a present invention will now be described with reference to the accompanying drawings, in which:-Figure 1 is a schematic diagram of an exemplary provisioning system in accordance with a first embodiment of the present invention; Figure 2 is a schematic diagram of an exemplary provisioning service according to a second embodiment of the present invention; Figure 3 is a schematic diagram of an exemplary provisioning system according to a third embodiment of the present invention; Figure 4 is a flow diagram demonstrating an exemplary method according to a first embodiment of the present invention; Figure 5 is a flow diagram demonstrating an exemplary method according to the second embodiment of the present invention; Figure 6 is a further flow diagram demonstrating a method according to the second embodiment of the present invention; Figures 7a and 7b illustrate flow charts demonstrating two interlinked methods used in a third embodiment of the present invention; and Figure 8 is a schematic illustration of an exemplary electronic device to be used with the present invention.
Figure 1 shows an example of a provisioning system according to a first embodiment of the present invention. The provisioning system comprises receiver 120, mapping generator 130, property processor 170 and service provider 190. The receiver 120 is configured to receive data from an electronic * 12 device 110. In the present embodiment the electronic device 110 comprises a mobile communication device, such as a mobile telephone, a personal data assistant (PDA), a tablet personal computer (TPC), or a laptop. The present invention is not limited to the present example and any electronic device that is capable of receiving a service can be used.
Typically, the electronic device 110 will communicate with the receiver via a mobile communications network. The electronic device 110 further comprises an aerial 101 for transmitting and receiving messages over the communications network. The communications network can operate according to any protocols known in the art, for example Global System for Mobile Communication standard (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA) system, high-frequency wireless local area network (WiFi or WLAN), second-and-a-half or third generation mobile communications networks (2. 5G or 3G), Enhanced Data rates for Global Evolution (EDGE) or Worldwide Interoperability for Microwave Access (WiMax).
The invention can also be applied to other communication networks not explicitly mentioned herein and can equally apply to wired as well as wireless systems. All that is required is a communications channel for the electronic device 110 to communicate with the receiver 120 and to receive a service from the service provider 190. In the present example wireless or mobile communication from an electronic device 110 is represented by curved lines 115 and 195.
The electronic device 110 will typically comprise a hardware platform as illustrated in Figure 8. As hardware configurations for electronic devices often change the present invention is not limited to the hardware specification illustrated in Figure 8 and multiple modules illustrated therein can be removed or additional modules added without affecting the operation of the present invention. Typically the electronic device 110 will comprise a processor 820, such as a reduced instruction set computer (RISC), in communication with system bus 810, and a communications interface 860, also in communication with system bus 810. The communications interface 860 is connected to a * 13 receiver 861 and a transmitter 862. The communications interface 860, receiver 861 and transmitter 862 are typically implemented upon a single communications chip. The electronic device 110 can also comprise input and/or output (I/O) devices 830. Depending on the electronic device 110, examples of possible I/O devices include a screen 102, a keypad and/or a QWERTY keyboard, a scroll wheel, directional and/or function keys, and an audio system.
Certain electronic devices 110 may also contain a storage device 840 for storing data such as application code, text, messages, photos, and/or music. The electronic device 110 will also typically comprise working memory 850 within which code comprising an operating system 851, usually of a mobile, embedded or reduced instruction set design, and optional user applications 852 will reside.
The electronic device may also be a mobile communications device capable of accessing the Internet or other Wide Area Network (WAN); in this case applications 852 may comprise applications to communicate over, and operate upon, the Internet or WAN, such as a browser or data transfer tool. Alternatively, such features may be provided by the operating system. Working memory 850 can be connected to systems bus 810 or can be integrated with processor 820.
Working memory 850 can comprise one or more of volatile RAM, non-volatile RAM, ROM and rewritable FLASH memory.
Within storage device 840 or non-volatile working memory 850 a device identifier associated with the electronic device 110 will be stored. This device identifier will vary depending upon on the hardware and/or software configuration of the electronic device. It will typically contain information relating to the electronic device in the form of a concatenated string sequence. Some examples of data that may be present within a device identifier include, but are not limited to: the manufacture of the electronic device, the model of the electronic device, the version number of the electronic device, the version of the operating system 851 currently operating the electronic device, the version of any additional firmware such as the Java Micro Edition (ME) virtual machine platform, the configuration of hardware devices such as I/O devices 830 and storage device 840, the access provider that allows the electronic device 110 to access a communications network, the retailer of the electronic device, the date and/or time at which a O 14 hardware repair or firmware upgrade were performed, and the country of manufacture and/or current operation.
With regard to mobile communication devices operating over a telecommunications network such as GSM, GPRS, 3G, EDGE or 2.5G the device identifier is typically referred to as a "user agent string". There is currently no set standard for a "user agent string" and the form and order of the data contained within said string can and will vary depending on a variety of factors. These factors include the number of data items contained within the device identifier, the access provider for the electronic device, the version of the operating software resident upon the mobile communication device, the hardware configuration of the mobile communication device, the manufacturer of the mobile communication device, the retailer of the mobile communication device, the place and time of manufacture, whether the electronic device has recently been repaired, the level of access provided by the access provider as well as a plurality of commercial concerns. Two sets of examples of differing user agent strings for the same manufacturer and model of two example electronic devices are respectively provided in Table 1 and below: Example User Agent String 1 Vodafone/1.0/V702NK/NKJOO1 Series6O/2.6 Nokia663O/2.39.81 Profile/MI DP-2.0 Configuration/CLDC-1.1 2 Nokia663O/1.0 (2.39.7) SymbianOS/8.0 Series60/2.6 Profile/MIDP-2.0 Configuration/CLDC-1.1 3 Mozilla/4.0 (compatible; MSIE 5.0; Series6o/2.6 Nokia663O/1.25.3 Profile/MIDP-2.0 Configuration/CLDC-1.1)
Table 1
In Example 1 of Table 1, the string segment "Vodafone" identifies the model of device as being originally provided for or by the operator Vodafone, and in all three Examples the string segment "Series6O" identifies the device as a "Symbian Series 60" device and the string segment "Nokia663O" identifies the manufacturer ("Nokia") and model ("6630"). * 15
Example User Agent String 1 SonyEricssonV8O2 2 Vodaf one/i.O/V802S E/S EJOO 1 Browser/S EMC-Browser/4. 1 Prof ii e/M IDP-2.0 Configuration/CLDC-1.1
Table 2
In Example 1 of Table 2, the string segment SonyEricsson" identifies the manufacturer as Sony Ericsson and the string segment "V802" identifies the model as "V802". In Example 2 of Table 2, the string segment "Vodafone" identifies the model of device as being originally provided for or by the operator Vodafone, the string segment "SE" identifies the manufacturer as Sony Ericsson and the string segment "V802" identifies the model as V802".
As can be seen from the examples above the variance of the device identifier makes it difficult to ascertain the device properties of the electronic device in order to supply a compatible service.
Returning to the embodiment of Figure 1, in order to use the provisioning system therein to supply a service to an electronic device 110, a number of steps must be performed. These steps are illustrated in Figure 4. In the present example the user of electronic device 110 will initiate the interaction by requesting a service. The request comprises sending a message containing the device identifier to the known address of a provisioning service upon a communications network, or a specified server hosting the service. For example, the message can comprise one or more data packets sent using the TCP/IP protocol. The known address will comprise the address of the receiver 120 or the address of a proxy service adapted to forward the message to the receiver 120. The request can be initiated by clicking or selecting an icon or text upon the screen 102 of the electronic device 110. The exact form of the request will depend on the particular device 110 and provisioning system 100 used. The request containing the device identifier can be sent across any of the communication networks previously described and can be explicitly sent by a O 16 user operating upon the electronic device 110 or by software and/or hardware processes operating within or upon electronic device 110.
The communication between the electronic device 110 and the receiver 120 is shown by curved line 115. The receiver 120 will comprise a suitably adapted receiver for receiving the device identifier from the electronic device 110. For example, the receiver can comprise a telecommunications receiver adapted to receive a message sent by the electronic device 110 using one of the previously listed protocols and then further adapted to forward the content of a message, i.e. the device identifier, on to an initial processing routine. Alternatively, if the user of the electronic device 110 sends a message containing the device identifier 115 over a communications network using the TCP/IP protocol, the receiver 120 can comprise a computer system connected to a wide area network (WAN). In this case the receiver 120 will have an IP address and the message containing the device identifier will be routed to the iP address of the receiver 120. The receiver 120 is adapted to receive the device identifier as illustrated in step 410 of Figure 4 and extract the device identifier from the message received.
Once the device identifier has been extracted it is then passed to the mapping generator 130 as illustrated by arrow 125.
The mapping generator 130 is adapted to receive the device identifier 125 and map said identifier to a set of provisional device properties as illustrated in step 420 of Figure 4. The mapping generator 130 is in communication with a number of mapping modules 136 adapted to perform the mapping operation. In the example illustrated in Figure 1 these mapping modules 136 comprise a lookup table 140, a matching algorithm 150 and a matching service 160. The present invention can also comprise a number of mapping modules in addition to at least one of those shown in Figure 1. The mapping generator 130 is adapted to send the device identifier received from the receiver 120 to each of the mapping modules 136 via communication links 135A, 135B and 135G. The mapping modules 136 can comprise software modules that are initiated by the mapping generator 130. Alternatively, the mapping modules 136 can be implemented in S 17 dedicated hardware connected to a hardware and/or software system implementing the mapping generator 130.
Each of the mapping modules 136 illustrated in Figure 1 is adapted to use a different mapping method to obtain one or more provisional device properties.
The one or more provisional device properties comprise one or more properties of the electronic device, e.g. make, model or hardware configuration, browser type and software configuration, that are presented in a form or format that is dependent on the mapping module and/or method used. For example, Table 3 below shows exemplary output of three different types of mapping modules or techniques: 1) a fuzzy matching algorithm using pattern recognition; 2) an explicit look-up operation using a Wireless Universal Resource File (WURFL) data source; and 3) a third party device classification service. Each mapping module or technique is presented with the user agent string "SAMSUNG-SGH-X680V".
Example Mapping Type Output: -Manufacturer Output: -Model 1 Fuzzy / Pattern SAMSUNG X680V 2 WURFL data source Samsung SGH-X680-Vodaf one 3 3rd Party Service SAM X680
Table 3
In the examples set out in Table 3 above, it is clear that, in this case, each mapping module or technique returns a different representation of both the device manufacturer and the device model.
Lookup table module 140 typically comprises a table of provisional device properties that is indexed by a particular device identifier. Table 4 below shows two entries in an exemplary lookup table: * _____ 18 Input: User Agent String Output: Output: Output: Output: Manufacturer Model Screen Screen ______________________ Height Width MOT-V3r/08.BD.44R Motorola V3 220 pixels 176 pixels MIB/2.2.1 Profile/MIDP-2.O Configuration/CLDC-1.1 MOT-V3v/OE.42.08R Motorola V3 220 pixels 176 pixels MIB/2.2.1 Profile/MIDP-2.0 Configuration/CLDC-1.0
Table 4
Lookup table 140 can be implemented as a simple database system. If a database is used, the lockup table module 140 is adapted to receive the device identifier via interface 135 and use the identifier in a query. The lookup table module 140 can also be adapted to only use a section of the device identifier within the query, for example, the first n characters of the string sequence forming the device identifier. The query searches the table to see whether a row exists within the lockup table that is indexed by the received device identifier. If such a row does exist then one or more provisional device properties relating to the electronic device 110 can be retrieved from the columns of said row. These one or more provisional device properties are then sent back to the mapping generator 130 via interface 145. If the query is unsuccessful, meaning there are no rows within the lockup table 140 that are indexed by the received device identifier, then the lockup table module 140 will return an error message to the mapping generator 130.
In Figure 1 the mapping modules 136 further comprise a matching algorithm 150. The matching algorithm comprises pattern matching algorithms or routines designed to classify the device identifier to produce one or more provisional device properties relating to the electronic device 110. For example, if the device identifier comprises a string sequence then some or all of the string sequence can be used as a multidimensional input to an algorithm such as a support vector machine (SVM) classifier. The SVM classifier may be a single class O 19 classifier or a multiclass classifier. In this case, the matching algorithm module will receive the device identifier and pass it to the SVM classifier as a multidimensional input. The SVM classifier will then attempt to provide a property, such as the manufacture of the device, as an output. An additional module could then comprise another SVM classifier adapted to take the device identifier as an input and attempt to provide a model number of the device as an output. Alternatively, each manufacture could have an associated matching algorithm adapted to produce a binary output depending on whether the device identifier identified a given manufacturer.
In some embodiments the matching algorithm can comprise a heuristic algorithm that searches the available device-space for one or more provisional properties using the device identifier as an input. Such a heuristic algorithm can use fuzzy logic or decision rules to attempt to provide a mapping. The matching algorithm or algorithms 150 can also be adapted to provide a probabilistic output signifying the probability that the mapping of the device properties is correct. This together with one or more device properties can then be returned to the mapping generator 130 via link 145. The present invention can also comprise a plurality of matching algorithm modules, wherein each module implements a difterent pattern matching method known in the art. If a plurality of matching algorithms are used then each algorithm can be responsible for classifying a different property of the electronic device 110.
The mapping modules 136 can also comprise one or more matching services 160. These are typically third party mapping methods that can be implemented independently of the provisioning service. For example, the matching service could be resident on a server connected to a wide area network (WAN) such as the Internet. The mapping generator 130 is then adapted to send the device identifier in a suitable form over link 135C to the matching service 160 using a known protocol. The matching service 160 then attempts to provide a match or mapping and returns the result(s) back over the WAN to mapping generator 130 via link 145. * 20
With regard to wireless electronic devices, another example of a matching service 160 uses a third party Wireless Universal Resource File or WURFL to attempt to provide a mapping. WURFL is an open source standard, available on the internet, that attempts to list particular properties of available electronic devices in an XML file. The file is updated by a variety of developers around the world. Like the lookup table module 140, a WURFL matching service can be adapted to use the XML file to ascertain one or more provisional device properties. It can achieve this by scanning a device identifier in the form of a user agent string for particular string segments that are defined as data structures within the XML file. As the WURFL matching service uses a third party file the one or more provisional device properties will be returned as a variety of data structures in a set proprietary form. These will then be sent to mapping generator 130 via interface 145.
Mapping generator 130 is thus adapted to receive the results of the mapping modules 136 via link 145. The results of the mapping modules 136 will typically be a number of provisional device properties and/or a number of "no match" or error messages. The mapping generator is then further adapted to arbitrate the responses received from the mapping modules 136 to produce a coherent (i.e. non-conflicting) set of one or more provisional device properties. This coherent set of one or more provisional device properties is then sent to property processor 170. The arbitration can include examining any probabilistic output returned by the mapping module 136 to decide whether a returned provisional device property should be included in the set of provisional device properties passed to the property processor 170. For example, if a matching algorithm 150 is adapted to provide a probabilistic output when classifying the manufacturer of the electronic device 110, then a simple threshold operation can be performed by the mapping generator 130. This operation can involve examining whether the probabilistic output is below a certain threshold value, if it is then the provisional device property returned from the matching algorithm 150 is not passed on to property processor 170. Alternatively, if one or more mapping modules return an indication that one or more provisional device properties were O 21 found, the mapping generator can be adapted to only forward successful mapping results to the property processor 170.
The mapping generator 130 can also be further adapted to select a coherent device property where there are one or more conflicting provisional device properties returned from each of the mapping modules 136. For example, arbitration in the face of conflicting results may be based on the number of mapping algorithms 136 which returned a given provisional device property, e.g. if two out of three mapping modules return a given property then the mapping generator takes this property to be one of the set of the provisional device properties to pass to the property processor 170. Alternatively, the mapping generator 130 can arrange the mapping modules 136 in a hierarchy and only use the one or more conflicting device properties returned by the highest module within that hierarchy.
After a coherent set of provisional device properties has been generated, the mapping generator 130 will then send said properties to the property processor over link 165. At the property processor 170 the one or more provisional device properties received from the mapping generator 130 will typically be in a variety of forms as received from the mapping modules 136. For example, one of the mapping modules 136 may supply the software version and operating system as a numeric coded output and another module may provide the operating system and version as a string sequence. The property processor 170 is thus further adapted to provide an additional mapping or processing operation to convert the one or more provisional device properties into a set of standardised device properties which are independent of the mapping module or method used.
The processing performed by the property processor 170 can be performed in a number of ways. In the example in Figure 1 property processor 170 is connected to database 180 via link 175. Database 180 comprises a number of records wherein each record has a number of fields documenting the possible output received from each of the mapping modules 136 for a particular device property. * 22
For example, the database could store records comprising the different forms in which a device manufacturer is returned from the mapping modules 136. Each of these records will also contain a predetermined or standardised form of the device property. An example of such a record is given below: Device Property Value Returned from Canonical or Mapping Module Standardised Form Manufacturer: SAM samsung Model: SGH-X680-Vodafone x680 J2ME Support: j2me_midp_2_0 true MIDP Version: j2me_midp_2_0 2.0
Table 5
Wherein: J2ME = Java 2 Platform Micro Edition MIDP = Mobile Information Device Profile Alternatively, the property processor 170 can comprise a classification or matching algorithm similar to that used in one of the mapping modules 136.
Such an algorithm could be adapted to use one or more strings representative of the one or more provisional device properties as an input and to produce the one or more strings or database indices representative of one or more standardised properties.
The database 180 can also comprise details of additional device properties beyond those returned by the mapping generator 130. For example, the make and model of a device may determine other hardware properties. Hence, provisional device properties, or standardised device properties, identifying a manufacturer and a model can be used to lookup a database record containing a list of standardised hardware properties associated with said manufacturer and model.
The final result of the property processor 170 is a set of one or more standardised device properties. This is shown in step 430 of Figure 4. These device properties can include: make and model of the electronic device, O 23 hardware configurations of the electronic device, operating software configurations of the electronic device, input and output capabilities of the operating device, processing power of the operating device and others. An electronic device may be modelled using one or more software objects, each object storing certain standardised properties of the electronic device. For example the exemplary device shown in Table 5 may be modelled using three objects: a "Manufacturer" object, a "Model" object and a "Software Support" object. Typically attribute values of standardised properties that are derived from the mapping process are grouped into sets of related properties. An example of a standardised description of a mobile device is given below: Device Manufacturer Name: samsung Model Name: x680 Mobile device: true Display Height: 160 Width: 128 Software Support J2ME: true MIDP version: 2.0 Screen Height: 160 Width: 128 The property processor 170 then provides the set of one or more device properties to service provider 190 via link 185. The property processor 170 allows a standardised interface 185 to be presented to a service provider 190 yet also allows a plurality of mapping modules to be used to increase the reliability of device identification. The service provider 190 can also use interface 185 to retrieve additional standardised device properties on demand from database 180. In some embodiments the property processor is also further adapted to * 24 communicate details of the request for the service to the service provider 190. In other embodiments this information can be provided by the receiver.
The service provider 190 is adapted to provide a compatible service to electronic device 110. This is shown as step 440 in Figure 4. The service provided by the service provider 190 can take a number of forms; examples of three different services are given below. However, possible services are not limited to the examples given below and a service can be thought of as any function or interaction between electronic device 110 and service provider 190.
In a first example, the service comprises an internet service implemented upon a web server. In this case the service provider 190 comprises the web server. The web server may provide a service in the form of a web page that can be accessed by the electronic device 110. The electronic device can access said web page over a communications network represented by two-way wireless communications link 195. As the size of the display 102 on an electronic device can vary between manufacturers and/or models the web server or service provider 190 must correctly format the web page in order for it to be visible upon the display 102. For example, one model of mobile communications device could have a liquid crystal display (LCD) screen size of 240 by 320 pixels and another mobile communications device could have an LCD screen size of 132 by 162 pixels. A web page formatted to be displayed on the former will not display correctly on the latter. Hence, the service provider 190 must format the web page so that it can be correctly displayed on the display 102 of the electronic device 110 representing the service. To do this the service provider requires information pertaining to the size of the display 102 from the property processor 170. The property processor is thus adapted to pass to the service provider 190 information concerning display size that is either retrieved as a standardised device property from the device identifier based on the one or more provisional device properties received from the mapping generator 130 or retrieved from property database 180. The supply of a service by the service provider 190 may then comprise sending an HTML page to electronic device that has been specially formatted for the retrieved display size. O 25
A second example of a service that can be provided by a service provider 190 is a bespoke support service. As the hardware and/or software configuration of a group of electronic devices varies it is important to supply help information specific to a current user's device. This can take the form of the appropriate help or user guide for the electronic device 110. For example, a given electronic device could have a menu structure unique to that particular model of device.
Thus help information specific to this menu structure would need to be supplied to the electronic device 110 by the service provider 190. As before the property processor 170 can supply information specifying the menu structure to the service provider 190. The service provider 190 can then send the appropriate help data e.g. in the form of an HTML file, over communications link 195 to electronic device 110. The help data may comprise any data that can be read on an electronic device.
A third example of a service that can be supplied to the electronic device 110 is the supply of multimedia files, for example video or audio files. Upon a request for such a service, the service provider 190 will need to provide multimedia files in a format suitable for the hardware configuration of electronic device 110. For example, electronic device 110 may comprise a monophonic audio I/O device or may alternatively comprise a polyphonic I/O audio device, If a service provider were to supply a multimedia tile with polyphonic sound to an electronic device that only had a monophonic audio generator then it is likely that the multimedia file would not play correctly on the electronic device, in a similar manner with regard to the software configuration of the electronic device 110, different versions of the operating system resident on the electronic device 110 may require different file formats to be used. The service provider 190 will then also need to be informed of the version of the operating system running upon the electronic device 110. This information relating to hardware and/or software configurations can then be retrieved from property processor 170 as described before. * 26
Figure 2 illustrates a second embodiment of a provisioning system 200 according to the present invention. The system 200 of Figure 2 includes decision logic 285 to supply a compatible service to an electronic device 110 and application database 293 to supply applications to the electronic device 110.
Decision logic 285 and application database 293 can be used together as illustrated in Figure 2 or can also be used independently of each other.
The provisioning system 200 again comprises a receiver 220 adapted to receive a message comprising a device identifier from electronic device 110 through communications link 215. Receiver 220 extracts the device identifier and supplies this to mapping generator 230 over link 225. The mapping generator is adapted to supply the device identifier over links 235 to mapping modules 236 and to receive one or more provisional device properties 245 in return. The mapping generator 230 is then further adapted to supply a coherent set of one or more provisional device properties to property processor 270 over link 265.
Property processor 270 is adapted to standardise the device properties, i.e. place the one or more provisional device properties in a format independent of the mapping module or method used. The property processor 270 can also be optionally integrated with a property database 280 to supply further device properties over link 275 based on the standardised or provisional device properties.
In Figure 2 the service provider 290 is again adapted to receive one or more standardised device properties from property processor 270. However, in the second embodiment the service provider 190 is also adapted to access application database 293 to retrieve an application for supply to the electronic device 110. A flowchart demonstrating the process involved in the supply of an application is shown in Figure 5. In this case, the user of the electronic device will request a service that includes the download of an application on to the electronic device 110. This request is received by the receiver in step 510. The method then follows steps 520 and 530 which are equivalent to steps 420 and 430 described previously. Typically a downloaded application is stored upon * 27 storage device 840 within the electronic device 110 and the application is run using operating system 851 within memory 850.
In order for an electronic device 110 to successfully use a downloaded application the application must be compatible with the hardware and/or software system of the electronic device (an example of which is shown in Figure 8). The application to be downloaded can comprise a Java MIDlet, i.e. a program or application for embedded devices such as mobile telephones or pagers that is written in a Java 2 platform Micro Edition (J2ME) version of the Java programming language and that runs upon a J2ME virtual machine within working memory 850 of electronic device 110. This MlDlet may have some elements that will need to be configured to either the hardware of the electronic device 110 requesting the application or the version of Java ME present. For example, the graphical user interface (GUI) of the MiDlet may need to be adapted to be displayed successfully on screen 102 of electronic device 110. In other situations, the MIDIet may need to be adapted to use device specific interface functions based on device specific I/O devices 830, e.g. a touchpad or spin wheel. Typically application database 293 will contain a plurality of MIDlet programs; wherein, each MIDlet is adapted to be run on a certain electronic device 110 or group of devices. The service provider 290 will receive one or more standardised device properties from property processor over link 281 and then use these one or more standardised device properties to retrieve a suitable application or MIDlet from application database 293, as shown in step 535. This application can then be supplied to the electronic device as shown in steps 540 and described with regard to the first embodiment.
In the second embodiment the provisioning system 200 also comprises decision logic 285. The decision logic can be adapted to receive properties from property processor 270 over interface 281 and the application or service from the service provider over link 292. Alternatively, in other configurations the decision logic 285 is adapted to receive only one of the two inputs. The decision logic 285 then decides, based on its input, whether a service or application should be supplied to the electronic device 110. O 28
For example, a service provider may wish to time limit when a service can be provided to electronic device 110. In this case, the decision logic 285 would be configured to only supply the service or application over communications link 295 when the current time falls within a specified time window. This time window can be set by one or more decision rules loaded upon the decision logic 285. In another example, the decision to supply a service or application to electronic device 110 may be dependent upon the properties of the electronic device 110.
In this case a service provider 290 may be able to supply a compatible application from application database 293 to the electronic device 110, however, for commercial or technical reasons it may be necessary to prevent supply of the application to certain electronic devices 110, e.g. those devices operating through a particular access provider. The access provider of the current electronic device can be supplied by the property processor 270 and supplied as an input to the decision logic 285. The decision logic can then decide whether to supply the application received from the service provider 290 to the electronic device 110 over communication link 295. This conditional supply is demonstrated by the use of a broken line representing communication link 295.
The decision logic 285 can include a set of configurable decision rules, i.e. rules that can be changed over time by an operator. Hence by separating the step of obtaining device properties from the decision logic setting out whether a service is to be provided or not a modular approach can be developed.
The method of conditionally supplying a service or application is shown in the flow diagram of Figure 6. The method begins when receiver 220 receives a device identifier as shown in step 610. The device identifier is then mapped to a series of provisional device properties by mapping generator 230 in step 620.
The provisional device properties are then sent to property processor 270 wherein at step 630 they are standardised to produce one or more standardised device properties. These device properties are then input to decision logic 285 in step 631. Decision logic 285 then applies decision rules in step 632 and supplies the service in step 640 if the result of the application of decision rules is positive O 29 or denies the service in step 633 if the result of the application of decision rules is negative.
A third embodiment of the present invention is shown in Figure 3. The provisioning service therein is adapted to include a link provider 306. The link provider 306 allows the user of electronic device 110 to easily request the delivery of a service. As in Figures 1 and 2 the provisioning system 300 comprises a receiver 320, a mapping generator 330, mapping modules 336, property processor 370 and a service provider 390. As in Figure 2 the provisioning system 300 further comprises decision logic 385 and an application database 393. However these latter two features are not essential to the application of the link provider 306 and the link provider can be implemented without these features.
The link provider 306 comprises receiving means adapted to receive a message from the electronic device 110 over a communications link 305. The link provider 306 is also provided with a transmitting means to transmit a message to electronic device 110 over communications link 305. For example, the link provider 306 could be adapted to receive a short message service (SMS) or "text" message over a digital GSM network and then be adapted to reply using an SMS message over the same digital GSM network. Alternatively, instead of an SMS message, an email or WAP push message may also be used.
The link provider 306 is used in the method illustrated in Figures 7A and 7B. In step 710 of Figure 7A the user sends a message from the electronic device 110, for example an SMS message, over link 305 to the link provider 306. At step 720 the link provider 306 receives a message from the electronic device 110. The message received by the link provider 306 will comprise a preliminary address associated with the electronic device 110. For example, this preliminary address could be one of a Mobile Systems International Subscriber Identity Number (MSISDN -commonly referred to as a "mobile telephone number"), an lP address, or the International Mobile Equipment Identity (IMEI) number of the device. The link provider 306 then uses this preliminary address to direct a reply * 30 message to the electronic device 110 over a link 307 as shown in step 730. This reply message will further comprise a link to a second specified address, for example a specified IP address or an HTTP address. The second specified address is typically either the address of the receiver 320 or the address of a proxy adapted to forward a message to the receiver 320.
The user of electronic device 110 is then free to activate the link to the second specified address in their own time. This process is shown in Figure 7B. In step 740 the link within the message received from the link provider 306 is activated.
For example, if the link message is received using the SMS protocol then on selected mobile communication devices there is a user option to follow the link and connect to the server designated by the HTTP or IP address over a data network. When such an HTTP or IP address is activated a message is also sent to the server specified by the HTTP or IP address; this message contains the device identifier. This is shown in step 750. Typically the server designated by the HTTP or lP address is the receiver 320. The receiver 320 thus receives the device identifier sent in step 750 and the method as described in relation to the previous embodiments is performed.
The third embodiment 300 of the present invention further comprises an optional second electronic device 394. This second device 394 is provided with a service dependent upon the standardised properties of electronic device 110. Any of the first and second embodiments may also comprise a second device that operates in a similar manner to that described below.
In the present example the second device 394 is a personal computer (PC); however the second device may comprise any other electronic device and this device may be portable or stationary. After electronic device 110 has been identified by elements 320 to 380, as described in the first or second embodiments, and the standardised device properties have been supplied to the service provider 390, the service provider may use these standardised device properties to tailor content or services supplied to the second electronic device 394. * 31
For example, the service provider 390 may supply an application or software program to electronic device 110 as described above. The service provider 390 may then also be responsible for supplying help information concerning the application or software program to a user as also described above. In this case the help information may be supplied to the second device 394, instead of, or as well, as electronic device 110. The standardised device properties relating to electronic device 110 may then used to select help content specific to electronic device 110 and send this content to the second electronic device 394. In the present example, the second device 394 is a PC and so the help content may be an HTML or Adobe FlashTM file with details of how to run the application on electronic device 110. Such a file may be displayed in an Internet browser or client running upon the second device 394. The service provider 394 may also provide an emulation of electronic device 110 to the second device 394, allowing a standard interface based on device 110 to be used upon the second device 394. The service from the service provider 390 need not be tailored to the specification of the second device 394 as it may be assumed that the second device 394 is running an up-to-date browser or client capable of displaying content or running services common to the Internet.
The components of provisioning system 100, 200, 300 illustrated in Figures 1 to 3 (excluding the electronic device 110) can be implemented upon a computer system, such as a server system running an operating system known in the art.
The computer system can comprise a plurality of hardware elements that may be electronically coupled via a bus. The hardware elements may include one or more processors; one or more input and/or output devices (e.g. mouse, keyboard, display, printer etc); and one or more storage devices (for example disc drives, optical storage devices or solid state storage devices). The system may also comprise a communication system comprising a communications interface, a receiver and a transmitter. For example this can be provided by a modem, a network card, whether wired or wireless, or a communication system adapted to interface with one of the communication networks described previously. The computer system may also comprise memory which, in * 32 operation, will contain code related to an operator system and applications.
These applications may implement the modules of the provisioning system 100 to 300, such as a receiver 120, 220,320; mapping generator 130, 230, 330; property processor 170. 270, 370; service provider 190, 290, 390; and/or decision logic 285, 385. Alternatively, the computer system may comprise customised hardware and further connections to other computer devices such as network input and/or output devices may be employed. Databases 280, 380 and 293, 393 can be implemented upon such a computer system using storage devices or can be implemented using remote storage devices and/or computer systems. Alternatively each component of the provisioning system 100, 200, 300 could be implemented by a separate computer system, for example the mapping generator could comprise one server running an operating system known in the art with communication links to other servers implementing other components. The mapping modules 336 may be implemented upon a single computer system containing the system modules 320, 330, 370, 385 and 390 or can be implemented on remote systems connected via a communications network. O 33
Claims (39)
- Claims 1. A method for supplying a service to a plurality of electronic devices, each electronic device having an associated device identifier, the method comprising the steps of: I. receiving a device identifier from each electronic device, wherein the device identifier is one of a plurality of receivable device identifiers; II. mapping the received device identifier using at least one of a lookup table, a pattern matching algorithm and a matching service to produce one or more provisional device properties, the one or more provisional device properties being in a format that is dependent on the mapping method used; Ill, processing the one or more provisional device properties to generate one or more standardised device properties in a predetermined standard format, said format being independent of the mapping method used; IV. supplying a compatible service to each electronic device based on the one or more standardised device properties.
- 2. The method of claim 1, wherein the electronic device is a communications device.
- 3. The method of claim 2, wherein the electronic device is one of a mobile, a cellular or a wireless communications device.
- 4. The method of claim 3, wherein the electronic device operates upon at least one of the following access services or protocols: Global System for Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Time Division Multiple Access (TOMA), high-frequency wireless local area network (WiFi or WLAN), second-and-a-half generation mobile communications networks (2.5G), Enhanced Data rates for Global Evolution (EDGE), third generation mobile communications networks (3G), or Worldwide Interoperability for Microwave Access (WiMax). * 34
- 5. The method of any of claims 2 to 4, wherein the device identifier is received over a communications network.
- 6. The method of any of claims 2 to 5, wherein the device identifier is dependent on at least one of: an access provider for the communications device, the version of the operating software resident upon the communications device, the hardware configuration of the communications device, the manufacturer of the communications device and the retailer of the communications device.
- 7. The method of any of the preceding claims wherein the device identifier associated with a particular electronic device is dependent upon the configuration of said electronic device.
- 8. The method of any of the preceding claims, wherein the device identifier comprises a concatenated string sequence.
- 9. The method of claim 8, wherein the concatenated string sequence comprises the concatenation of a plurality of variable data fields.
- 10. The method of any of the preceding claims, wherein supplying a compatible service further comprises at least one of supplying a suitably formatted web page, supplying help or support information specific to the device or supplying a compatible multimedia file.
- 11. The method of any of the preceding claims, wherein supplying a compatible service further comprises supplying a compatible application or software program to the electronic device.
- 12. The method of claim 11, wherein the compatible application is retrieved from a set of compatible applications based on the one or more standardised device properties. * 35
- 13. The method of any of claims 1 to 12, wherein the device identifier further comprises an internet protocol (IP) address.
- 14. The method of claim 13, wherein the compatible service is supplied to the electronic device based on the one or more standardised device properties and the internet protocol (IP) address.
- 15. The method of any of the preceding claims, wherein the step of supplying a compatible service further comprises conditionally supplying a compatible service using decision rules operating on the one or more standardised device properties.
- 16. The method of claim 15, wherein the decision rules are configurable.
- 17. The method of any of the preceding claims, wherein step (i) further comprises receiving a device identifier from each electronic device upon the activation on each electronic device of a link to a specified address.
- 18. The method of claim 17, wherein before step (i) the method further comprises: I. receiving a first message from each electronic device, the first message comprising a preliminary address associated with the electronic device; and II. sending a second message to the preliminary address received in step (I), the second message comprising the link to the specified address.
- 19. A provisioning server comprising a processor adapted to perform the method of any one of claims 1 to 18. * 36
- 20. A system for supplying a service to a plurality of electronic devices, each electronic device having an associated device identifier, the system comprising: a receiver for receiving a device identifier from each electronic device; a mapping generator, operably connected to the receiver, for mapping the received device identifier to one or more provisional device properties, wherein the mapping generator further comprises at least one of the following mapping modules::alookup table,a pattern matching algorithm and a matching service, the one or more provisional device properties being in a format that is dependent on the mapping module used; a property processor, operably connected to the mapping generator, for processing the one or more provisional device properties to produce one or more standardised device properties in a predetermined standard format, said format being independent of the mapping module used; a service provider, operably connected to the property processor, for supplying a compatible service to each electronic device based on the one or more standardised device properties.
- 21. The system of any of claim 20, wherein the receiver is adapted to receive a device identifier from a communications device over a communications network.
- 22. The system of any of claim 21, wherein the receiver is adapted to receive a device identifier from one of a mobile, a cellular or a wireless communications device.
- 23. The method of claim 21 or claim 22, wherein the receiver is adapted to receive a device identifier using at least one of the following access services O 37 or protocols: Global System for Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), high-frequency wireless local area network (WiFi or WLAN), second-and-a-half generation mobile communications networks (2.5G), Enhanced Data rates for Global Evolution (EDGE), third generation mobile communications networks (3G), or Worldwide Interoperability for Microwave Access (WiMax).
- 24. The system of claim 21, wherein the device identifier is dependent on at least one of: the access provider for the communications device, the version of the operating software resident upon the communications device, the hardware configuration of the communications device, the manufacturer of the communications device and the retailer of the communications device.
- 25. The system of any of claims 20 to 24, wherein the device identifier associated with a particular electronic device is dependent on the configuration of said electronic device.
- 26. The system of any of claims 20 to 25, wherein the service provider further comprises decision logic operating on the one or more standardised device properties to conditionally supply the compatible service to the electronic devices.
- 27. The system of claim 26, wherein the decision logic is configurable.
- 28. The system of claim 20, wherein the system further comprises a database operably connected to the property processor, wherefrom the property processor is further adapted to retrieve the one or more standardised device properties from the database using the one or more provisional device properties as an input.
- 29. The system of any of claims 20 to 28, wherein the device identifier comprises a concatenated string sequence. k * 38
- 30. The system of claim 29, wherein the concatenated string sequence comprises the concatenation of a plurality of variable data fields.
- 31. The system of any of claims 20 to 30, wherein the compatible service provided by the service provider comprises an application adapted to operate on the electronic device.
- 32. The system of any of claims 20 to 31, wherein the compatible service provided by the service provider comprises at least one of a suitably formatted web page, help or support information specific to the device, or a compatible multimedia file.
- 33. The system of any of claims 20 to 32, wherein the system further comprises an application database comprising a set of applications and the service provider is further adapted to retrieve a compatible application using the one or more standardised device properties.
- 34. The system of any of claims 20 to 33, wherein the receiver is adapted to receive an internet protocol (lP) address and the service provider is further adapted to supply a compatible service to the electronic device based on said IP address.
- 35. The system of any of claims 20 to 34, wherein the mapping generator, property processor and service provider collectively comprise a single server.
- 36. The system of any of claims 20 to 35, wherein the receiver comprises an application program interface (API).
- 37. The system of any of claims 20 to 36, wherein the receiver is further adapted to receive a device identifier from each electronic device upon the activation on each electronic device of a link to a specified address. * 39
- 38. The system of claim 37, wherein the system further comprises a link provider, the link provider being adapted to receive a first message from each electronic device, the first message comprising a preliminary address associated with the electronic device, and to send a second message to the preliminary address, the second message comprising the link to the specified address.
- 39. An electronic device for use with the system of any of claims 20 to 38.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0721008A GB2453998A (en) | 2007-10-25 | 2007-10-25 | Using telecommunication device identifiers to determine provisional device properties to allow compatible service provision. |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0721008A GB2453998A (en) | 2007-10-25 | 2007-10-25 | Using telecommunication device identifiers to determine provisional device properties to allow compatible service provision. |
Publications (2)
Publication Number | Publication Date |
---|---|
GB0721008D0 GB0721008D0 (en) | 2007-12-05 |
GB2453998A true GB2453998A (en) | 2009-04-29 |
Family
ID=38829972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB0721008A Withdrawn GB2453998A (en) | 2007-10-25 | 2007-10-25 | Using telecommunication device identifiers to determine provisional device properties to allow compatible service provision. |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2453998A (en) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6035339A (en) * | 1997-03-13 | 2000-03-07 | At&T Corporation | Network information delivery system for delivering information based on end user terminal requirements |
EP1139608A2 (en) * | 2000-03-31 | 2001-10-04 | Lucent Technologies Inc. | Method and system for subscriber-configurable communications service |
WO2003073304A1 (en) * | 2002-02-27 | 2003-09-04 | Nokia Corporation | Personal profile sharing and management for short range wireless terminals |
US20030187930A1 (en) * | 2002-03-27 | 2003-10-02 | International Business Machines Corporation | Messaging system and method with transcoder filtering of baseline message representations |
US20040083291A1 (en) * | 2002-10-28 | 2004-04-29 | Pekka Pessi | System and method for conveying terminal capability and user preferences-dependent content characteristics for content adaptation |
WO2004054294A2 (en) * | 2002-12-06 | 2004-06-24 | Nokia Corporation | System, method and computer program product for the delivery of media content |
GB2403872A (en) * | 2003-07-09 | 2005-01-12 | Argo Interactive Ltd | Profiling characteristics of mobile terminals |
US20050188056A1 (en) * | 2004-02-10 | 2005-08-25 | Nokia Corporation | Terminal based device profile web service |
GB2417165A (en) * | 2004-08-12 | 2006-02-15 | Robert Culyer | Method for determining the phone type of a user who is subscribing to a service delivered to a mobile phone |
WO2006101604A2 (en) * | 2005-03-23 | 2006-09-28 | Dynetic Solutions Gmbh | Data output method and system |
WO2007035918A2 (en) * | 2005-09-21 | 2007-03-29 | Qwikker, Inc. | Device-aware content delivery |
-
2007
- 2007-10-25 GB GB0721008A patent/GB2453998A/en not_active Withdrawn
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6035339A (en) * | 1997-03-13 | 2000-03-07 | At&T Corporation | Network information delivery system for delivering information based on end user terminal requirements |
EP1139608A2 (en) * | 2000-03-31 | 2001-10-04 | Lucent Technologies Inc. | Method and system for subscriber-configurable communications service |
WO2003073304A1 (en) * | 2002-02-27 | 2003-09-04 | Nokia Corporation | Personal profile sharing and management for short range wireless terminals |
US20030187930A1 (en) * | 2002-03-27 | 2003-10-02 | International Business Machines Corporation | Messaging system and method with transcoder filtering of baseline message representations |
US20040083291A1 (en) * | 2002-10-28 | 2004-04-29 | Pekka Pessi | System and method for conveying terminal capability and user preferences-dependent content characteristics for content adaptation |
WO2004054294A2 (en) * | 2002-12-06 | 2004-06-24 | Nokia Corporation | System, method and computer program product for the delivery of media content |
GB2403872A (en) * | 2003-07-09 | 2005-01-12 | Argo Interactive Ltd | Profiling characteristics of mobile terminals |
US20050188056A1 (en) * | 2004-02-10 | 2005-08-25 | Nokia Corporation | Terminal based device profile web service |
GB2417165A (en) * | 2004-08-12 | 2006-02-15 | Robert Culyer | Method for determining the phone type of a user who is subscribing to a service delivered to a mobile phone |
WO2006101604A2 (en) * | 2005-03-23 | 2006-09-28 | Dynetic Solutions Gmbh | Data output method and system |
WO2007035918A2 (en) * | 2005-09-21 | 2007-03-29 | Qwikker, Inc. | Device-aware content delivery |
Also Published As
Publication number | Publication date |
---|---|
GB0721008D0 (en) | 2007-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2404457B1 (en) | Device determination | |
US7194503B2 (en) | System and method to query settings on a mobile device | |
EP1750469B1 (en) | Automatic mobile device capability management | |
US7653001B2 (en) | Managing differences in user devices when sharing content on mobile devices | |
CN100486280C (en) | Method and system for adapting page of mobile telecommunication terminal | |
US7187660B2 (en) | System and method for continuously provisioning a mobile device | |
US9401842B2 (en) | Method and device for configuring terminal devices | |
RU2442295C2 (en) | Apparatus and methods for network identification of open market wireless devices | |
US20060242248A1 (en) | Shortcut generator for services accessible via a messaging service system | |
KR20040111562A (en) | Method and device for management of tree data exchange | |
JP2008510207A (en) | Software program synchronization method | |
KR20070064434A (en) | Integrated method and apparatus to manage mobile devices and services | |
CN113010378B (en) | Log processing method and device of microservice module, storage medium and electronic device | |
US20130012185A1 (en) | Systems and methods for remote configuration or re-configuration of software residing on a sim card | |
EP2131555A1 (en) | Apparatus and method for identification of the characteristics of a communication device | |
KR100959836B1 (en) | Client provisioning with linking | |
US20040040022A1 (en) | Method and apparatus for just-in-time provisioning application-related information at a communication device | |
US20090216864A1 (en) | Methods, apparatuses, and computer program products, for automatically finding configuration settings for services | |
GB2453998A (en) | Using telecommunication device identifiers to determine provisional device properties to allow compatible service provision. | |
EP1636693A1 (en) | Method for obtaining communication settings using an application descriptor | |
US11523281B1 (en) | Validating customized user equipment (UE) | |
CN113825166B (en) | Base station testing method and device, electronic equipment and storage medium | |
KR100590699B1 (en) | Method and system for providing content with information of latest application | |
KR20060012920A (en) | The system and operating method for enterprise wireless application service | |
CN117390321A (en) | Method, device, equipment and medium for offline loading H5 interface in mobile terminal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |