connector

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 16, 2025 License: AGPL-3.0 Imports: 44 Imported by: 0

Documentation

Index

Constants

View Source
const MaxTextLength = 10000

Variables

View Source
var (
	LoginStepIDCookies  = "fi.mau.twitter.login.enter_cookies"
	LoginStepIDComplete = "fi.mau.twitter.login.complete"
)
View Source
var ExampleConfig string

Functions

func MakeMediaID added in v0.4.2

func MakeMediaID(userID networkid.UserLoginID, URL string) networkid.MediaID

func MakeUserID added in v0.4.0

func MakeUserID(userID string) networkid.UserID

func MakeUserLoginID added in v0.4.0

func MakeUserLoginID(userID string) networkid.UserLoginID

func ParseUserID added in v0.4.0

func ParseUserID(userID networkid.UserID) string

func ParseUserLoginID added in v0.4.0

func ParseUserLoginID(userID networkid.UserLoginID) string

func UserIDToUserLoginID added in v0.4.0

func UserIDToUserLoginID(userID networkid.UserID) networkid.UserLoginID

func UserLoginIDToUserID added in v0.4.0

func UserLoginIDToUserID(userID networkid.UserLoginID) networkid.UserID

Types

type Config

type Config struct {
	Proxy       string `yaml:"proxy"`
	GetProxyURL string `yaml:"get_proxy_url"`

	DisplaynameTemplate   string `yaml:"displayname_template"`
	ConversationSyncLimit int    `yaml:"conversation_sync_limit"`
	CacheSession          bool   `yaml:"cache_session"`

	X bool `yaml:"x"`
	// contains filtered or unexported fields
}

func (*Config) FormatDisplayname

func (c *Config) FormatDisplayname(username string, displayname string) string

func (*Config) PostProcess added in v0.2.1

func (c *Config) PostProcess() error

func (*Config) UnmarshalYAML

func (c *Config) UnmarshalYAML(node *yaml.Node) error

type DisplaynameParams

type DisplaynameParams struct {
	Username    string
	DisplayName string
}

type MediaInfo added in v0.4.2

type MediaInfo struct {
	UserID networkid.UserLoginID
	URL    string
}

func ParseMediaID added in v0.4.2

func ParseMediaID(mediaID networkid.MediaID) (*MediaInfo, error)

type MessageMetadata added in v0.4.0

type MessageMetadata struct {
	EditCount int `json:"edit_count,omitempty"`
}

type PushKeys

type PushKeys struct {
	P256DH  []byte `json:"p256dh"`
	Auth    []byte `json:"auth"`
	Private []byte `json:"private"`
}

type TwitterClient

type TwitterClient struct {
	// contains filtered or unexported fields
}

func NewTwitterClient

func NewTwitterClient(login *bridgev2.UserLogin, connector *TwitterConnector, client *twittermeow.Client) *TwitterClient

func (*TwitterClient) Connect

func (tc *TwitterClient) Connect(ctx context.Context)

func (*TwitterClient) Disconnect

func (tc *TwitterClient) Disconnect()

func (*TwitterClient) DoConnect added in v0.4.3

func (tc *TwitterClient) DoConnect(ctx context.Context, inboxState *response.InboxInitialStateResponse)

func (*TwitterClient) FetchMessages

func (*TwitterClient) GetCapabilities

func (tc *TwitterClient) GetCapabilities(_ context.Context, _ *bridgev2.Portal) *event.RoomFeatures

func (*TwitterClient) GetChatInfo

func (tc *TwitterClient) GetChatInfo(ctx context.Context, portal *bridgev2.Portal) (*bridgev2.ChatInfo, error)

func (*TwitterClient) GetPushConfigs

func (tc *TwitterClient) GetPushConfigs() *bridgev2.PushConfig

func (*TwitterClient) GetUserInfo

func (tc *TwitterClient) GetUserInfo(_ context.Context, ghost *bridgev2.Ghost) (*bridgev2.UserInfo, error)

func (*TwitterClient) HandleCursorChange added in v0.5.0

func (tc *TwitterClient) HandleCursorChange(ctx context.Context)

func (*TwitterClient) HandleMatrixEdit

func (tc *TwitterClient) HandleMatrixEdit(ctx context.Context, edit *bridgev2.MatrixEdit) error

func (*TwitterClient) HandleMatrixMessage

func (tc *TwitterClient) HandleMatrixMessage(ctx context.Context, msg *bridgev2.MatrixMessage) (message *bridgev2.MatrixMessageResponse, err error)

func (*TwitterClient) HandleMatrixReaction

func (tc *TwitterClient) HandleMatrixReaction(ctx context.Context, msg *bridgev2.MatrixReaction) (reaction *database.Reaction, err error)

func (*TwitterClient) HandleMatrixReactionRemove

func (tc *TwitterClient) HandleMatrixReactionRemove(ctx context.Context, msg *bridgev2.MatrixReactionRemove) error

func (*TwitterClient) HandleMatrixReadReceipt

