Move text to own package.
parent
913ae8e10b
commit
5695493e56
|
@ -0,0 +1,24 @@
|
|||
package txt
|
||||
|
||||
const (
|
||||
CommandHelp = "!help"
|
||||
CommandState = "!state"
|
||||
CommandClose = "!closed"
|
||||
|
||||
StateUnknown = "Ich weiß leider nicht ob der Space offen ist."
|
||||
StateOpen = "Space ist OFFEN."
|
||||
StateClosed = "Space ist zu."
|
||||
|
||||
TransitionToOpen = "Space ist jetzt OFFEN!"
|
||||
TransitionToClosed = "Space ist jetzt ZU!"
|
||||
|
||||
HelpMessage = `Spacebot hat folgende Kommandos:
|
||||
|
||||
!help - Diese Nachricht.
|
||||
!state - Ist der Space offen?
|
||||
!closed - Space ist zu.
|
||||
|
||||
Gern geschehen.`
|
||||
|
||||
ErrorNonPublic = "Bitte mach das öffentlich, damit jeder weiß von wem die Information ist."
|
||||
)
|
41
xmpp/xmpp.go
41
xmpp/xmpp.go
|
@ -9,29 +9,10 @@ import (
|
|||
"time"
|
||||
|
||||
"git.hacknology.de/projekte/spaceapi"
|
||||
"git.hacknology.de/projekte/spaceapi/txt"
|
||||
"github.com/mattn/go-xmpp"
|
||||
)
|
||||
|
||||
const (
|
||||
commandHelp = "!help"
|
||||
commandState = "!state"
|
||||
commandClose = "!closed"
|
||||
|
||||
helpMessage = `Spacebot hat folgende Kommandos:
|
||||
|
||||
!help - Diese Nachricht.
|
||||
!state - Ist der Space offen?
|
||||
!closed - Space ist zu.
|
||||
|
||||
Gern geschehen.`
|
||||
|
||||
errorNonPublic = "Bitte mach das öffentlich, damit jeder weiß von wem die Information ist."
|
||||
|
||||
stateUnknown = "Ich weiß leider nicht ob der Space offen ist."
|
||||
stateOpen = "Space ist OFFEN."
|
||||
stateClosed = "Space ist zu."
|
||||
)
|
||||
|
||||
// Listener returns a storage listener that broadcasts changes in the state to an XMPP MUC.
|
||||
func Listener(storage *spaceapi.Storage, jid, password, target, handle string) (spaceapi.Listener, error) {
|
||||
xmppHost, err := lookupHost(jid)
|
||||
|
@ -63,9 +44,9 @@ func Listener(storage *spaceapi.Storage, jid, password, target, handle string) (
|
|||
return
|
||||
}
|
||||
|
||||
msg := "Space ist jetzt OFFEN!"
|
||||
msg := txt.TransitionToOpen
|
||||
if !*new.State.Open {
|
||||
msg = "Space ist jetzt ZU!"
|
||||
msg = txt.TransitionToClosed
|
||||
}
|
||||
|
||||
sendChan <- msg
|
||||
|
@ -121,20 +102,20 @@ func clientLoop(storage *spaceapi.Storage, sendChan <-chan string, clientOpts xm
|
|||
|
||||
func handleMessage(storage *spaceapi.Storage, client *xmpp.Client, target string, chat xmpp.Chat) error {
|
||||
switch chat.Text {
|
||||
case commandHelp:
|
||||
if err := sendMessage(client, chat.Remote, helpMessage); err != nil {
|
||||
case txt.CommandHelp:
|
||||
if err := sendMessage(client, chat.Remote, txt.HelpMessage); err != nil {
|
||||
return fmt.Errorf("error sending reply: %s", err)
|
||||
}
|
||||
case commandState:
|
||||
case txt.CommandState:
|
||||
state := storage.Status().State
|
||||
msg := stateUnknown
|
||||
msg := txt.StateUnknown
|
||||
|
||||
if state.Open != nil {
|
||||
switch *state.Open {
|
||||
case true:
|
||||
msg = stateOpen
|
||||
msg = txt.StateOpen
|
||||
case false:
|
||||
msg = stateClosed
|
||||
msg = txt.StateClosed
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -148,9 +129,9 @@ func handleMessage(storage *spaceapi.Storage, client *xmpp.Client, target string
|
|||
if err := sendFunc(client, replyTarget, msg); err != nil {
|
||||
return fmt.Errorf("error sending reply: %s", err)
|
||||
}
|
||||
case commandClose:
|
||||
case txt.CommandClose:
|
||||
if chat.Type != "groupchat" {
|
||||
if err := sendMessage(client, chat.Remote, errorNonPublic); err != nil {
|
||||
if err := sendMessage(client, chat.Remote, txt.ErrorNonPublic); err != nil {
|
||||
return fmt.Errorf("error sending reply: %s", err)
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue