from django.shortcuts import render from django.urls import reverse_lazy from django.db.models import Q from django.views.generic.list import ListView from django.views.generic.edit import CreateView, DeleteView, UpdateView from django.views.generic.detail import DetailView from django.views.generic.base import TemplateView from django.views import View from django.http import HttpResponse from ws4redis.redis_store import RedisMessage from ws4redis.publisher import RedisPublisher from django.conf import settings # Create your views here. class TerminalView(TemplateView): template_name = 'main.html' def get(self, request, *args, **kwargs): welcome = RedisMessage('Hello everybody') # create a welcome message to be sent to everybody RedisPublisher(facility='foobar', broadcast=True).publish_message(welcome) return super(TerminalView, self).get(request, *args, **kwargs) def post(self, request, *args, **kwargs): redis_publisher = RedisPublisher(facility='foobar', groups=[request.POST.get('group')]) message = RedisMessage(request.POST.get('message')) redis_publisher.publish_message(message) return HttpResponse('OK')