Multi-party messaging is a service offered by mobile telecommunications systems. Such systems may be known as “group chat” or “group messaging” systems and are analogous to audio or video conferencing systems, but utilise text or multimedia messages rather than live audio or video.
In a multi-party messaging system groups are defined. Each user in a group can send a message to a central destination and that message is distributed to all members of the group. Such an approach is convenient for users as they do not have to ensure all recipients are in the address list for a message as is the case when using “reply all” functionality to maintain a group conversation. Multi-party messaging systems may be provided using SMS or MMS messaging systems, or any other messaging system which allows the exchange of messages. Multi-party messaging system may also allow files to be shared amongst the group.
A computing system, which may be known as a group messaging server, may be provided by a mobile network provider to provide functions to set up and manage members of groups, and to distribute messages to members of the groups. Such a system may be provided as part of the telecommunications system or as a separate system connected to the telecommunications system.
Multi-party messaging systems can be used by users of a diverse range of mobile networks and not all members of a group chat may be users of the mobile network which is providing the group messaging server. Conventional billing arrangements between mobile network operators are that the network terminating a message charges the network originating the message on a per-message basis. These are typically known as interconnect charges. Group messaging systems can involve the transmission of large numbers of messages because each message sent by a user to a group results in that message being duplicated to many recipients. A large amount of data is thus generated to ensure messaging is correctly charged, which data must also be transmitted between networks to reconcile services provided between the two networks.
FIG. 1 shows a schematic diagram of three mobile telecommunications networks, N1, N2, N3. Mobile network N1 is providing a group messaging server 100 which is hosting a group chat involving user A in network N1, users B & C in network N2, and users D & E in network N3. User B may send a first message 101 to the group messaging server 100. The group messaging server then transmits this message to each of the users A, C, D, and E in the group chat as shown by messages 102-105. Messages 101, and 103-105 are transmitted between different mobile networks and are known as interconnect messages.
A complex situation now exists for billing data which requires the storage and processing of large amounts of data even with regard to this simple example. Network N1 must store information representing (1) one incoming and one outgoing message with network N2, (2) two outgoing messages to network N3, and (3) one internal message within network N1. One message to a small, simple, group has thus resulted in the need to store at least 5 sets of data representing messages in two directions between three different networks, and to transmit and receive such data between those networks to facilitate payment reconciliation. This data is generated for every message sent in every group chat. Since there may be large numbers of messages sent in each group chat, and a large number of users within each group, the amount of data transmitted between networks to manage this can be very large.
Such per-message charging systems also gives the potential for fraud. If user B of network N2 invites a large number of contacts from network N2 to join the group, each message sent by user B to the group may result in a payment from network N1 to network N2 for terminating the forwarded messages sent from the group messaging server 100 in network N1 to the users in network N2, compared to only a single message from network N2 to N1. A user of network N2 can thus affect the payments due by network N1 to network N2.
There is thus a need for a system to reduce data storage and transmission, and avoid fraudulent activity.