A method of, and system for, performing message modification on the basis of group membership of the sender and/or recipient of the message. The system includes a device which modifies a message for transmission through a data communications network. The message includes transmission data which identifies a sending party and a recipient of the message and a message body identifying content thereof, at least part of which is specified by the sending party. The system includes a data processor device arranged to identify membership of a group in relation to a sending party and a recipient of a the message, identify an action in dependence on concordance between respective group memberships, modify the message on the basis of the identified action; and transmit the modified message to the recipient in accordance with the transmission data.

Patent
   8406792
Priority
Nov 27 2006
Filed
Aug 02 2007
Issued
Mar 26 2013
Expiry
Aug 09 2030
Extension
1103 days
Assg.orig
Entity
Large
4
368
window open
14. A system, comprising:
a processor; and
a memory containing instructions that, when executed, cause the processor to:
identify the group membership conditions of a sending party and a recipient of a message;
select a rule based on the group membership conditions of the sending party and the recipient of the message, wherein the rule is specified by the identified group of the sending party and the recipient of the message and the rule dictates a billing action and a message modification tag based on the group membership condition of the sending party and the recipient of the message;
select a billing action and a message modification tag based on the predetermined rules;
transmit the message to the recipient of the message, wherein the message is appended with the selected message modification tag;
transmit a second message to the sending party, wherein the second message is appended with a second message modification tag specified by the selected rule; and
bill the sending party and the recipient of the message according to the selected billing action.
27. A non-transitory computer-readable medium containing instructions that, when executed by a computing device, cause the computing device to:
identify the group membership conditions of a sending party and a recipient of a message;
select a rule based on the group membership conditions of the sending party and the recipient of the message, wherein the rule is specified by the identified group of the sending party and the recipient of the message and the rule dictates a billing action and a message modification tag based on the group membership condition of the sending party and the recipient of the message;
select a billing action and a message modification tag based on the predetermined rules;
transmit the message to the recipient of the message, wherein the message is appended with the selected message modification tag;
transmit a second message to the sending party, wherein the second message is appended with a second message modification tag specified by the selected rule; and
bill the sending party and the recipient of the message according to the selected billing action.
1. A method, comprising:
identifying, by a computer hardware processor, the group membership conditions of a sending party and a recipient of a message;
selecting, by the hardware processor, a rule based on the group membership conditions of the sending party and the recipient of the message, wherein the rule is specified by the identified group of the sending party and the recipient of the message and the rule dictates a billing action and a message modification tag based on the group membership condition of the sending party and the recipient of the message;
selecting, by the hardware processor, a billing action and a message modification tag based on the predetermined rules;
transmitting, by the hardware processor, the message to the recipient of the message, wherein the message is appended with the selected message modification tag;
transmitting, by the hardware processor, a second message to the sending party, wherein the second message is appended with a second message modification tag specified by the selected rule; and
billing, by the hardware processor, the sending party and the recipient of the message according to the selected billing action.
2. The method of claim 1, wherein the message modification tag and the second message modification tag are the same when the sending party and the recipient are members of the same group.
3. The method of claim 1, wherein the message modification tag and the second message modification tag are different when the sending party and the recipient are members of different groups.
4. The method of claim 1, wherein the message modification tag and the second message modification tag are the same when neither the sending party nor the recipient is a member of a group.
5. The method of claim 1, wherein the message modification tag is related to a sponsor associated with the identified group of the sending party and the recipient of the message.
6. The method of claim 1, wherein the billing action dictates a cost to the sending party and the recipient of the message for transmission of the message.
7. The method of claim 6, wherein the cost is reduced by an amount that a sponsor associated with the identified group of the sending party and the recipient is willing to subsidize the cost.
8. The method of claim 7, wherein the billing action dictates that the cost to both the sending party and the recipient is subsidized by the sponsor when both the sending party and the recipient are members of the group associated with the sponsor.
9. The method of claim 7, wherein the billing action dictates that only the cost to the member of the group associated with the sponsor is subsidized by the sponsor when only one of the sending party and the recipient is a member of the group associates with the sponsor.
10. The method claim 7, wherein the billing action dictates that the cost to the sending party and the recipient is not subsidized when neither the sending party nor the recipient is a member of the group associated with the sponsor.
11. The method of claim 8, wherein the message modification tag appended to the message indicates that the cost is subsidized by the sponsor.
12. The method of claim 9, wherein the message modification tag appended to the message indicates that only the cost to the member of the group associated with the sponsor is subsidized by the sponsor.
13. The method of claim 10, wherein the message modification tag appended to the message indicates that the sponsor subsidizes the cost of transmission for members of the group associated with the sponsor.
15. The system of claim 14, wherein the message modification tag and the second message modification tag are the same when the sending party and the recipient are members of the same group.
16. The system of claim 14, wherein the message modification tag and the second message modification tag are different when the sending party and the recipient are members of different groups.
17. The system of claim 14, wherein the message modification tag and the second message modification tag are the same when neither the sending party nor the recipient is a member of a group.
18. The system of claim 14, wherein the message modification tag is related to a sponsor associated with the identified group of the sending party and the recipient of the message.
19. The system of claim 14, wherein the billing action dictates a cost to the sending party and the recipient of the message for transmission of the message.
20. The system of claim 19, wherein the cost is reduced by an amount that a sponsor associated with the identified group of the sending party and the recipient is willing to subsidize the cost.
21. The system of claim 14 wherein the billing action dictates that the cost to both the sending party and the recipient is subsidized by the sponsor when both the sending party and the recipient are members of the group associated with the sponsor.
22. The system of claim 20, wherein the billing action dictates that only the cost to the member of the group associated with the sponsor is subsidized by the sponsor when only one of the sending party and the recipient is a member of the group associates with the sponsor.
23. The system claim 20, wherein the billing action dictates that the cost to the sending party and the recipient is not subsidized when neither the sending party nor the recipient is a member of the group associated with the sponsor.
24. The system of claim 21, wherein the message modification tag appended to the message indicates that the cost is subsidized by the sponsor.
25. The system of claim 22, wherein the message modification tag appended to the message indicates that only the cost to the member of the group associated with the sponsor is subsidized by the sponsor.
26. The system of claim 23, wherein the message modification tag appended to the message indicates that the sponsor subsidizes the cost of transmission for members of the group associated with the sponsor.
28. The non-transitory computer-readable medium of claim 27, wherein the message modification tag and the second message modification tag are the same when the sending party and the recipient are members of the same group.
29. The non-transitory computer-readable medium of claim 27, wherein the message modification tag and the second message modification tag are different when the sending party and the recipient are members of different groups.
30. The non-transitory computer-readable medium of claim 27, wherein the message modification tag and the second message modification tag are the same when neither the sending party nor the recipient is a member of a group.
31. The non-transitory computer-readable medium of claim 27, wherein the message modification tag is related to a sponsor associated with the identified group of the sending party and the recipient of the message.
32. The non-transitory computer-readable medium of claim 27, wherein the billing action dictates a cost to the sending party and the recipient of the message for transmission of the message.
33. The non-transitory computer-readable medium of claim 32, wherein the cost is reduced by an amount that a sponsor associated with the identified group of the sending party and the recipient is willing to subsidize the cost.
34. The non-transitory computer-readable medium of claim 33, wherein the billing action dictates that the cost to both the sending party and the recipient is subsidized by the sponsor when both the sending party and the recipient are members of the group associated with the sponsor.
35. The non-transitory computer-readable medium of claim 33, wherein the billing action dictates that only the cost to the member of the group associated with the sponsor is subsidized by the sponsor when only one of the sending party and the recipient is a member of the group associates with the sponsor.
36. The non-transitory computer-readable medium claim 33, wherein the billing action dictates that the cost to the sending party and the recipient is not subsidized when neither the sending party nor the recipient is a member of the group associated with the sponsor.
37. The non-transitory computer-readable medium of claim 34, wherein the message modification tag appended to the message indicates that the cost is subsidized by the sponsor.
38. The non-transitory computer-readable medium of claim 35, wherein the message modification tag appended to the message indicates that only the cost to the member of the group associated with the sponsor is subsidized by the sponsor.

