Git Product home page Git Product logo

iris's People

Contributors

aaronmdjones avatar ariscop avatar bverhoeven avatar darthgandalf avatar jdhore avatar kaniini avatar md-5 avatar mrflea avatar nasonfish avatar retropc avatar sajime avatar sariyamelody avatar spil-stuart avatar usrbinsam avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iris's Issues

real host

problems to forward real host! its seand real host to REAL NAME not REAL HOST

Apache and Iris

httpd.conf

<VirtualHost *:80>
        ServerAdmin [email protected]
        DocumentRoot /var/www/html/irc
        ServerName irc.example.com

        ProxyPass /chat/ http://127.0.0.1:3989/
        ProxyPassReverse /chat/ http://127.0.0.1:3989/
</VirtualHost>

First Tab: Working Iris => using http://example.com:3989/
Second Tab: Not Working Iris => using http://irc.example.com/chat/

rawr117

Feature: add token authentication

Is there a way to sent a token in the url for the IRC server and then IRC check with an webservice if the token is valid or not.

Something like in the image I'm attaching.

IRCAuthentication 2

Configuration should have sensible defaults and only a few mandatory fields

Currently https://gist.github.com/a2b69a74bda308a22bed is the minimum amount of configuration required to get an iris server running. In comparison to say Charybdis and other products which default to hard coded values in the event a configuration value is not set. Charybdis for example can run fine on https://gist.github.com/e038e6d985a6152caa4e

What I am suggesting is that almost every option, bar irc server and network name, maybe a few others get a default option and that they need not be specified in the configuration.

Thanks
md_5

/topic (no args) could return the current topic for the current channel.

From what I'm aware of, /topic expects arguments. Triggering /topic without arguments might trigger the topic to be shown instead of set.

A possible fix might be changing the lines 131 and 132 of /js/irc/commands.js to the following:

cmd_TOPIC: [true, 1, 0, function(args) {
    this.send("TOPIC " + this.getActiveWindow().name + (args?" :" + args[0]:""));

menu

It's possible to remove the menu button?

IPv6 hostname resolve doesn't seem to work

Just noticed today that Iris doesn't seem to be able to resolve IPv6 addresses to a hostname. Connecting directly to the IRC networks works as well as using IPv4 on Iris. However v6 always returns the IP address and not the hostname.

Exception on connect

When I want to connect to the irc network with the newest version of IRIS I'm getting the following exception:

2013-03-01 20:23:07+0100 [TimeoutHTTPChannel,0,XX.XXX.XXX.XX] Unhandled Error
        Traceback (most recent call last):
          File "/usr/lib/python2.6/dist-packages/twisted/web/http.py", line 1371, in dataReceived
            finishCallback(data[contentLength:])
          File "/usr/lib/python2.6/dist-packages/twisted/web/http.py", line 1585, in _finishRequestBody
            self.allContentReceived()
          File "/usr/lib/python2.6/dist-packages/twisted/web/http.py", line 1641, in allContentReceived
            req.requestReceived(command, path, version)
          File "/usr/lib/python2.6/dist-packages/twisted/web/http.py", line 807, in requestReceived
            self.process()
        --- <exception caught here> ---
          File "/usr/lib/python2.6/dist-packages/twisted/web/server.py", line 125, in process
            self.render(resrc)
          File "/usr/lib/python2.6/dist-packages/twisted/web/server.py", line 132, in render
            body = resrc.render(self)
          File "/usr/lib/python2.6/dist-packages/twisted/web/resource.py", line 210, in render
            return m(request)
          File "/home/ircwebchat/iris/qwebirc/engines/ajaxengine.py", line 34, in decorator
            x = fn(*args, **kwargs)
          File "/home/ircwebchat/iris/qwebirc/engines/ajaxengine.py", line 181, in render_POST
            return handler(self, request)
          File "/home/ircwebchat/iris/qwebirc/engines/ajaxengine.py", line 235, in newConnection
            proceed(None)
          File "/home/ircwebchat/iris/qwebirc/engines/ajaxengine.py", line 231, in proceed
            client = ircclient.createIRC(session, **kwargs)
          File "/home/ircwebchat/iris/qwebirc/ircclient.py", line 229, in createIRC
            bind_ip = config.irc["bind_ip"]
        exceptions.KeyError: 'bind_ip'

It doesn't matter if I connect over SSL or not.
I'm using the latest UnrealIRCd version as IRC Server and run the IRIS Wehchat on the latest 64Bit Version of Debian Squeeze (all updates installed)!

Dependency List Required

I've successfully installed this before without issue, but now on a newer server I'm having dep problems so I came here to read the documentation to find the list of dependencies and got this:

(0. install all dependencies, get python, install python-simplejson etc.; do not complain about errors which are caused by missing dependencies)

Seriously? There's no list of deps and you have 'etc....' and then 'do not complain about errors which are caused by missing dependencies' ??

This is needed documentation.

Atheme logout not working

In the file qwebirc/engines/athemeengine.py in the logout function the paramaters that are passed to the XML-RPC API are swapped.
Wrong:

result["output"] = self.do_xmlrpc(self.conn.atheme.logout, (user[0], token[0]))

Correct:

result["output"] = self.do_xmlrpc(self.conn.atheme.logout, (token[0], user[0]))

After i made these changes everything worked fine

Channels with umlauts not working

Hi,

some of the users on my network use channel names with umlauts. Vor example #brücke

When using a software IRC client everything works fine and the users can talk with each other on that channel. However users using Iris seem to create a new channel with a name which looks exactly the same however it would make such a difference that it is actually a completely new IRC channel for the IRCD.

IRCD: Inspircd 2.0.10
Casemapping: rfc1459
Charset: ascii

Thanks in advance.

chan_list_enabled: true

Auto-selecting reactor: epoll
Traceback (most recent call last):
File "./run.py", line 106, in
run_twistd(args1, args2)
File "./run.py", line 21, in run_twistd
run()
File "/usr/lib/python2.7/dist-packages/twisted/scripts/twistd.py", line 27, in run
app.run(runApp, ServerOptions)
File "/usr/lib/python2.7/dist-packages/twisted/application/app.py", line 652, in run
runApp(config)
File "/usr/lib/python2.7/dist-packages/twisted/scripts/twistd.py", line 23, in runApp
_SomeApplicationRunner(config).run()
File "/usr/lib/python2.7/dist-packages/twisted/application/app.py", line 386, in run
self.application = self.createOrGetApplication()
File "/usr/lib/python2.7/dist-packages/twisted/application/app.py", line 446, in createOrGetApplication
ser = plg.makeService(self.config.subOptions)
File "/var/www/iris/twisted/plugins/webirc.py", line 44, in makeService
site = RootSite(config['staticpath'])
File "/var/www/iris/qwebirc/root.py", line 85, in init
register(engines.AthemeEngine, "a")
File "/var/www/iris/qwebirc/root.py", line 77, in register
sobj = service("/" + path, _args, *_kwargs)
File "/var/www/iris/qwebirc/engines/athemeengine.py", line 34, in init
chanlist = self.do_list()
File "/var/www/iris/qwebirc/engines/athemeengine.py", line 89, in do_list
channel = { "name": lineitems[0], "users": int(lineitems[1]) }
ValueError: invalid literal for int() with base 10: 'un'

[Request + Bug] Enable "joining" a query.

This project is probably abandoned? Since the last commit was 1 year and 3 months ago..
but meh..

Allow us to create links that will instead of bringing the user to a channel it'll create a query to another user (same as /query )

For example: webchat.esper.net/?nick=name&query=Vastrix&prompt=0

Also, the "Feedback" menu in the Iris webchat isn't working.. :/ (not on espernet anyway)

Thanks :)

iris errors on startup

I'm new to this. but i got qwebirc working before on it's own. but when i start iris after shutting qwebirc down it shows following errors:

Traceback (most recent call last):
File "run.py", line 106, in
run_twistd(args1, args2)
File "run.py", line 21, in run_twistd
run()
File "C:\Python27\lib\site-packages\twisted\scripts\twistd.py", line 31, in run
app.run(runApp, ServerOptions)
File "C:\Python27\lib\site-packages\twisted\application\app.py", line 674, in run
runApp(config)
File "C:\Python27\lib\site-packages\twisted\scripts\twistd.py", line 25, in runApp
runner.run()
File "C:\Python27\lib\site-packages\twisted\application\app.py", line 381, in run
self.application = self.createOrGetApplication()
File "C:\Python27\lib\site-packages\twisted\application\app.py", line 448, in createOrGetApplication
ser = plg.makeService(self.config.subOptions)
File "C:\users\administrator\ircclient\twisted\plugins\webirc.py", line 44, in makeService
site = RootSite(config['staticpath'])
File "C:\users\administrator\ircclient\qwebirc\root.py", line 85, in init
register(engines.AthemeEngine, "a")
File "C:\users\administrator\ircclient\qwebirc\root.py", line 77, in register
sobj = service("/" + path, args, **kwargs)
File "C:\users\administrator\ircclient\qwebirc\engines\athemeengine.py", line 34, in init
chanlist = self.do_list()
File "C:\users\administrator\ircclient\qwebirc\engines\athemeengine.py", line 74, in do_list
output = self.do_xmlrpc(self.conn.atheme.command, ("
", "", "0.0.0.0", "ALIS", "LIST", "", "-maxmatches", "-1"))
File "C:\users\administrator\ircclient\qwebirc\engines\athemeengine.py", line 59, in do_xmlrpc
result = rpc(*params)
File "C:\Python27\lib\xmlrpclib.py", line 1243, in call
return self.__send(self.__name, args)
File "C:\Python27\lib\xmlrpclib.py", line 1602, in __request
verbose=self.__verbose
File "C:\Python27\lib\xmlrpclib.py", line 1283, in request
return self.single_request(host, handler, request_body, verbose)
File "C:\Python27\lib\xmlrpclib.py", line 1311, in single_request
self.send_content(h, request_body)
File "C:\Python27\lib\xmlrpclib.py", line 1459, in send_content
connection.endheaders(request_body)
File "C:\Python27\lib\httplib.py", line 1038, in endheaders
self._send_output(message_body)
File "C:\Python27\lib\httplib.py", line 882, in _send_output
self.send(msg)
File "C:\Python27\lib\httplib.py", line 844, in send
self.connect()
File "C:\Python27\lib\httplib.py", line 821, in connect
self.timeout, self.source_address)
File "C:\Python27\lib\socket.py", line 575, in create_connection
raise err

can some help me with this please?

iFrame embed jumps page after load

I've noticed that when we put the iFrame embed code onto a lower part of the page, the page itself will jump down to the login screen when the page loads.

If I just put the code in a plain text file, I am able to replicate it sometimes. When jQuery is loaded, it always jumps.

My guess is that the nickname field has an focus() applied to it on load, which forces the browser to jump down. I have not been able to find out where it's doing it exactly though.

Compatibility with FreeBSD 8.3 64bit

Hi,

We have come across an issue. We always use the latest atheme/iris git.

IRIS since last May 2012 has been running very well on our host providers server running FreeBSD 7.4 32bit.

On 13th January 2013 the server IRIS was running on was upgraded to FreeBSD 8.3 64bit and this is where the problems began.
Part of the process when the upgrade was complete was to recompile everything. We recompiled ShadowIRCd 6.3.3 and Atheme 7.0.5 and these ran perfectly however it was when we compiled IRIS we had the following:

When compiling IRIS on this new system (cloning a new git) and running it we now get 'Segmentation fault 11' (This is all the information we have as we cannot run any debugging)
After speaking to our host provider they said IRIS was falling over at the openssl stage however we quickly ruled that out by setting SSL in the config to false and even as far as stripping the SSL code out of IRIS. This was not the case so we added SSL back in.

We then double checked and IRIS has all its dependencies installed.

We then tried IRIS on a FreeBSD 8.3 32bit system and it ran perfectly so we have drawn the conclusion it is down to IRIS running on a 64bit FreeBSD system.

Temporary we have left IRIS on this 32bit FreeBSD 8.3 system but this is not ideal long term. We are coming to you guys as we cannot seem to find a fix for this issue.

To note: We hg cloned QwebIRC that IRIS is forked from, compiled it and this DOES run on FreeBSD 8.3 64bit.

Again apologies but this is all the information we have as currently on this new FreeBSD 8.3 64bit system with IRIS we cannot do anything with python ./run.py as it just gives us 'Segmentation Fault 11'

Many thanks for any help/fixes you can provide

Server password support

I see there is a PASS line in the code, but no way to trigger it. Would be nice to allow server passwords.

Channel autoscrolling fails with lastpos_line enabled

When a user scrolls up in the channel window, and then back down to the bottom, the window should resume autoscrolling as new lines are displayed. This fails, however, if the "last position" marker is shown at the very bottom of the window. The user must wait until another line of text is displayed after the marker, and then manually scroll to the bottom, to make autoscrolling work again.

Language Files

I would like to translate the chat to German. I didn't find any language files to change.

SASL Authentication on Grouped nicks

Hi Guys,

An issue has become apparent where users cannot login to iris webchat using a grouped nick and their password. SASL Authentication does not go through and in turn they get changed to a chatter.

logging in to iris webchat without a password with the grouped nick and /ns identifying does allow the authentication to go through via nickserv.

I am thinking the way SASL works is it cross checks the nickname and password with that of the nick originally registered in the Atheme Services database. Grouped nicks are not registered in this way, they are simply added to the original nick.

Is this something that can be added? To allow grouped nicks to be identified via SASL Authentication or is it just a case of having to identify with original registered nick and password in IRIS webchat?

Cheers

nickserv_login bug

When you set nickserv_login to false in iris.conf, it is not possible to connect due to error in javascript. There are some parts that expects element srvbutton, but it doesn't exists...

Compile process aborts

Hi,
while trying to compile iris on my debian 7 vps, the process aborts with the following lines

irisirc@vps2:~/iris$ python compile.py
Traceback (most recent call last):
File "compile.py", line 2, in
import bin.compile
File "/home/irisirc/iris/bin/compile.py", line 5, in
import pages, os, subprocess, pagegen, shutil, sys, time
File "/home/irisirc/iris/bin/pagegen.py", line 2, in
import qwebirc.config as config
File "/home/irisirc/iris/qwebirc/config.py", line 143, in
load_config()
File "/home/irisirc/iris/qwebirc/config.py", line 23, in load_config
check_config(True)
File "/home/irisirc/iris/qwebirc/config.py", line 30, in check_config
raise ConfigParser.NoSectionError(section)
ConfigParser.NoSectionError: No section: 'adminengine'

how can I solve this problem?

WebSocket

It would be nice to have iris support WebSocket (if available, otherwise fall back).
That would drastically improve performance when used with huge amounts of clients.

Are there already any plans to implement this?

Connect screen vs channel

I've installed iris here: https://irc.idev.ge/

All went fine.

Except on homepage, default for user is channels tab, which obviously states:

"Unable to load channel list, please try refreshing again later."

Wouldn't it be wise instead to show connect tab as a default?

Is this behavior configurable via conf file? I didn't see anything related to this.

JavaScript error when NickServ login set to false

When in the [atheme] section of the iris.conf the value for nickserv_login is not set, or set to anything which isn't true it will causes an JavaScript error when clicking the connect button, making it impossible to connect.
qui-c26375f04806fb21b78d790f4c69e4abc1f02e06.js:5807 TypeError: 'undefined' is not an object (evaluating 'srvbutton.checked')

(Please note I am using uncompressed JavaScript files, due to the lack of Java)

Full auto connect

I would like to make iris auto connect to my IRC on page load because my users have difficulty pressing a button because "it's scary".

All I need is a simple code modification that i can perform, I tried changing this.createConfirmBox(null) to this.connect(null) in js/ui/panes/connect.js but that just makes nothing on the page load.

Any help would be appreciated.

URL parameters initial_nick and initial_chans not working

Hi there,

When you specify ?initial_chans=test&initial_nick=XXXX&prompt=0 you get a prompt:

To connect to IRC and join channel #test as XXXX click 'Connect'.

The connect button is visible but clicking on it does nothing. There is no event listener attached, nor do any errors come up in the console - there is simply no javascript running at that point.

According to js/config.js this kind of operation should work (since it parses document.location) and populates using either nick/initial_nick or channels/initial_chans.

The breaker seems to be the prompt=0. Specifying prompt=1 gives you the nickname box and you can click to login.

Compare:
?initial_chans=test&initial_nick=XXXX&prompt=0 (not working connect button), to:
?initial_chans=test&initial_nick=XXXX&prompt=1 (working connect button)

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.