Kegadmin dashboard won't load on Pi


#1

Hi,

i set up the kegbot on a Raspberry Pi, but when I go the admin dashboard, all I get is the output below. All other pages seem to be working, and I have done a full raspbian install after i seen it the first time.

Any ideas? Seems like my python version might be wrong, but I’m not well versed in Pi and Python.

Thanks,
Stephen

Environment:

Request Method: GET
Request URL: http://192.168.0.113/kegadmin/

Django Version: 1.7.11
Python Version: 2.7.9
Installed Applications:
(‘pykeg.core’,
pykeg.web’,
‘pykeg.web.api’,
‘pykeg.web.account’,
‘pykeg.web.kbregistration’,
‘pykeg.web.kegadmin’,
‘pykeg.web.kegweb’,
‘pykeg.web.setup_wizard’,
‘pykeg.contrib.demomode’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.humanize’,
‘django.contrib.messages’,
‘django.contrib.sessions’,
‘django.contrib.staticfiles’,
‘crispy_forms’,
‘bootstrap-pagination’,
‘imagekit’,
‘gunicorn’)
Installed Middleware:
(‘pykeg.web.middleware.CurrentRequestMiddleware’,
‘pykeg.web.middleware.KegbotSiteMiddleware’,
‘django.middleware.cache.UpdateCacheMiddleware’,
‘django.middleware.gzip.GZipMiddleware’,
‘django.middleware.common.CommonMiddleware’,
‘django.contrib.sessions.middleware.SessionMiddleware’,
‘django.contrib.messages.middleware.MessageMiddleware’,
‘django.contrib.auth.middleware.AuthenticationMiddleware’,
‘django.middleware.csrf.CsrfViewMiddleware’,
‘pykeg.contrib.demomode.middleware.DemoModeMiddleware’,
‘pykeg.web.api.middleware.ApiRequestMiddleware’,
‘pykeg.web.middleware.PrivacyMiddleware’,
‘django.middleware.doc.XViewMiddleware’,
‘django.middleware.cache.FetchFromCacheMiddleware’,
‘pykeg.web.api.middleware.ApiResponseMiddleware’)

Traceback:
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/django/core/handlers/base.py” in get_response
111. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/django/contrib/auth/decorators.py” in _wrapped_view
21. return view_func(request, *args, **kwargs)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/pykeg/web/kegadmin/views.py” in dashboard
68. checkin.schedule_checkin()
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/pykeg/core/checkin.py” in schedule_checkin
96. core_checkin_task.delay()
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/celery/app/task.py” in delay
453. return self.apply_async(args, kwargs)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/celery/app/task.py” in apply_async
555. **dict(self._get_exec_options(), **options)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/celery/app/base.py” in send_task
353. reply_to=reply_to or self.oid, **options
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/celery/app/amqp.py” in publish_task
305. **kwargs
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/messaging.py” in publish
172. routing_key, mandatory, immediate, exchange, declare)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/connection.py” in _ensured
436. return fun(*args, **kwargs)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/messaging.py” in _publish
177. channel = self.channel
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/messaging.py” in _get_channel
194. channel = self._channel = channel()
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/utils/init.py” in call
425. value = self.value = self.contract()
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/messaging.py” in
209. channel = ChannelPromise(lambda: connection.default_channel)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/connection.py” in default_channel
757. self.connection
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/connection.py” in connection
742. self._connection = self._establish_connection()
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/connection.py” in _establish_connection
697. conn = self.transport.establish_connection()
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/transport/virtual/init.py” in establish_connection
809. self._avail_channels.append(self.create_channel(self))
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/transport/virtual/init.py” in create_channel
791. channel = self.Channel(connection)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/transport/redis.py” in init
464. self.client.info()
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/utils/init.py” in get
325. value = obj.dict[self.name] = self.__get(obj)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/transport/redis.py” in client
908. return self._create_client(async=True)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/transport/redis.py” in create_client
861. return self.AsyncClient(connection_pool=self.async_pool)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/kombu/transport/redis.py” in init
882. self.connection = self.connection_pool.get_connection(’
’)
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/redis/connection.py” in get_connection
455. connection = self.make_connection()
File “/home/kegbot/kegbot-server.venv/local/lib/python2.7/site-packages/redis/connection.py” in make_connection
464. return self.connection_class(**self.connection_kwargs)

Exception Type: TypeError at /kegadmin/
Exception Value: init() got an unexpected keyword argument ‘socket_connect_timeout’


#2

Hi Stephen,

I had the same issue recently. See https://github.com/celery/celery/issues/2903 for some details.

updating to redis-2.10.5 resolved to my issue, although I am not currently using the PI for the server (running Ubuntu 14.04 instead).

the exact command was pip install redis==2.10.5

I currently using the IRC channel, but it isn’t very active. I finally got GPIO with a flow meter working on the Pi and have the Pi making the API call to the server correctly. The code isn’t pretty but I can post it sometime tonight.

The next thing I need to do is get RFID / user credentials working, anyone familiar with this setup? We aren’t using the tablet at the moment, was it only enabled for the tablet?