The present invention relates to a method of, and system for, performing message modification on the basis of group membership of the sender and/or recipient of the message. The present invention is particularly, but not exclusively, suited to arrangements in which the provision of network services is sponsored by a party other than the group or parties involved in a given network event.

As is well known, communications networks provide a means for users to communicate with one or more other users. Users of a communication system are typically provided with numerous services, such as calls, data communication such as messaging and/or multimedia services, or simply provide users with a gateway to another network, such as the Internet. In relation to any one service, various communication systems, such as public switched telephone networks (PSTN), wireless communication systems, e.g. global system for mobile communications (GSM), general packet radio service (GPRS), universal mobile telecommunications system (UMTS), wireless local area network (WLAN) and so on, and/or other communication networks, such as an Internet Protocol (IP) network, may simultaneously be concerned in providing a connection. In addition communications systems can include broadcast networks such as Digital Video Broadcasting for Handheld (DVB-H), Digital Audio Broadcasting (DAB), and Digitam Multimedia Broadcast (DMB). An end-user may access a communication network by means of any appropriate communication device, such as user equipment (UE), a mobile station (MS), a cellular phone, a personal digital assistant (PDA), a personal computer (PC), or any other equipment operable according to a suitable network protocol, such as a Session Initiation Protocol (SIP) or a wireless applications protocol (WAP) or a hypertext transfer protocol (HTTP). The user equipment may support, in addition to call and network access functions, other services, such as short message service (SMS), multimedia message service (MMS), electronic mail (email), Web service interface (WSI) messaging and voice mail and one-way messages such as WAP PUSH messages.

Communications sessions involving more than two users are commonly referred to as virtual, online or group communications, and can be facilitated by services including the “push-to-talk over cellular” (PoC) service also known as the PTT (push-to-talk service), the instant messaging (IM) service, IRC (“Internet Relay Chat”), and the ICQ (“I Seek You”) service. In the case of the IM service, users are allowed to send messages to one or more in a list of predetermined users (a so-called “private list”) in a conversational mode, and because they are transmitted “instantly”, the transfer of messages back and forth is fast enough for participants to maintain an interactive conversation. The IRC service is a system for chatting that involves a set of rules and conventions and is implemented via client/server software. An IRC client can be downloaded to a user's computer, and the client is then used to connect to an IRC server in an IRC network to start or join an IRC chat group. The fourth group messaging application, ICQ (“I Seek You”), is a client application that provides information as to which “friends” and “contacts” are also online on the Internet, pages them, and operates so as to coordinate a “chat” session with them. The IM system is similarly arranged to generate alerts whenever a member of a given private list is online.

These virtual communities are becoming increasingly important vehicles of communication and dissemination of new ideas in the online world; such communities are used not only to develop and discuss ideas voluntarily within specific interest groups but they also are of increasing value for a advertisers: in essence they are word-of-mouth marketing and endorsement networks from one member to another member, and are increasingly perceived as the strongest method of marketing. Most online applications also utilize, consciously or unconsciously, the viral effects generated within these social networks and between the networks in their marketing.

In addition to virtual communities, real communities such as educational clubs, book clubs, music clubs, sports clubs, professional communities etc. provide a forum for discussion and interaction. Many such real communities have web pages to share information within their community, and access to these data is often controlled by means of membership criteria (user ID and password) for privacy reasons. Thus virtual and real communities are interrelated in so far as both require some sort of web authentication method in order to authenticate members.

Advertisers can be attracted by the ready-made and apparently auto-profiled set of recipients offered by groups, so as to share, at least in part, the costs associated with communications between the group members; however the advertisers require a degree of comfort that their targeted messages (i.e. messages containing information that matches the characteristics of the group) are reaching persons who are indeed members of a given group—essentially to ensure that the recipients match the characteristics of the targeted messages.

According to a first aspect of the invention there is provided apparatus for modifying a message for transmission through a data communications network, the message including transmission data identifying a sending party and a recipient of said message and a message body identifying content thereof, at least part of which is specified by the sending party, the apparatus comprising data processing means arranged to:

Embodiments of the invention provide message modification on the basis of group membership, and essentially provide a means of selecting tags to add to a message on the basis of identified group membership. Conveniently the apparatus can comprise a storage system arranged to store a plurality of tags and index data corresponding thereto, each index data item comprising data indicative of a group membership configuration corresponding to the sending party of a message and the recipient of a message. For example: a first tag might be associated with a configuration in which the sending party and recipient are members of the same group; a second tag might be associated with a configuration in which the sending party is a member of a group but the recipient is not a member of any group; a third tag might be associated with a configuration in which the recipient is a member of a group but the sending party is not a member of any group; and a fourth tag might be associated with a configuration in which the recipient is a member of a group and the sending party is a member of a different group. In at least some arrangements the data processing means can be arranged to send a message containing the selected tag to the sending party.

Most preferably the tag includes a field in which the name of an entity, such as a sponsor of a group, is inserted once the or each group membership corresponding to the sending party/recipient has been identified. In the case of the sending party and recipient each being members of different groups, messages can be modified on the basis of a set of precedence rules which specify which of the groups should form the basis for the tag selection and message modification.

In preferred arrangements the communications network includes data storage means arranged to hold group records, each group record being indicative of network usage relating to members of the group. The data processing means can be arranged to determine whether said message falls within predetermined message transmission criteria, and to modify a group record corresponding to the group when said criteria are met. The group record can hold data indicative of an allocation of usage associated with the group, in which case the data processing means is arranged to reduce allocation associated with the group. Alternatively the data processing means is arranged to store data indicative of a charge for transmission of the message in the group record.

Preferably the data storage means is also arranged to hold subscriber records including a plurality of fields including a group field for storing data indicative of group membership of a subscriber; the group field is preferably initially empty and is populated in response to receipt of group membership data from the subscriber. In one arrangement the data processing means is arranged to request access to a remotely accessible information source on the basis of identification data; responsive to receipt of a response from the remotely accessible information source. The data processing means can perform a first storage action in respect of a response of a first type and can perform a second storage action in respect of a response of a second type. Receipt of a response of the first type from the remotely accessible information source causes the data processing means to update the group field in the subscriber record so as to indicate authenticated membership of the group identified in the received group membership data.

Thus, membership of a given subscriber in relation to a particular group is verified subsequent to the subscriber providing details of a given group of which they purport to be a member, and the subscriber record is updated to reflect the verification, or otherwise, of the asserted membership. The verified group membership can then be used to identify group membership for use in message modification according to embodiments of the invention.

In preferred arrangements the remotely accessible information source is associated with the group, meaning that usage of communications-based group services is dependent on verification, by a party corresponding to the group, of the subscriber's credentials. In one arrangement, the party might be a web server hosting group-related information that is only accessible on the basis of a bone fide password and login. Standard web login and password procedures are therefore conveniently used as a verification process in embodiments of the invention rather than (as is usual) is a process for accessing information.

In such an arrangement the data processing means can be arranged to look for cookies (a packet of data for use in sending to the web server), a web page of a predetermined format, or similar, within the response received from the web server and update the subscriber record accordingly.

The data processing means can be provided by a data processor having the requisite processing resources and configured to function as described above. Such a configuration can be provided by bespoke software components executed by the processing resources.

According to further aspects of the present invention there is provided software adapted to be executed by the data processing means to provide the functionality described above.

Further features and advantages of the invention will become apparent from the following description of preferred embodiments of the invention, given by way of example only, which is made with reference to the accompanying drawings.

FIG. 1 is a schematic illustration of a mobile network arranged in accordance with an embodiment of the invention;

FIG. 2 is a schematic illustration of data exchanges between components of the system illustrated in FIG. 1;

FIG. 3a is a block diagram showing components of the registration server shown in FIGS. 1 and 2;

FIG. 3b is a schematic timing diagram showing messages passed between various components of the system illustrated in FIG. 1; and

FIG. 4 is a schematic block diagram showing components of the message modification server shown in FIGS. 1 and 2.

Embodiments of the invention are concerned with modification of data messages based on group, or community, membership of the sender and receiver of the data message. The nature of this modification, and the criteria relating thereto, is described in detail later, but first a description of the infrastructure needed to support the modification will be presented.

FIGS. 1 and 2 show an example of a data messaging system 1 within which embodiments of the invention operate. In FIG. 2, the arrows indicate data flows within the data messaging system 1 and the blocks indicate components of the data messaging system 1. Embodiments, described herein as a message modification service, are concerned with modifications to short message service messages (SMS), but it will be appreciated that other message types, such as multimedia message service (MMS), email messages, bespoke messages in the form of GPRS data and/or streamed data and voice messages can alternatively be modified according to embodiments of the invention, and that the specific arrangement of the data messaging system 1 is dependent on the type of message being transmitted.

In the arrangement shown in FIGS. 1 and 2, a terminal 2 communicates with various network devices within the data messaging system 1 via network 6. The terminal 2 may be a wireless terminal such as a mobile phone or a PDA. The data messaging system 1 comprises a WAP gateway 8, which is typically a network operator's WAP gateway and a registration services server S1, with which the terminal 2 communicates. In addition the data messaging system 1 comprises a message modification server S2, a store-and-forward message server SMSC 16 configured to store and forward messages in accordance with conventional methods, and a database DB1, arranged to store data in respect of subscribers, terminals such as 2, and content data. The database DB1 can either be provided by a plurality of separate databases 20, 24, as shown in FIG. 1, or by a single database, as shown in FIG. 2.

In embodiments of the invention it is assumed that the user of the terminal 2 is a subscriber of the network, and that network usage is allocated, at least in part, in dependence on subscribers accepting delivery of a predetermined number and/or type of promotional messages; subscription is contingent on the subscriber entering data indicative, of their demographic data and interests, this subsequently being used, e.g. by the message modification server S2 to tailor selection of the promotional messages.

