def getMessages(request, message_id=None): try: roomname = request.REQUEST['roomname'] except: return HttpResponseForbidden("Unauthorized access!") try: start_id = request.REQUEST['start_id'] except: start_id = None info = {} cm = ChatMessages() cr = ChatRoom() try: info['messages'] = cm.getMessages(roomname=roomname, start_id=start_id) info['users'] = cr.getUsers(roomname) except: return HttpResponseServerError("Server Error!") json_data = simplejson.dumps(info) response = HttpResponse(json_data) response['Cache-Control'] = 'no-store, no-cache, private, must-revalidate' return response
def sendMessage(request): sent_message = {} # Get request parameters try: sent_message['roomname'] = request.REQUEST['roomname'] sent_message['postedby'] = request.REQUEST['postedby'] sent_message['message'] = request.REQUEST['message'] sent_message['dateposted'] = datetime.utcnow() except: return HttpResponseForbidden("Unauthorized access!") try: start_id = request.REQUEST['start_id'] except: start_id = None cm = ChatMessages() cr = ChatRoom() users = [] messages = [] try: cm.saveMessage(sent_message) cr.update(sent_message) users = cr.getUsers(sent_message['roomname']) messages = cm.getMessages(roomname=sent_message['roomname'], start_id=start_id) except: return HttpResponseServerError("Server Error!") # convert date to string isoformat for return sent_message['dateposted'] = sent_message['dateposted'].isoformat(' ') info = {} info['msg_sent'] = sent_message info['users'] = users info['messages'] = messages json_data = simplejson.dumps(info) response = HttpResponse(json_data) response['Cache-Control'] = 'no-store, no-cache, private, must-revalidate' return response