func (tc *TwitterClient) HandleMatrixReadReceipt(ctx context.Context, msg *bridgev2.MatrixReadReceipt) error

func (*TwitterClient) HandleMatrixTyping

func (tc *TwitterClient) HandleMatrixTyping(ctx context.Context, msg *bridgev2.MatrixTyping) error

func (*TwitterClient) HandleMatrixViewingChat added in v0.4.1

func (tc *TwitterClient) HandleMatrixViewingChat(ctx context.Context, chat *bridgev2.MatrixViewingChat) error

func (*TwitterClient) HandleStreamEvent added in v0.4.1

func (tc *TwitterClient) HandleStreamEvent(evt response.StreamEvent)

func (*TwitterClient) HandleTwitterEvent

func (tc *TwitterClient) HandleTwitterEvent(rawEvt types.TwitterEvent, inbox *response.TwitterInboxData) bool

func (*TwitterClient) IsLoggedIn

func (tc *TwitterClient) IsLoggedIn() bool

func (*TwitterClient) IsThisUser

func (tc *TwitterClient) IsThisUser(_ context.Context, userID networkid.UserID) bool

func (*TwitterClient) LogoutRemote

func (tc *TwitterClient) LogoutRemote(ctx context.Context)

func (*TwitterClient) MakeEventSender added in v0.4.0

func (tc *TwitterClient) MakeEventSender(userID string) bridgev2.EventSender

func (*TwitterClient) MakePortalKey

func (tc *TwitterClient) MakePortalKey(conv *types.Conversation) networkid.PortalKey

func (*TwitterClient) MakePortalKeyFromID

func (tc *TwitterClient) MakePortalKeyFromID(conversationID string) networkid.PortalKey

func (*TwitterClient) PreHandleMatrixReaction

func (*TwitterClient) RegisterPushNotifications

func (tc *TwitterClient) RegisterPushNotifications(ctx context.Context, pushType bridgev2.PushType, token string) error

func (*TwitterClient) ResolveIdentifier

func (tc *TwitterClient) ResolveIdentifier(ctx context.Context, identifier string, startChat bool) (*bridgev2.ResolveIdentifierResponse, error)

type TwitterConnector

type TwitterConnector struct {
	Config Config
	// contains filtered or unexported fields
}

func (*TwitterConnector) CreateLogin

func (tc *TwitterConnector) CreateLogin(_ context.Context, user *bridgev2.User, flowID string) (bridgev2.LoginProcess, error)

func (*TwitterConnector) Download added in v0.4.2

func (tc *TwitterConnector) Download(ctx context.Context, mediaID networkid.MediaID, params map[string]string) (mediaproxy.GetMediaResponse, error)

func (*TwitterConnector) GenerateTransactionID added in v0.4.1

func (tc *TwitterConnector) GenerateTransactionID(userID id.UserID, roomID id.RoomID, eventType event.Type) networkid.RawTransactionID

func (*TwitterConnector) GetBridgeInfoVersion added in v0.2.1

func (tc *TwitterConnector) GetBridgeInfoVersion() (info, caps int)

func (*TwitterConnector) GetCapabilities

func (tc *TwitterConnector) GetCapabilities() *bridgev2.NetworkGeneralCapabilities

func (*TwitterConnector) GetConfig

func (tc *TwitterConnector) GetConfig() (string, any, up.Upgrader)

func (*TwitterConnector) GetDBMetaTypes

func (tc *TwitterConnector) GetDBMetaTypes() database.MetaTypes

func (*TwitterConnector) GetLoginFlows

func (tc *TwitterConnector) GetLoginFlows() []bridgev2.LoginFlow

func (*TwitterConnector) GetName

func (tc *TwitterConnector) GetName() bridgev2.BridgeName

func (*TwitterConnector) Init

func (tc *TwitterConnector) Init(bridge *bridgev2.Bridge)

func (*TwitterConnector) LoadUserLogin

func (tc *TwitterConnector) LoadUserLogin(ctx context.Context, login *bridgev2.UserLogin) error

func (*TwitterConnector) SetUseDirectMedia added in v0.4.2

func (tc *TwitterConnector) SetUseDirectMedia()

func (*TwitterConnector) Start

func (tc *TwitterConnector) Start(_ context.Context) error

type TwitterLogin

type TwitterLogin struct {
	User    *bridgev2.User
	Cookies string
	// contains filtered or unexported fields
}

func (*TwitterLogin) Cancel

func (t *TwitterLogin) Cancel()

func (*TwitterLogin) Start

func (*TwitterLogin) SubmitCookies

func (t *TwitterLogin) SubmitCookies(ctx context.Context, cookies map[string]string) (*bridgev2.LoginStep, error)

type UserLoginMetadata

type UserLoginMetadata struct {
	Cookies  string    `json:"cookies"`
	PushKeys *PushKeys `json:"push_keys,omitempty"`

	Session *twittermeow.CachedSession `json:"session,omitempty"`
}

func (*UserLoginMetadata) GeneratePushKeys

func (m *UserLoginMetadata) GeneratePushKeys()

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL