weechat-xmpp/README.org
2018-05-10 00:12:42 +01:00

4.0 KiB

weechat-slack

file:https://api.travis-ci.org/bqv/weechat-slack.svg?branch=master file:https://coveralls.io/repos/github/bqv/weechat-slack/badge.svg?branch=master https://img.shields.io/github/issues/bqv/weechat-slack.svg https://img.shields.io/github/issues-closed/bqv/weechat-slack.svg https://img.shields.io/github/license/bqv/weechat-slack.svg https://img.shields.io/badge/weechat--extras-slack-yellow.svg

Status: Under Development
Location: http://github.com/bqv/weechat-slack
Version: 0.1.0

Description

A weechat plugin in C to extend the chat client to support Slack workspaces via the RTM and Web APIs.

Dependencies

  • libwebsockets (static, submodule)
  • json-c (static, submodule)
  • weechat (>= v1.4)

Building

git clone git://github.com/bqv/weechat-slack.git
cd weechat-slack
make
make install

Do NOT run make install as root, it installs the plugin to your local weechat plugins directory

Development

I use emacs for development of this, although I am also a fan of vim. My debug build process involves static analysis with clang and cppcheck, and dynamic analysis with address-sanitizer and leak-sanitizer.

I have no real requests for style of pull requests besides a wish that you keep vaguely to the style I have adopted for this project.

Happy coding!

Tasks

DONE [A] Implement basic functionality (milestone v0.1)

TODO [A] Implement essential api endpoints and events (milestone v0.2)

  • Implement handling api message message.me_message (see #5)
  • Implement sending request chat.meMessage (see #5)
  • Implement handling api message message.thread_broadcast
  • Implement handling api message message.bot_message (see #2)
  • Implement handling api message message.message_changed
  • Implement handling api message message.message_deleted
  • Implement handling api message message.message_replied

TODO [B] Implement completion engine (milestone v0.3)

  • Tab completion for slack emoji (see #3)
  • Tab completion for display/user names (see #1)
  • Sort nick-completion by recent (see #4)

TODO [B] Implement debian packaging (milestone v0.4)

  • Switch to system libwebsockets package (dynamically link)
  • Create configure build step (cmake? autotools?)

TODO [C] Implement remaining api endpoints and events (milestone v0.5)

  • Complete api endpoint set
  • Complete api event set

TODO [C] Implement full weechat functionality (milestone v0.6)

  • Hook buffer closes
  • Relay compatibility

TODO [#D] Close all issues (milestone v1.0)

Contributing

Your contributions are always welcome! Please submit a pull request or create an issue to add a new or missing feature.

License

weechat-slack is licensed under the Mozilla Public License Version 2.0 available here and in LICENSE.