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

NAME

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

SYNOPSIS

       go-sendxmpp  [-cdilntv]  [-a  value]  [--allow-plain]  [--anonymous] [--fast-invalidate] [--fast-off] [-f
       value] [--headline] [--help] [-h value] [-j  value]  [--legacy-pgp]  [-m  value]  [--muc-password  value]
       [--no-sasl-upgrade]     [--oob-file     value]     [--ox]    [--ox-delete-nodes]    [--ox-genprivkey-rsa]
       [--ox-genprivkey-x25519] [--ox-import-privkey value]  [--ox-passphrase  value]  [-p  value]  [--raw]  [-r
       value]  [--retry-connect value] [--retry-connect-max value] [--scram-mech-pinning value] [--ssdp-off] [-s
       value]  [--suppress-root-warning]  [--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.

       --allow-plain
              Allow  PLAIN  authentication.  Note  that  this  setting  has  no effect if there was a successful
              connection using a SCRAM authentication mechanism before. In that case PLAIN  is  not  allowed  to
              prevent downgrades by a man-in-the-middle attack.

       --anonymous
              Use  anonymous  authentication.  Specify the the target server by using the flag -u or --username.
              Username is used to specify the server to be able to override the server by using -j or  --jserver
              in   cases   where  the  service  (e.g.  anon.example.org)  is  served  by  another  server  (e.g.
              xmpp.example.org) but no SRV records are set up.

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

       -d, --debug
              Show XMPP stanzas. These can include sensitive data.

       --fast-invalidate
              Invalidate XEP-0484: Fast Authentication Streamlining Tokens.  The  current  FAST  token  will  be
              invalidated  and a new one will be requested. If used together with --fast-off the FAST token will
              be invalidated and the stored FAST token deleted.

       --fast-off
              Disable XEP-0484: Fast Authentication Streamlining Tokens. Deletes the stored FAST token when used
              together with --fast-invalidate.

       -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. Can be invoked several times to upload multiple files.

       -i, --interactive
              Interactive mode (for use with e.g. tail -f).

       -j, --jserver=[value]
              XMPP server address.

       --legacy-pgp
              "Legacy PGP" encryption using the Ox key infrastructure. This means the recipient must have an  Ox
              key  published  and use the same key for legacy PGP. The use of legacy PGP is actually discouraged
              and only provided as a workaround for conversations users. If the existing key has no  ID  in  the
              form of xmpp:user@example.org, it can be added by using the tool sq:

             $ sq key userid add -u xmpp:user@example.org -Bo newkey.asc oldkey.asc`

       This  key  (newkey.asc  in the sq example) can than be imported by using --ox-import-privkey. Please note
       that this will store the secret key at ~/.local/share/go-sendxmpp/user_at_example_org/oxprivkey.  If  you
       don't  want  to  use  that account with go-sendxmpp and only imported the key to upload the public key to
       pubsub you might consider deleting the file.

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

       --no-sasl-upgrade
       Disable XEP-0480: SASL Upgrade Tasks.

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

       -r, --recipients=[value]
       Read recipients from file, one JID per line.

       --retry-connect=[value]
       Specify a connection retry waiting time in seconds. This specifies the  waiting  time  until  go-sendxmpp
       will  try to reconnect if connecting fails. This setting only affects the initial connection, it does not
       reconnect after  losing  the  connection.  It  is  also  ignored  if  the  connection  fails  due  to  an
       authentication  error  as  then it does not make sense to try again using the same credentials. Setting a
       time of 0 seconds disables this functionality. (Default: 0)

       --retry-connect-max=[value]
       Number of maximum retries to perform for  '--retry-connect'.  A  value  of  0  means  unlimited  retries.
       (Default: 0)

       --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  and
       requires a SCRAM authentication mechanism).

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

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

       --suppress-root-warning
       Suppress warning when run as root.

       --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: 13)

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

       -v, --verbose
       Show debug information. These can include sensitive data.

       --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:

           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

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

SEE ALSO

       go-sendxmpp(5), xmppc(1), sendxmpp(1)

                                                  December 2025                                   GO-SENDXMPP(1)