Giter Club home page Giter Club logo

purpled's Introduction

purpled

purpled is a network daemon that implements the nuqql interface and uses libpurple to connect to various instant-messaging networks. It can be used as a backend for nuqql or as a standalone chat client daemon.

About:

purpled is a fork of the purpleD libpurple daemon authored by the original project members:

The original code mirrored from sourceforge.net is tagged as "mirrored". In the current code, see orig/README for original description and orig/INSTALL for original building information.

Later commits contain the changes described in the "Changes" section.

Installation:

You can install purpled with the following steps:

  • Download purpled
  • Build and install purpled with:
    • meson builddir
    • ninja -C builddir install

Note: these steps require the meson build system. In case you want to use the old Makefiles etc., you can find them in the orig directory.

Usage:

You can run purpled with the following command line arguments:

Usage: purpled [OPTION...]

      --af=AF                set socket address family: "inet" for AF_INET or
                             "unix" for AF_UNIX
  -d, --daemonize            run purpled as a unix daemon
      --disable-history      disable message history
      --filter-own           enable filtering of own messages
  -i, --inet-socket          use AF_INET/TCP socket
  -l, --address=LISTEN_IP    listen on IP address LISTEN_IP
      --loglevel=LEVEL       set logging level to LEVEL
  -p, --port=PORT            listen on TCP port PORT
      --push-accounts        push accounts to client
      --sockfile=FILE        use AF_UNIX socket file in DIR
  -u, --unix-socket          use AF_UNIX socket
  -w, --dir=DIR              set working directory to DIR
  -?, --help                 Give this help list
      --usage                Give a short usage message
  -V, --version              Print program version

Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.

Changes:

  • v0.6.0:
    • Add command line arguments and update argument parsing
      • Allow pushing accounts to the client
      • Allow disabling the message history
      • Add simple logging and logging level definition
      • Allow filtering of own messages in chats
    • Rewrite sender of own messages to <self>
    • Add welcome message, account adding help, account added info messages
    • Cleanups and fixes
  • v0.5:
    • Add new commands:
      • bye: disconnect from purpled.
      • quit: quit purpled.
      • help: show list of commands and their description.
    • Add and use "chat msg" message format for group chat messages
    • Make "message" message format more similar to other nuqql backends.
    • Cleanups and fixes
  • v0.4:
    • Add chat room messages:
      • List joined chat rooms: account <id> chat list
      • Join a chat room: account <id> chat join <chat_room>
      • Leave a chat room: account <id> chat part <chat_room>
      • List users in a chat room: account <id> chat users <chat_room>
      • Invite user to a chat room: account <id> chat invite <chat_room> <user>
      • Send a message to a chat room: account <id> chat send <chat_room> <msg>
  • v0.3:
    • Add account status message
      • Set current status with: account <id> status set <status>
      • Get current status with: account <id> status get
  • v0.2:
    • Switched to meson and made purpled installable with it. Old Makefiles etc. are in folder orig.
    • Message format updates: made account list reply easier to parse. Added more CR/LF message terminations. Introduced info: and error: message types.
    • Introduced command line parameter to specify working directory.
  • v0.1:
    • Support for Unix Domain Sockets/AF_UNIX sockets; use command line parameter -i for an AF_INET socket and -u for an AF_UNIX socket
    • Changes to the messages sent from purpleD to clients to make parsing easier: they now contain the "message type" and use CR/LF to mark the end of messages
    • A meson.build file
  • v0.0.1:
    • A patch from Leandro Britez to show the (online) buddies of an account with account ID buddies [ONLINE]
  • mirrored:
    • original code from sf.net

purpled's People

Contributors

hwipl avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.