Instant Messaging Client Extensibility via Common Interface
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current Instant Messaging (IM) systems lack extensibility and are costly to maintain due to the need for frequent updates and re-installation of IM clients when new additional services are introduced, as they require modifying the client to support new services.
Innovation Solution
Implementing an IM system with a common interface between the IM client and components that allows the IM client to trigger IM components to query user identities and subscribe to additional services, reducing the need for client modifications by enabling the addition or update of IM components independently.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the IM client is modified to support new additional services, then the IM client can query and support new services, but the development and maintenance workload increases and user re-installation is required
Solution Approach 1:
The system is divided into the IM client and separate IM components (plugins) that can be independently developed, maintained, and updated. Each additional service is implemented as a separate IM component that interacts with the client through a common interface, allowing the client itself to remain unchanged while supporting new services through component additions.
Solution Approach 2:
The IM client is designed with a universal common interface that can work with multiple different IM components supporting various additional services. This allows the single client to provide multiple functions by loading different components, eliminating the need to modify the client for each new service.
2Adaptability or versatility
If the IM client is modified to support new additional services, then the IM client can query whether IM friends subscribe to new services, but user re-installation is required which is inconvenient
Solution Approach 1:
By separating the IM client from the additional service components, users can install, update, or remove specific services without affecting the core client or requiring re-installation. Each service component is independent and can be managed separately, improving user convenience.
3Loss of information
If the IM client queries IM friends' service subscriptions individually for each service, then service subscription status can be determined, but the process is inefficient and lacks extensibility
Solution Approach 1:
The common interface provides universal querying capabilities that work with all IM components regardless of which specific additional service they support. This allows the system to efficiently query service subscription information without requiring separate individual query mechanisms for each service, improving both efficiency and extensibility.
Data Source
AI summary
An IM system for an additional service includes: an IM client and at least one IM component adapted to support at least one additional service, between which a common interface is configured. The IM client triggers the at least one IM component via the common interface when a local IM user logs on; and the at least one IM component obtains an identity of at least one IM user other than the local IM user via the common interface, and query, according to the identity, whether the at least one IM user subscribes to one of the at least one additional service supported by the at least one IM component. A component and method for an additional service are also provided. By utilizing the IM system, component and method, extensibility of the IM system can be improved, and costs for extending the IM system can be reduced.