The registration server S1 can be accessed by a user of the terminal 2 or via a terminal T1 typically connected to the Internet 10 (the terminal T1 can be e.g. a laptop computer or a personal computer fixedly attached to a network) by actuating a URL corresponding to the server S1 when entering such details; referring to FIG. 3a, in addition to standard CPU, memory, data bus, Input/Output ports, data storage, and operating system programs, the server S1 comprises registration software 301, which receives identification, group membership, demographic and preference data from the subscriber; and authentication software 303, which, as will be described in detail later, authenticates the received group membership data. Once these data have been received and, where appropriate, authenticated, a subscriber record is completed and/or updated for the subscriber and stored in the database DB1, for subsequent access by the SMSC 16 and the message modification server S2 (among other network components). The database DB1 thus holds subscriber data for each subscriber, the data identifying: the billing account to which the subscriber belongs; interests and preference data relating to the subscriber; and if the subscriber has been authenticated as belonging to a group, data identifying the group to which the subscriber belongs. In preferred embodiments of the invention the group records are initially empty, and are populated once membership of a given group has been confirmed so as to include data indicative of the type of subscription held for the group. The database DB1 is configured so that any details relating to a billing account held in the database may be retrieved by selecting the appropriate billing account, any details relating to a group held on the database may be retrieved by selecting the appropriate group, and any details relating to a particular subscriber held in the database may be retrieved by selecting the appropriate subscriber.

Broadly speaking, embodiments of the invention comprise two processes, each of which can operate independently of the other, but for illustrative purposes will herein be described together. The first process is a registration process, effected by the authentication software component 303, and which operates so as to verify group membership details entered by subscribers when providing their demographic details. The second process is a message modification process, executed by the message modification server S2, wherein messages are modified based on sender and recipient identities and their respective membership or otherwise in a given group. In a preferred arrangement the two processes are linked by the involvement of a so-called sponsor, which pays for the transmission of messages between parties contingent on their respective—and authenticated—group membership. Successful authentication according to the first (registration) process, which is itself designed to verify group membership, therefore confirms to the sponsor that discounts (by way of free or discounted messaging) are being applied correctly.

Each of these processes and the functional parts required to implement the processes will now be described, starting with the authentication process, for the case where the subscriber completes the registration process using terminal T1. Referring back to FIG. 2, at step 201 the user enters the URL corresponding to the registration server S1, which causes the registration software 301 to send a Web page from the server S1, via an Internet gateway 12, where it is modified, using conventional techniques, into a format suitable for display on the user's terminal T1, and sent to the terminal T1. The user then enters various registration details into the web page and the terminal T1 sends the details to the registration services server S1, via the gateway 8. As part of the registration process, the user enters personal information details, such as name, address, terminal details (including capabilities), sex, occupation, interests, etc. group memberships, and these details are stored, at step 202b, in the database DB1. The group membership data in respect of each group are stored in association with a respective group flag indicating authentication status thereof: the registration software 301 passes such group data to the authentication software 303 component, and in the first instance sets the status of each group flag to “unknown”. The authentication software component 303 is then triggered to perform a group membership authentication process, this involving an exchange of data with the terminal T1 and the output of which results in a change to the status of the group flag (either “authenticated” or “bogus” or “undetermined”).

In one embodiment the authentication process involves the authentication software component 303 capturing respective user login details corresponding to a web-based service for the (or each) group, using these captured details to simulate a login process, and using the results thereof as the basis for updating the group flag status. Referring also to FIG. 3b, in one arrangement the authentication component 303 sends a pop-up, a frame or a bespoke login sheet to the terminal T1 (step S3.1), inviting the subscriber to enter his user ID and password; assuming these details to be duly entered, the authentication component 303 receives the entered data (step S3.3) and replicates the normal login process with a web server S3 corresponding to the group identified by the subscriber (step S3.5). As per a conventional login procedure, the group web server S3 returns data indicative either of a successful login process—in the form of a cookie, predetermined application programming interface data or a predetermined web page containing a predetermined layout or confirmation message—or of an unsuccessful login process (step S3.7). Examples of successful and unsuccessful login procedures are shown in the scripts below:

Successful
==========
Request
------
POST /config/login? HTTP/1.1
Host: login.yahoo.com
User-Agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US;
rv:1.7.3) Gecko/20040910
Accept: text/xml,application/xml,application/xhtml+xml,text/
html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: https://login.yahoo.com/config/login?
Cookie: B=33f4nh50i49&b=3&s=2a
Content-Type: application/x-www-form-urlencoded
Content-Length: 279
.tries=3&.src=my&.md5=&.hash=&.js=&.last=&promo=&.intl=us&.bypass=&.partner
=&.u=25ub0q1uk6q&.v=0&.challenge=rIt9CsSjzavp3MwrRduDZy&.yplus=
&.emailCode=&pkg=&stepid=&.ev=&hasMsgr=0&.chkP=Y&.done=http%3A%2F%
2Fmy.yahoo.com&.pd=my_ver%23d0&lcgin=XXXXXX&passwd=XXXXXXX
Answer
-------
HTTP/1.x 200 OK
Date: Fri, 13 Oct 2006 08:43:19 GMT
P3P: policyref=“http://p3p.yahoo.com/w3c/p3p.xml”, CP=“CAO DSP COR
CUR ADM DEV TAI PSA PS IVDi CONi TELo OTP DELi SAMi OTRi UNRi PUBi
IND PHY ONL UNI FIN COM NAV INT DEM CNT STA POL HEA PRE GOV”
Cache-Control: private
Pragma: no-cache
Expires: Thu, 05 Jan 1995 22:00:00 GMT
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html
Set-Cookie:
F=a=SrNlnuQsvfC8VdCWs4SKlvdGqBl7owTNi8TC4cs2qNo_EhUT.JexzZ&b=afek;
expires=Thu, 15 Apr 2010 20:00:00 GMT; path=/; domain=.yahoo.com
Set-Cookie: Y=v=l&n=5lon1c961sa&l=90dd4.0jed4d/
o&p=m25kd4012000000&jb=34|26|&r=ge&lg=us&intl=us&np=1; path=/;
domain=.yahoo.com
Set-Cookie: PH=fn=xBi7MUz4jIYIJyBmw-; path=/; domain=.yahoo.com
Set-Cookie: T=z=nG1LFBnMFBGgWHDicYK5A2BjUyNTE1TzU3NTc-
&a=YAE&sk=DAAbx4xUSO.Lm&d=c2wBTlRjeESTFN0RJd01qQS0BYQFZQUUBb2sBWlcw
LQF0aXABVEZKMHlCAXp6AW5UxGQmdXQQ--; path=/; domain=.yahoo.com
Failed login:
=============
Request:
------
POST /config/login? HTTP/1.1
Host: login.yahoo.com
User-Agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US;
rv:1.7.3) Gecko/20040910
Accept: text/xml,application/xml,application/xhtml+xml,text/
html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: https://login.yahoo.com/config/
login_verify2?.page=p1&.partner=&.intl=us&.src=my&.done=http://
my.yahoo.com
Cookie: B=33f4nh52h0i49&b=3&s=2a
Pragma: no-cache
Cache-Control: no-cache
Content-Type: application/x-www-form-urlencoded
Content-Length: 264
.tries=1&.src=my&.md5=&.hash=&.js=&.last=&promo=&.intl=us&.bypass=&.partner
=&.u=25ub0q12iuk6q&.v=0&.challenge=Mk1bieR_zKyeimTiryyrId_3Po&.yplus
=&.emailCode=&pkg=&stepid=&.ev=&hasMsgr=0&.chkP=Y&.done=http%3A%
2F%2Fmy.yahoo.com&.pd=my_ver%253d0&login=foo&passwd=foo
Answer
-------
NTTP/1.x 200 OK
Date: Fri, 13 Oct 2006 08:40:37 GMT
P3P: policyref=“http://p3p.yahoo.com/w3c/p3p.xml”, CP=“CAO DSP COR
CUR ADM DEV PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi
PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV”
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html

On the basis of the response from the server S2, the authentication component 303 updates the group flag status (step S3.9); this group flag status is then subsequently used by the data message modification service according to the second aspect of the invention.

Turning now to aspects of the message modification process, in one arrangement the message modification server S2 is arranged to selectively modify messages based on respective group membership of the sender and recipient; for example, assuming a group to be tagged as sponsored by a particular third party, messages transmitted between group members are modified to include a first type of information, whereas messages transmitted from a group member to a non-group member are modified to include a second type of information. The content of the first and second types of information can be controlled by the sponsor and are preferably related in some way: for example, the first type of information could be a message stating “this message has been sponsored by XYZ”, whereas the second type of information could be a message stating “this message could have been delivered free to you by XYZ if you were a member of group G1”.

Referring to FIG. 4, the message modification server S2 comprises standard processing components together with various bespoke message modifying components; these message modifying components include selecting software 401 and a repository of rules R, each rule specifying a set of group membership conditions and data to select for use in modifying a given message in dependence on the conditions being satisfied (whilst shown as being stored local to the server S2, the rules could be stored in the database DB1 and accessed therefrom by the selecting software 401). The server S2 also includes message modifying software 403 for modifying the incoming message so as to include the selected data, thereafter forwarding the modified messages to the SMSC 16 in accordance with standard methods.

The rules are preferably specified by the group, or by the sponsor of the group, and in one arrangement specify particular tags to apply to a message in the event that the conditions are satisfied. Examples of the conditions include:

Rule Condition(s)

The actions associated with these rules are specified in the form of a billing action and a message modification action. Preferably the message modification actions in respect of at least two of the rules are related: in one embodiment the action (message modification) is identical, but the content of the tags applied to modify the message are different, but related; and in another embodiment the actual actions taken in respect of different rules are different, but related. The actions are stored in the database DB1, in association with a given rule and thus a given group.

For example, the message modification actions applicable in respect of Rules R1 . . . R4 for group G1 could be as follows:

TABLE
Actions for Group G1
Message
Rule Action(s) Modification Tag
R1 Billing Action: A1
Do not debit accounts of sender or This message was
recipient sponsored by “Sponsor”
Message modification actions: for the community G1
Concatenate Tag A1 with name of members
sponsor & add to message received
from sender (to be sent to recipient
only)
Add/Send sponsor-selected message
for G1 (to be added to message to be
sent to recipient; to be sent cold to
sender) [optional]
R2, R3 Billing Action: A2
Debit account of recipient If you joined group G1
Message modification actions: you could benefit from
Concatenate Tag A2 with name of free text messaging
sponsor & add concatenated tag to thanks to “Sponsor”
message received from sender and
send to recipient
Add/Send sponsor-selected message
for G1 (to be added to message to be
sent to recipient; to be sent cold to
sender)
R4 Billing Action: A2 (As above)
Debit account of sender
Message modification actions:
Concatenate Tag A2 with name of
sponsor & send concatenated tag to
sender
Add/Send sponsor-selected message
for G1 (to be added to message to be
sent to sender; to be
added to message
to be sent to recipient) [optional]
R5 Billing Action: A2 (As above)
Debit account of sender &/recipient
Message modification actions:
Concatenate Tag A2 with name of
sponsor, add concatenated tag to
message received from sender and
send to recipient; send concatenated
tag as cold message for sender
Add sponsor-selected message for G1
(to be added to message to be sent to
sender; to be added to message to be
sent to recipient) [optional]

Turning back to FIG. 2, upon receipt of an SMS from a sender (step S203), the selecting software 401 identifies sender and/or recipient information from an incoming message and selects, by accessing the database DB1, the respective group membership(s), together with all associated message modification actions associated therewith (step 204). On the basis of the group memberships, the selecting software 401 identifies and processes one or more applicable rules R1 . . . Rn (step 205) in order to identify billing arrangements for the message and to determine how to modify the incoming message (step 206). After the message has been modified, the modified message is transmitted to the SMSC 16 of the licensed operator (step 207a); thereafter billing instructions are transmitted to the database DB1 for storage therein in respect of the sender/recipient/sponsor (step 207b), consistent with the billing action identified at step 205.

The foregoing can conveniently be explained by way of a couple of examples, firstly for the case where a message M1 is sent from subscriber A to subscriber B, and both A and B are determined to be members of community G1, and for which the sponsor of community G1 is Coke™. In this example the selecting software component 401 selects rule R1, particular to Group G1, which has the following output actions:

This then causes the message M1 to be modified so as to include the branded tag and is sent onto the recipient; since both A and B are members of group G1, neither of their accounts is debited for the message transmission and receipt.

In a second example, message M1 is sent from subscriber A to subscriber B; subscriber A is not a member of any community, but subscriber B is a member of group G1. Assuming for illustrative purposes the sponsor of group G1 again to be Coke™, the following output actions are generated at step 205:

In a third example, message M1 is sent from subscriber A to subscriber B; subscriber A is a member of Group G1, but subscriber B is not a member of the same group G1. Assuming for illustrative purposes the sponsor of group G1 again to be Coke™, the following output actions are generated at step 205:

In the event that both the sender and recipient are members of different groups (e.g. sender is a member of group G1 and recipient is a member of group G2), the inter-group precedence rules mentioned above in relation to rule R6 could include the following conditions:

Shared precedence specifications might include agreed sharing of messaging costs between sponsors of particular groups, so that, in the event that the sponsors of groups G1 and G2 have an inter-group agreement, the costs of transmitting messages are shared between sponsors. In this case, the tag A2 added to messages would alert each party to the existence of the group of which the other party is a member (e.g. if sender A is a member of G1 and recipient B is a member of G2, the tag A2 added to the message sent to A would read “If you joined group G2 you could benefit from free text messaging thanks to “Sponsor2” and the tag added to the message sent to B would read “If you joined group G1 you could benefit from free text messaging thanks to “Sponsor1”).

Implementation Details & Alternatives

The registration software 301, category selection software 303, authentication software 305, selecting software 401 and modifying software 403 are preferably written in the Java programming language. The server S1 could, for example, be an Apache HTTP server, and the proxy message server SMSC1 could be a J2EE JMS Server (see http://openjms.sourceforge.net/). The registration software 301, category selection software 303 and authentication software 305 could be Java™ servlet containers configured to run within a Java platform such as Java 2 Platform Standard Edition v1.4.1 (for further information see resources available from Sun Microsystems™ e.g. at http://java.sun.com/j2se/1.4.1/and http://java.sun.com/products/servlet/index.html). The skilled person will appreciate that the software could be written in any suitable language.

As an alternative to the registration software component 301 sending a web page to the terminal T1, the terminal T1 could have, stored thereon, an application arranged to capture such demographic data (not shown in the Figures). In the case where the subscriber uses his mobile terminal 2 to communicate with the registration server S1, such an application could be stored on a SIM card, which, as is known in the art, is used for the storage and retrieval of data items by the terminal T1. The command set, data file structure and data coding format for data communicated via the interface between the terminal T1 and the SIM processor are all specified, in GSM technical specification 11.11. Alternatively the application could be transmitted to the terminal T1 (or mobile 2) (e.g. via GPRS or Bluetooth) in response to a request received by the server S1 from the terminal T1 and would be of a format suitable for cooperating with the operating system in use on the terminal T1.

Whilst authentication of a given group membership is described as being performed via login-simulation, it will be appreciated that such a method is only possible in relation to groups that are web-based; for other groups (e.g. retail establishments using loyalty cards and the like, where membership of a group can be defined on the basis of subscribers being in possession of a loyalty card and account, neither or which are managed by a user-accessible web service), membership of a given group could be established by sending of an authentication request message by the authentication software component 303 to a service associated with the retail establishment, or on the basis of previously determined authentication data that is retrievable from a third party.

In the above embodiments, message modification is performed by the message modification server S2; however, message modification could instead be performed by a proxy store and forward node (not shown), which is logically distinct from the network operator's SMSC 16. In order to ensure that messages are sent to this proxy SMSC in the first instance (and not to the network operator's SMSC) the mobile terminal 2 would require configuring with details of this proxy e.g. via an Over-The-Air (OTA) SMS settings message. In response, the operating system programs on the terminal 2 automatically configure the default SMSC settings to the network address of the proxy message server. This therefore means that any SMS messages subsequently sent from the terminal 2 will be sent to the proxy message server in the first instance. For further information regarding use of OTA protocol for the delivery of data to a WAP client from a WAP server, the reader is referred to literature available from the WAP Forum Ltd., in particular “Wireless Application Protocol, PUSH OTA Protocol Specification”, published 16 Aug. 1999, available from http://www.wapforum.org/what/technical/PROP-PushOTA-19990816.pdf.

As a further alternative, the message modification process could be performed by the network operator's SMSC 16.

Whilst the above embodiments describe the messages originating from a terminal 2, the messages could instead originate from a service that may or may not also be responsible for performing modification of the message. For example such a service could include an Internet service configured to send SMS messages; group records would be created for the service as described above and accessed subsequent to, or in parallel with, message creation so as to modify the message.

Whilst the above embodiments describe transmitting messages within a mobile communications network, it is to be understood that messages can originate from and be transmitted, wholly or at least in part, within a fixed network such as the Internet.

The above embodiments are to be understood as illustrative examples of the invention. It is to be understood that any feature described in relation to any one embodiment may be used alone, or in combination with other features described, and may also be used in combination with one or more features of any other of the embodiments, or any combination of any other of the embodiments. Furthermore, equivalents and modifications not described above may also be employed without departing from the scope of the invention, which is defined in the accompanying claims.

Aaltonen, Janne, Kalliola, Janne, Brummer, Markku

