ratox

FIFO based tox client
git clone git://git.2f30.org/ratox
Log | Files | Refs | README | LICENSE

ratox.1 (4685B)


      1 .Dd March 10, 2017
      2 .Dt RATOX 1
      3 .Os
      4 .Sh NAME
      5 .Nm ratox
      6 .Nd FIFO based tox client
      7 .Sh SYNOPSIS
      8 .Nm
      9 .Op Fl 4 | Fl 6
     10 .Op Fl E | Fl e
     11 .Op Fl T | Fl t
     12 .Op Fl P | Fl p
     13 .Op Fl q
     14 .Op Ar savefile
     15 .Sh DESCRIPTION
     16 .Nm
     17 is a client implementation of the tox protocol providing only FIFOs, files
     18 and directories as interfaces.
     19 .Sh OPTIONS
     20 .Bl -tag -width Ds
     21 .It Fl 4 6
     22 Use IPv4/IPv6 only.
     23 .It Fl E e
     24 Enable/Disable save file encryption.
     25 .It Fl T t
     26 Enable/Disable TCP mode.  Avoiding UDP in tox implies certain security
     27 considerations.
     28 .It Fl P p
     29 Enable/Disable TCP HTTP/SOCKS5 proxy as specified in \fIconfig.h\fR.
     30 .It Fl q
     31 Enable quiet mode.
     32 .It Ar savefile
     33 Path of the file to load a profile from or create a new one in.
     34 .El
     35 .Sh CONFIGURATION
     36 .Nm
     37 is configured with \fIconfig.h\fR at compile-time.  Apart from command line
     38 options and other parameters it contains the list of DHT-nodes.
     39 .Pp
     40 If there is a mismatch between save file status and encryption setting,
     41 .Nm
     42 writes the save file according to the latter.
     43 .Sh INTERFACE
     44 A \fIslot\fR is a set of FIFOs, files and directories interfacing a single
     45 parameter.  The set of slots makes up the \fIinterface\fR.
     46 .Ss Global slots
     47 Global slots are directories containing an \fBin\fR FIFO, \fBout\fR and
     48 \fBerr\fR file or directory respectively.
     49 The slot parameter is set by piping data to \fBin\fR and accessed
     50 with \fBout\fR.  Any errors are reported in \fBerr\fR.
     51 .Bl -tag -width 13n
     52 .It Ar name/
     53 Name slot.
     54 .It Ar nospam/
     55 Nospam slot (8 digit hexadecimal).
     56 .It Ar state/
     57 State slot (\fBavailable\fR | \fBaway\fR | \fBbusy\fR).
     58 .It Ar status/
     59 Status message slot.
     60 .It Ar request/
     61 Request slot.  Send a friend request by piping the Tox ID to \fBin\fR.  Incoming
     62 requests are listed as FIFOs in \fBout/\fR.  Echo \fB1\fR | \fB0\fR to
     63 accept | reject them.
     64 .It Ar conf/
     65 Conference management slot.  A conference is created by writing and flag
     66 and its title to \fBin\fR. The flag is \fBt\fR | \fBa\fR | \fBv\fR for an
     67 text, audio  and video conference, followed by a space character. Only
     68 text conferences work at the moment. Invites to conferences are FIFOs
     69 in \fBout/\fR. Their name is id_cookie (the cookie is random data). They
     70 behave like request FIFOs.
     71 .El
     72 .Ss Friend slots
     73 Each friend is represented with a directory in the base-directory named after
     74 their Tox ID without its nospam-value.  Each directory contains slots to
     75 interface with the friend.
     76 .Bl -tag -width 13n
     77 .It Ar call_in
     78 Initiate a call by piping data to this FIFO.
     79 .It Ar call_out
     80 Answer an incoming call by opening it for reading.
     81 .It Ar call_state
     82 Reports the call state (\fBnone\fR | \fBpending\fR | \fBactive\fR).
     83 The sample format is \fBmono signed 16-bit little
     84 endian at 48kHz\fR.
     85 The call is \fBterminated\fR if
     86 .Nm
     87 receives both an EPIPE trying to read from call_in
     88 and ENXIO trying to open call_out for writing.
     89 .It Ar file_in
     90 Initiate a file transfer by piping data to this FIFO.
     91 .It Ar file_out
     92 Accept an incoming file transfer by opening it for reading.
     93 .It Ar file_pending
     94 Contains the incoming filename if transfer is pending, empty otherwise.
     95 Given
     96 .Nm
     97 can't know how much data a given pipe is going to provide, it
     98 will send until the pipe is drained or EPIPE received.
     99 That's why it's possible to stream arbitrary data, including
    100 audio and video transmissions, even to other clients.
    101 .It Ar name
    102 Contains the friend's name.
    103 .It Ar online
    104 Contains the friend's online status (\fB1\fR | \fB0\fR).
    105 .It Ar remove
    106 Echo \fB1\fR to remove the friend.
    107 .It Ar state
    108 Contains the friend's state (\fBavailable\fR | \fBaway\fR | \fBbusy\fR)
    109 .It Ar status
    110 Contains the friend's status message.
    111 .It Ar text_in
    112 Send a text message by piping data to this FIFO.
    113 .It Ar text_out
    114 Contains text messages from the friend.
    115 .El
    116 .Ss Conference slots
    117 Each conference is represented with a directory in the directory named after the
    118 8-digit conference number.  The files in the conference directory are an interface
    119 for the respective conference.
    120 .Bl -tag -width 13n
    121 .It Ar members
    122 Contains a list of  members of the conference.
    123 .It Ar invite
    124 Write the Tox ID of a friend to this FIFO to invite him to the conference.
    125 .It Ar leave
    126 Write to this file to leave the conference.
    127 .It Ar title_in
    128 Write here to change the title of the conference.
    129 .It Ar title_out
    130 Contains the title of the conference.
    131 .It Ar text_in
    132 Echo message to send a text message to the conference.
    133 .It Ar text_out
    134 Contains the messages send in the conference so far.
    135 .El
    136 .Ss Misc files
    137 .Bl -tag -width 13n
    138 .It Ar id
    139 Contains your Tox ID.
    140 .El
    141 .Sh AUTHORS
    142 .An Dimitris Papastamos Aq Mt sin@2f30.org ,
    143 .An Laslo Hunhold Aq Mt dev@frign.de ,
    144 .An z3bra Aq Mt contact@z3bra.org ,
    145 .An pranomostro Aq Mt pranomostro@posteo.net .