6c6284b383
`jserver` and `port` might not be necessary. Thanks [1] for pointing this out. [1] https://www.momi.ca/posts/2020-08-28-sendxmpp.html |
||
---|---|---|
man | ||
vendor | ||
.gitignore | ||
go-sendxmpp.go | ||
go.mod | ||
go.sum | ||
httpupload.go | ||
jid.go | ||
LICENSE | ||
LICENSE-mellium | ||
README.md |
go-sendxmpp
about
A little tool to send messages to an XMPP contact or MUC inspired by sendxmpp.
requirements
installation
If you have GOPATH set just run this commands:
$ go get salsa.debian.org/mdosch/go-sendxmpp
$ go install salsa.debian.org/mdosch/go-sendxmpp
You will find the binary in $GOPATH/bin
or, if set, $GOBIN
.
usage
You can either pipe a programs output to go-sendxmpp
, write in your terminal (put ^D in a new
line to finish) or send the input from a file (-m
or --message
).
The account data is expected at ~/.sendxmpprc
if no other configuration file location is specified with
-f
or --file
. The configuration file is expected to be in the following format:
username: <your_jid>
jserver: <jabber_server>
port: <jabber_port>
password: <your_jabber_password>
jserver
and port
might not be necessary depending on the used server. If no configuration file is
present or if the values should be overridden it is possible to define the account details via command
line options:
Usage: go-sendxmpp [-cdintx] [-f value] [--help] [--http-upload value] [-j value] [-m value] [-p value] [-r value] [-u value] [parameters ...]
-c, --chatroom Send message to a chatroom.
-d, --debug Show debugging info.
-f, --file=value Set configuration file. (Default: ~/.sendxmpprc)
--help Show help.
--http-upload=value
Send a file via http-upload.
-i, --interactive Interactive mode (for use with e.g. 'tail -f').
-j, --jserver=value
XMPP server address.
-m, --message=value
Set file including the message.
-n, --no-tls-verify
Skip verification of TLS certificates (not recommended).
-p, --password=value
Password for XMPP account.
-r, --resource=value
Set resource. When sending to a chatroom this is used as
'alias'. (Default: go-sendxmpp) [go-sendxmpp]
-t, --tls Use TLS.
-u, --username=value
Username for XMPP account (JID).
-x, --start-tls Use StartTLS.
examples
Send a message to two recipients using a configuration file.
cat message.txt | ./go-sendxmpp -f ./sendxmpp recipient1@example.com recipient2@example.com
Send a message to two recipients directly defining account credentials.
cat message.txt | ./go-sendxmpp -u bob@example.com -j example.com -p swordfish recipient1@example.com recipient2@example.com
Send a message to two groupchats (-c
) using a configuration file.
cat message.txt | ./go-sendxmpp -cf ./sendxmpp chat1@conference.example.com chat2@conference.example.com
Send file changes to two groupchats (-c
) using a configuration file.
tail -f example.log | ./go-sendxmpp -cif ./sendxmpp chat1@conference.example.com chat2@conference.example.com