def send_message(request): """ --- request_serializer: MessageSendSerializer response_serializer: MessageSerializer responseMessages: - code: HTTP_DOES_NOT_EXIST message: doesn't exist """ sdata = get_validated_serializer(request=request, serializer=MessageSendSerializer).validated_data user = get_user_from_validated_data(sdata) chat = Chat.objects.filter(Q(dialogrelations__user_1=user) | Q(dialogrelations__user_2=user)).filter(id=sdata['chat'].pk).first() if chat is None: return Response("", status=HTTP_DOES_NOT_EXIST) message = Message() message.chat = chat message.sender = user message.text = sdata['text'] message.save() TCP_IP = 'localhost' TCP_PORT = 43455 import json MSG = json.dumps(MessageContainerSerializer({ "message_type":1, "message_data":message}).data) s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((TCP_IP, TCP_PORT)) s.send(MSG) print MSG s.close() return Response(MessageSerializer(message).data, status=HTTP_OK)
def SendMessageView(request, pk): if request.method == 'POST': chat = get_object_or_404(Chat, pk=pk) text = request.POST.get('text') if text == '': return HttpResponseRedirect(reverse('chat:open_chat', args=(pk, ))) message = Message() message.chat = chat message.text = text message.author = get_object_or_404(Profile, user=request.user) message.save() return HttpResponseRedirect(reverse('chat:open_chat', args=(pk, )))