summaryrefslogtreecommitdiff
path: root/README
blob: 47bd797720772a4f9d2b5dbfd185b61f4e8d07cd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
Copyright (C) 2014 - Simeon Simeonov
See the end of the file for license conditions.

The file INSTALL in this very same directory describes how to setup & use BEINC


What is BEINC?
--------------

Blackmore's Enchanced IRC Notification Collection (BEINC) is a free set of
components that aim to provide a complete system for different on-screen-display
notification scenarios.

The current version of BEINC contains the following components:
beinc_server.py - server used for queueing or providing on-screen-display (OSD)
beinc_poller.py - client used to fetch enqueued messages from beinc_server.py
                  and provide OSD
beinc_weechat.py - a complete script / client for the Weechat IRC client >=0.4.0
                   used to push notification messages to beinc_server.py
beinc_generic_client.py - a simple client used to push notification messages
                          to beinc_server.py
                          Its main purpose is to provide a convenient way to 
                          test beinc_server.py (and beinc_poller.py) as well as
                          to serve as an example on how to develop BEINC-clients


Why should I use BEINC and what has it done for me lately?
----------------------------------------------------------

BEINC is designed to assist you two common scenarios. 
As an example we will consider the case of an IRC cliet, although BEINC can be
used by any client that conforms with BEINC's "messaging protocol".

We have the common situation where a user is accessing an IRC client located on
a different computer (typically: weechat, irssi, etc. running on a remote server)
The IRC client receives a private message (or any event that requires the user's
attention) and the user has to be notified.

Scenario one: 
The user's computer can be reached from the server running the IRC client.
If the server (running the IRC client) is able to connect to 
a specified TCP port on the user's computer, this is sufficient for BEINC to
directly notify the user. Solution:
 - set up the beinc_server.py on the desktop workstation (the computer where the
   notification-message should be displayed). Define an unprivileged port for 
   beinc_server.py to listen on and enable its OSD capabilities 
   (through pynotify and/or pyosd)
 - set up a BEINC client similar to beinc_generic_client.py on the server
   If you are running weechat >=0.4.0, this version of BEINC comes with 
   a complete weechat BEINC-client: beinc_weechat.py
   Configure the client to send notifications to the beinc_server.py

Scenario two:



Supported systems & requirements
--------------------------------
Any system running Postfix and Spamassassin.


Requirements:
All components: Python 2.7.*
beinc_server.py: cherrypy >= 3.2.0, pyopenssl >= 0.13.0
beinc_weechat.py:
beinc_poller.py: 


License
-------

This file is part of BEINC.

BEINC is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or                                                                                          
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>