oracular (1) go-sendxmpp.1.gz

Provided by: go-sendxmpp_0.11.1-1_amd64 bug

NAME

       go-sendxmpp - A tool to send messages to an XMPP contact or MUC.

SYNOPSIS

       go-sendxmpp  [-cdilnt] [-a value] [--fast-off] [-f value] [--headline] [--help] [-h value] [-j value] [-m
       value]  [--muc-password  value]  [--oob-file  value]  [--ox]  [--ox-delete-nodes]   [--ox-genprivkey-rsa]
       [--ox-genprivkey-x25519]   [--ox-import-privkey   value]   [--ox-passphrase  value]  [-p  value]  [--raw]
       [--scram-mech-pinning value] [--ssdp-off] [-s value] [--timeout value] [--tls-version value]  [-u  value]
       [--version] [recipients…]

DESCRIPTION

       A tool to send messages to an XMPP contact or MUC inspired by sendxmpp.
       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
       ~/.config/go-sendxmpp/config  (preferred),  ~/.config/go-sendxmpp/sendxmpprc  (deprecated)  ~/.sendxmpprc
       (for compatibility with the original perl sendxmpp) if no other configuration file location is  specified
       with -f or --file.

OPTIONS

       -a, --alias=[value]
              Set alias/nickname for chatrooms.

       -c, --chatroom=[value]
              Send message to a chatroom.

       -d, --debug
              Show debugging info.

       --fast-off
              Disable XEP-0484: Fast Authentication Streamlining Tokens.

       -f, --file=[value]
              Set configuration file. (Default: ~/.config/go-sendxmpp/config)

       --headline
              Send message as type headline.

       --help Show help.

       -h, --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.

       -l, --listen
              Listen  for  messages  and  print  them  to stdout. If JIDs are specified only messages from those
              contacts are shown. If no JIDs are specified all received messages will be shown.

       -m, --message=[value]
              Set file including the message.

       --muc-password=[value]
              Password for password protected MUCs.

       -n, --no-tls-verify
              Skip verification of TLS certificates (not recommended).

       --oob-file=[value]
              URL to send a file as out of band data.

       --ox   Use "OpenPGP for XMPP" encryption (experimental).
              Ox in go-sendxmpp only supports sending encrypted 1-1 messages. Sending to groupchats and  sending
              encrypted files is not supported. There is no check whether the recipients key is trusted as there
              is no local keyring used. Go-sendxmpp just uses the most recent key that is  provided  via  pubsub
              and  checks  that  it is not expired. As a user facing client a notification would be shown that a
              new key is available and ask the user whether to use the new key or  stick  to  the  old  one.  As
              go-sendxmpp  is  usually  used  in  scripts  it  just accepts the new key to prevent the user from
              missing a new notification due to changed keys.

       --ox-delete-nodes
              Delete existing OpenPGP nodes on the server.

       --ox-genprivkey-rsa
              Generate a private OpenPGP key (RSA 4096 bit) for the configured account (via config  file  or  -u
              and   -p)   and   publish  the  corresponding  public  key.  Go-sendxmpp  will  save  the  key  in
              $XDG_DATA_HOME/go-sendxmpp/oxprivkeys or $HOME/.local/share/go-sendxmpp/oxprivkeys. To protect the
              key a passphrase might be set using --ox-passphrase while generating the key.
              If  there  is  an  existing  private  key  for  "OpenPGP for XMPP" created by another client (e.g.
              profanity) it might be imported using --ox-import-privkey.

       --ox-genprivkey-x25519
              Generate a private OpenPGP key (X25519) for the configured account (via config file or -u and  -p)
              and    publish    the   corresponding   public   key.   Go-sendxmpp   will   save   the   key   in
              $XDG_DATA_HOME/go-sendxmpp/oxprivkeys or $HOME/.local/share/go-sendxmpp/oxprivkeys. To protect the
              key a passphrase might be set using --ox-passphrase while generating the key.
              If  there  is  an  existing  private  key  for  "OpenPGP for XMPP" created by another client (e.g.
              profanity) it might be imported using --ox-import-privkey.

       --ox-import-privkey=[value]
              Import an existing private OpenPGP key.

       --ox-passphrase=[value]
              Passphrase for locking and unlocking the private OpenPGP key.

       -p, --password=[value]
              Password for XMPP account.

       --raw  Send raw XML. To send raw XML to a contact as normal chat message no contact must be specified. To
              send raw XML to a MUC you have to specify the MUC via -c and go-sendxmpp will join the MUC.

       --scram-mech-pinning=[<value>]
              Enforce  the  use  of  a  certain  SCRAM  authentication mechanism. Currently go-sendxmpp supports
              SCRAM-SHA-1,    SCRAM-SHA-1-PLUS,    SCRAM-SHA-256,    SCRAM-SHA-256-PLUS,    SCRAM-SHA-512    and
              SCRAM-SHA-512-PLUS.  You  should know what you are doing when using this setting and make sure the
              chosen mechanism is supported by the server. If not set, go-sendxmpp will use XEP-0474 to  prevent
              downgrade attacks (needs server support).

       --ssdp-off
              Disable XEP-0474: SASL SCRAM Downgrade Protection.

       -s, --subject=[value]
              Set message subject.

       --timeout=[value]
              Connection timeout in seconds. (Default: 10)

       -t, --tls
              Use direct TLS.

       --tls-version=[value]
              Minimal TLS version. 10 (TLSv1.0), 11 (TLSv1.1), 12 (TLSv1.2), 13 (TLSv1.3) (Default: 12)

       -u, --username=[value]
              Username for XMPP account (JID).

       --version
              Show version information.

ENVIRONMENT VARIABLES

   HTTP_PROXY
       A  SOCKS5  proxy  can  be used by setting the environment variable HTTP_PROXY. This feature is considered
       experimental and there is no guarantee that there won't be any connections not using the  proxy  although
       it didn't happen during testing.

       HTTP_PROXY="socks5://127.0.0.1:9050" go-sendxmpp --http-upload file.txt user@example.org

TIPS

   USAGE BY ROOT
       In  general it's a good advice to only perform commands as root when it is strictly necessary. To be able
       to send the output from commands, that need to be performed as root, with  go-sendxmpp  without  invoking
       go-sendxmpp by root sudo can be used.

       In this example there is a user sendxmpp with a go-sendxmpp config in its $HOME:

       # command-that-requires-root|sudo -H -u sendxmpp go-sendxmpp me@example.org

SHELL COMPLETIONS

   ZSH
       There  are  no  shell completions yet (contributions welcome) but for zsh it is possible to automatically
       create completions from --help which might work good enough.

       Just place the following in your ~/.zshrc or ~/.zshrc.local:

       compdef _gnu_generic go-sendxmpp

   FISH
       There are no shell completions yet, but FISH can generate them from the man page with following command:

       fish_update_completions

CHAT

       Feel free to join https://join.jabber.network/#go-sendxmpp@chat.mdosch.de?join.

AUTHOR

       Written by Martin Dosch.

REPORTING BUGS

       Report bugs at https://salsa.debian.org/mdosch/go-sendxmpp/issues.

       Copyright (c) Martin Dosch License: BSD 2-clause License

SEE ALSO

       go-sendxmpp(5), sendxmpp(1)

                                                    July 2024                                     GO-SENDXMPP(1)