Alex Auvolat
62dae5a0a2
so that a serialized client object can be passed, bypassing the need to re-login at each restart
61 lines
1.3 KiB
Go
61 lines
1.3 KiB
Go
package external
|
|
|
|
import (
|
|
"os"
|
|
|
|
. "git.deuxfleurs.fr/Deuxfleurs/easybridge/connector"
|
|
)
|
|
|
|
const DUMMYEXT_PROTOCOL = "DummyExt"
|
|
const MESSENGER_PROTOCOL = "Messenger"
|
|
|
|
func init() {
|
|
Register(DUMMYEXT_PROTOCOL, Protocol{
|
|
NewConnector: func() Connector {
|
|
return &External{
|
|
protocol: DUMMYEXT_PROTOCOL,
|
|
command: "./external/dummy.py",
|
|
debug: true,
|
|
}
|
|
},
|
|
Schema: ConfigSchema{
|
|
&ConfigEntry{
|
|
Name: "user",
|
|
Description: "Username",
|
|
Required: true,
|
|
},
|
|
},
|
|
})
|
|
|
|
Register(MESSENGER_PROTOCOL, Protocol{
|
|
NewConnector: func() Connector {
|
|
return &External{
|
|
protocol: MESSENGER_PROTOCOL,
|
|
command: "./external/messenger.py",
|
|
debug: (os.Getenv("EASYBRIDGE_MESSENGER_DEBUG") == "true"),
|
|
}
|
|
},
|
|
Schema: ConfigSchema{
|
|
&ConfigEntry{
|
|
Name: "email",
|
|
Description: "Email address",
|
|
Required: true,
|
|
},
|
|
&ConfigEntry{
|
|
Name: "password",
|
|
Description: "Password",
|
|
IsPassword: true,
|
|
},
|
|
&ConfigEntry{
|
|
Name: "client_pickle",
|
|
Description: "Client pickle (alternative login method)",
|
|
},
|
|
&ConfigEntry{
|
|
Name: "initial_backlog",
|
|
Description: "Maximum number of messages to load when joining a channel",
|
|
IsNumeric: true,
|
|
Default: "100",
|
|
},
|
|
},
|
|
})
|
|
}
|