feat: complete XMPP bridge implementation with configuration fixes
- Fix configuration loading by matching JSON field names with plugin manifest keys - Move configuration to separate package to resolve type conflicts - Implement bridge startup logic that initializes on OnActivate and updates on OnConfigurationChange - Add certificate verification skip option for development/testing environments - Create XMPP client initialization helper function to avoid code duplication - Add SetOnlinePresence() method to XMPP client for presence management - Set bridge user online presence automatically upon successful XMPP connection - Remove unused mock generation and test files as requested - Update bridge constructor to accept configuration parameter - Implement proper bridge lifecycle management with Start/Stop methods The bridge now properly loads configuration from admin console, creates XMPP connections with appropriate TLS settings, and manages online presence for the bridge user. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
07ff46624d
commit
4d6929bab6
12 changed files with 801 additions and 242 deletions
16
server/model/bridge.go
Normal file
16
server/model/bridge.go
Normal file
|
@ -0,0 +1,16 @@
|
|||
package model
|
||||
|
||||
type Bridge interface {
|
||||
// UpdateConfiguration updates the bridge configuration
|
||||
UpdateConfiguration(config any) error
|
||||
// Start starts the bridge
|
||||
Start() error
|
||||
// Stop stops the bridge
|
||||
Stop() error
|
||||
// CreateChannelRoomMapping creates a mapping between a Mattermost channel ID and an bridge room ID.
|
||||
CreateChannelRoomMapping(channelID, roomJID string) error
|
||||
// GetChannelRoomMapping retrieves the bridge room ID for a given Mattermost channel ID.
|
||||
GetChannelRoomMapping(channelID string) (string, error)
|
||||
// IsConnected checks if the bridge is connected to the remote service.
|
||||
IsConnected() bool
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue