My favorites | Sign in
Project Home Wiki Issues Source
Search
for
mod_pastebin  
Redirect long messages to built-in pastebin
Stage-Stable
Updated Apr 9, 2012 by MWild1

Introduction

Pastebins are used very often in IM, especially in chat rooms. You have a long log or command output which you need to send to someone over IM, and don't want to fill their message window with it. Put it on a pastebin site, and give them the URL instead, simple.

Not for everyone... no matter how hard you try, people will be unaware, or not care. They may also be too lazy to visit a pastebin. This is where mod_pastebin comes in!

Details

When someone posts to a room a "large" (the actual limit is configurable) message, Prosody will intercept the message and convert it to a URL pointing to a built-in pastebin server. The URLs are randomly generated, so they can be considered for most purposes to be private, and cannot be discovered by people who are not in the room.

Usage

To set up mod_pastebin for MUC rooms it must be explicitly loaded, as in the example below - it won't work when loaded globally, as that will only load it onto normal virtual hosts.

For example:

Component "conference.example.com" "muc"
    modules_enabled = { "pastebin" }

Pastes will be available by default at http://<your-prosody>:5280/pastebin/ by default. This can be changed with pastebin_ports (see below), or you can forward another external URL from your web server to Prosody, use pastebin_url to set that URL.

Configuration

pastebin_portsList of ports to run the HTTP server on, same format as mod_httpserver's http_ports
pastebin_thresholdMaximum length (in characters) of a message that is allowed to skip the pastebin. (default 500 characters)
pastebin_line_thresholdThe maximum number of lines a message may have before it is sent to the pastebin. (default 4 lines)
pastebin_triggerA string of characters (e.g. "!paste ") which if detected at the start of a message, always sends the message to the pastebin, regardless of length. (default: not set)
pastebin_urlBase URL to display for pastebin links, must end with / and redirect to Prosody's built-in HTTP server
pastebin_expire_afterNumber of hours after which to expire (remove) a paste, defaults to 24. Set to 0 to store pastes permanently on disk.

Compatibility

0.8Works
0.7Works
0.6Works

Todo

  • Maximum paste length
  • Web interface to submit pastes?
Comment by project member dan...@daniel.priv.no, Apr 7, 2012

It is not clear from this documentation whether mod_httpserver needs to be enabled or not. Nor what the minimal required configuration is.

Comment by project member waqas20, Apr 7, 2012

@daniel mod_httpserver has nothing to do with mod_pastebin, other than that they both serve over HTTP. The minimal required configuration is given above, under the "Usage" section. Basically just modules_enabled={"pastebin"} under the relevant component. That is all that should be required to make mod_pastebin work in chatrooms.


Sign in to add a comment
Powered by Google Project Hosting