Patent Priority Assignee Title
11005867, Jun 14 2018 CA, INC Systems and methods for tuning application network behavior
11836784, Mar 31 2014 Monticello Enterprises LLC System and method for providing a search entity-based payment process
11842380, Mar 31 2014 Monticello Enterprises LLC System and method for providing a social media shopping experience
8971946, May 11 2011 TiKL, Inc. Privacy control in push-to-talk
Patent Priority Assignee Title
5408519, Jan 19 1993 ITELSA, INC Telecommunications system having a local area network with concurrently processing nodes
5613213, Mar 31 1994 MOTOROLA SOLUTIONS, INC Determining and displaying available services for a communication unit
5678179, Oct 31 1994 Telefonaktiebolaget LM Ericsson Message transmission system and method for a radiocommunication system
5974398, Apr 11 1997 TWITTER, INC Method and apparatus enabling valuation of user access of advertising carried by interactive information and entertainment services
5978775, Dec 08 1993 THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT Information distribution system using telephone network and telephone company billing service
5978833, Dec 31 1996 Intel Corporation Method and apparatus for accessing and downloading information from the internet
6006197, Apr 20 1998 GEN DIGITAL INC System and method for assessing effectiveness of internet marketing campaign
6009410, Oct 16 1997 AT&T Corp Method and system for presenting customized advertising to a user on the world wide web
6015344, Apr 05 1996 SG GAMING, INC Prize redemption system for games
6023700, Jun 17 1997 OATH INC Electronic mail distribution system for integrated electronic communication
6057872, Jul 09 1997 General Instrument Corporation Digital coupons for pay televisions
6097942, Sep 18 1997 Telefonaktiebolaget LM Ericsson Method and apparatus for defining and updating mobile services based on subscriber groups
6202086, Nov 12 1996 Matsushita Electric Industrial Co., Ltd. Message store and forward system
6286005, Mar 11 1998 NIELSEN COMPANY US , LLC , THE Method and apparatus for analyzing data and advertising optimization
6334145, Jun 30 1998 International Business Machines Corporation Method of storing and classifying selectable web page links and sublinks thereof to a predetermined depth in response to a single user input
6345279, Apr 23 1999 SINOEAST CONCEPT LIMITED Methods and apparatus for adapting multimedia content for client devices
6381465, Aug 27 1999 Intel Corporation System and method for attaching an advertisement to an SMS message for wireless transmission
6446261, Dec 20 1996 DISNEY ENTERPRISES, INC Set top device for targeted electronic insertion of indicia into video
6564261, May 10 1999 Telefonaktiebolaget LM Ericsson Distributed system to intelligently establish sessions between anonymous users over various networks
6598228, May 26 1999 Virentem Ventures, LLC Method and apparatus for controlling time-scale modification during multi-media broadcasts
6647269, Aug 07 2000 GOOGLE LLC Method and system for analyzing advertisements delivered to a mobile unit
6684249, May 26 2000 BENHOV GMBH, LLC Method and system for adding advertisements over streaming audio based upon a user profile over a world wide area network of computers
6698020, Jun 15 1998 Microsoft Technology Licensing, LLC Techniques for intelligent video ad insertion
6718551, Jan 06 1997 ALPHONSO INC Method and system for providing targeted advertisements
6820204, Mar 31 1999 ZKEY INVESTMENTS LLC System and method for selective information exchange
6889054, Mar 29 2001 Yahoo Ad Tech LLC Method and system for schedule based advertising on a mobile phone
6920326, Dec 05 2000 WSOU Investments, LLC Method and apparatus for restricting call terminations when a mobile unit is roaming
7039599, Jun 16 1997 GOOGLE LLC Method and apparatus for automatic placement of advertising
7072947, Nov 06 2001 XANT, INC Method and system for monitoring e-mail and website behavior of an e-mail recipient
7076445, Jun 20 2000 GAMETEK LLC System and methods for obtaining advantages and transacting the same in a computer gaming environment
7136871, Nov 21 2001 ZHIGU HOLDINGS LIMITED Methods and systems for selectively displaying advertisements
7149537, Feb 12 2002 CELLCO PARTNERSHIP D B A VERIZON WIRELESS; CELLCO PATNERSHIP D B A VERIZON WIRELESS Method and system for generating a user-accessible internet-based mobile messaging log
7155243, Jun 15 2004 TEKELEC GLOBAL, INC Methods, systems, and computer program products for content-based screening of messaging service messages
7200633, Aug 25 2000 NTT DoCoMo, Inc Information delivery system and information delivery method
7263535, May 21 2002 ATLASSIAN US, INC Resource list management system
7280818, May 28 2004 AT&T MOBILITY II LLC Mobile device notification with opinions
7280979, Mar 11 1998 West Corporation Methods and apparatus for intelligent, purpose-based selection of goods and services in telephonic and electronic commerce
7346630, Jun 13 2003 YAHOO ASSETS LLC Method and system for delivery alerts to a user
7386485, Jun 25 2004 West Corporation Method and system for providing offers in real time to prospective customers
7558559, Jul 15 2002 AT&T Intellectual Property I, L P Systems and methods for a wireless messaging information service
7660859, Aug 15 2005 Microsoft Technology Licensing, LLC Tracking of electronic mail messages
7730017, Mar 30 2007 GOOGLE LLC Open profile content identification
7730149, Nov 02 2006 Apple Inc Interactive communications system
7734632, Oct 28 2005 Disney Enterprises, Inc. System and method for targeted ad delivery
7774419, Nov 02 2006 Apple Inc Interactive communications system
7856413, Oct 14 2004 International Business Machines Corporation Dynamic search criteria on a search graph
7873708, Apr 28 2004 AT&T MOBILITY II LLC Systems and methods for providing mobile advertising and directory assistance services
7925283, Apr 11 2000 TeleCommunication Systems, Inc. Intelligent delivery agent for short message distribution center
7933799, Jun 12 2007 Apple Inc Method and system for payment and/or issuance of credits via a mobile device
7974988, Feb 24 2006 SYNIVERSE ICX, LLC System and method for cross-carrier mobile device capability discovery
7979314, Aug 25 2000 III Holdings 1, LLC Method and apparatus for obtaining consumer product preferences through interactive product selection and evaluation
8046810, Apr 07 2006 RPX Corporation Method and apparatus for delivering subscription service content to roaming users
8086476, Aug 03 2005 LVK, LLC Method for directed advertising and information distribution using a wireless communications network
8099325, May 01 2002 Saytam computer Services Limited System and method for selective transmission of multimedia based on subscriber behavioral model
8099490, Aug 07 2003 Telcordia Operations Limited Server for determining and storing mobile device capability data
20010047272,
20010051925,
20020004743,
20020026356,
20020029249,
20020032602,
20020046341,
20020052788,
20020077130,
20020083411,
20020099842,
20020111177,
20020128908,
20020137507,
20020138291,
20020138400,
20020161770,
20030003935,
20030023489,
20030028597,
20030032409,
20030037103,
20030040297,
20030040300,
20030083931,
20030126079,
20030154300,
20030182567,
20030188017,
20030191689,
20030197719,
20030220946,
20040003398,
20040019637,
20040043777,
20040054576,
20040068435,
20040103157,
20040107256,
20040128353,
20040133480,
20040136358,
20040158612,
20040158858,
20040185883,
20040192359,
20040203761,
20040203851,
20040204133,
20040209649,
20040240649,
20040254993,
20040254994,
20040259526,
20050004840,
20050010641,
20050033700,
20050060425,
20050119936,
20050125397,
20050160165,
20050170856,
20050192008,
20050228739,
20050233776,
20050249216,
20050273833,
20050281237,
20050289113,
20060031164,
20060031327,
20060041470,
20060053208,
20060053225,
20060075425,
20060095511,
20060123014,
20060129455,
20060141923,
20060161599,
20060168616,
20060190331,
20060194595,
20060200460,
20060200461,
20060206586,
20060212583,
20060240850,
20060253327,
20060276170,
20060276213,
20060282328,
20060286963,
20060286964,
20060288124,
20070004333,
20070004380,
20070011344,
20070027760,
20070033104,
20070047523,
20070061195,
20070066295,
20070072631,
20070074262,
20070083602,
20070088687,
20070088801,
20070088851,
20070094066,
20070100653,
20070100805,
20070105536,
20070113243,
20070117571,
20070136457,
20070149208,
20070174295,
20070192409,
20070214470,
20070226097,
20070260624,
20070288950,
20070290787,
20080004046,
20080013537,
20080032703,
20080032717,
20080057920,
20080065491,
20080070579,
20080071875,
20080071929,
20080082686,
20080086369,
20080091796,
20080109519,
20080140508,
20080215436,
20080228568,
20080235342,
20080243619,
20080244024,
20080249832,
20080271068,
20080319836,
20090006194,
20090029721,
20090049090,
20090063249,
20090106111,
20090125377,
20090132395,
20090141875,
20090197619,
20090216847,
20090275315,
20090286520,
20090298483,
20100010887,
20100082397,
20100082423,
20100088152,
20100114654,
20100125505,
20100138271,
20100161424,
20100169157,
20100169176,
DE10061984,
DE19941461,
EP831629,
EP1043905,
EP1073293,
EP1107137,
EP1109371,
EP1161093,
EP1182845,
EP1193955,
EP1195701,
EP1220132,
EP1239392,
EP1239395,
EP1253542,
EP1298945,
EP1303107,
EP1324250,
EP1365604,
EP1408705,
EP1455511,
EP1509024,
EP1542482,
EP1587332,
EP1594287,
EP1613102,
EP1615455,
EP1633100,
EP1677475,
FR2867931,
GB2343051,
GB2352856,
GB2356777,
GB2369218,
GB2383149,
GB2386509,
GB2406996,
GB2407002,
GB2414621,
GB2416887,
GB2424546,
JP2002140272,
JP2007087138,
JP2007199821,
WO70848,
WO131497,
WO155892,
WO158178,
WO165411,
WO171949,
WO172063,
WO177840,
WO178425,
WO191400,
WO193551,
WO197539,
WO2059720,
WO2069651,
WO2075574,
WO2080595,
WO2086664,
WO209431,
WO2100121,
WO235324,
WO244834,
WO250632,
WO3038638,
WO3049461,
WO3058458,
WO3073304,
WO2004034671,
WO2004054205,
WO2004057578,
WO2004084532,
WO2004093044,
WO2004114109,
WO2005015806,
WO2005020578,
WO2005062637,
WO2006011164,
WO2006016189,
WO2006026505,
WO2006040749,
WO2006093284,
WO2006105202,
WO2006110446,
WO2007001118,
WO2007031708,
WO2007056698,
WO2008024852,
WO2008045867,
WO2008053062,
WO2008147919,
WO2009009507,
WO2009061914,
WO2009077888,
WO2009099876,
WO2009158097,
WO8910610,
WO9624213,
WO9733421,
WO9837685,
WO44151,
WO122748,
WO131497,
WO152161,
WO157705,
WO158178,
WO165411,
WO169406,
WO171949,
WO172063,
WO191400,
WO193551,
WO197539,
WO2054803,
WO2069585,
WO2069651,
WO2075574,
WO2084895,
WO231624,
WO3015430,
WO3019845,
WO3024136,
WO3049461,
WO3088690,
WO2004086791,
WO2004100470,
WO2004100521,
WO2004102993,
WO2004104867,
WO2005029769,
WO2005076650,
WO2006002869,
WO2006005001,
WO2006016189,
WO2006027407,
WO2006040749,
WO2006093284,
WO2006119481,
WO2008013437,
WO2008045867,
WO2008147919,
WO9624213,
//////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Mar 23 2007AALTONEN, JANNEBLYK SERVICES OYASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0197190948 pdf
Apr 26 2007BLYK SERVICES OYCvon Innovations LimitedASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0197460234 pdf
May 08 2007KALLIOLA, JANNEBLYK SERVICES OYASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0197190948 pdf
May 15 2007BRUMMER, MARKKUBLYK SERVICES OYASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0197190948 pdf
Aug 02 2007Apple Inc.(assignment on the face of the patent)
Nov 30 2010Cvon Innovations LimitedApple IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0264680166 pdf
Date Maintenance Fee Events
Mar 01 2013ASPN: Payor Number Assigned.
Sep 15 2016M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Sep 10 2020M1552: Payment of Maintenance Fee, 8th Year, Large Entity.


Date Maintenance Schedule
Mar 26 20164 years fee payment window open
Sep 26 20166 months grace period start (w surcharge)
Mar 26 2017patent expiry (for year 4)
Mar 26 20192 years to revive unintentionally abandoned end. (for year 4)
Mar 26 20208 years fee payment window open
Sep 26 20206 months grace period start (w surcharge)
Mar 26 2021patent expiry (for year 8)
Mar 26 20232 years to revive unintentionally abandoned end. (for year 8)
Mar 26 202412 years fee payment window open
Sep 26 20246 months grace period start (w surcharge)
Mar 26 2025patent expiry (for year 12)
Mar 26 20272 years to revive unintentionally abandoned end. (for year 12)