def create_message_handler(data): message = Message(comment=data['message']['comment'], author=session.user, room_id=data['room']['id']) db.session.add(message) db.session.commit() emit('newMessage', message.serialize(), room=data['room']['name'])
def test_CreateMessage_CreatesInstance(self): # Create Message instance chat = Chat.objects.get(pk=1) message = Message(chat=chat) message.save() self.assertIsInstance(message, Message)
def test_CreateLeaveMessage_PrintsMessage(self): # Create Leave Message chat = Chat.objects.get(pk=1) user = User.objects.get(pk=1) message = Message(chat=chat, author=user, type=MESSAGE_TYPES['leave']) message.save() self.assertEqual(unicode(message), "User 'test1' has left the chat.")
def test_xss_messages(self): self.login('tim', 'password') payload = '<script>alert(42)</script>' msg = Message(comment=payload, user=g.user) db.session.add(msg) db.session.commit() rv = self.client.get('/messages', follow_redirects=True) self.assertNotIn(payload, rv.data, 'XSS payload reflected in the response.')
def chat_update(request, game_id): chat = Chat.objects.get(pk=game_id) # Update chat state with users message message = Message( chat=chat, author=request.user, message=request.POST['message'], ) message.save()
def test_CreateNotificationMessage_PrintsMessage(self): # Create Notification Message chat = Chat.objects.get(pk=1) message = Message(chat=chat, type=MESSAGE_TYPES['notification'], message=u'This is a notification.') message.save() self.assertEqual( unicode(message), u'This is a notification.', )
def post(self): jsonobj = request.get_json(force=True) comment = jsonobj.get('message') if not comment: abort(400, 'Invalid request.') message = Message(comment=comment, author=g.user) db.session.add(message) db.session.commit() result = message.serialize() resp = jsonify(result) resp.mimetype = 'text/html' return resp
def post(self): jsonobj = request.get_json(force=True) message = jsonobj.get('message') if message: msg = Message(comment=message, user=g.user) db.session.add(msg) db.session.commit() messages = [ m.serialize() for m in Message.query.order_by(Message.created.desc()).all() ] return {'messages': messages}
def test_CreateMessage_PrintsMessage(self): # Create Message chat = Chat.objects.get(pk=1) user = User.objects.get(pk=1) message = Message(chat=chat, author=user, message=u'This is a message.') message.save() self.assertEqual( (u'[%s]: %s' % (message.author, unicode(message))), u'[test1]: This is a message.', )
async def crawl_messages_once(slacker: Slacker, logger: Logger) -> None: base_url = f"http://{config.DB_URL}/" # get messages and insert them into database ch_info = await slacker.get_channels_list() or [] if ch_info: for ch_id, ch_name in ch_info: logger.debug(f"Channel: {ch_name}") prev_date = datetime.now() - timedelta( days=config.MESSAGE_DELTA_DAYS) messages = await slacker.get_channel_messages(ch_id, prev_date) if messages: try_request(logger, r.put, base_url + "message/", data=json.dumps([x.dict() for x in messages], cls=TimerEncoder)) logger.info( f"Messages from {len(ch_info)} channels parsed and sent to the database." ) channels_point = Point("workspace").field("channels", len(ch_info)).time( datetime.utcnow()) # update messages without permalinks answer = try_request(logger, r.get, base_url + "message/linkless") if answer.is_err(): return answer = answer.value empty_links_messages = [Message(**x) for x in answer.json()] if empty_links_messages: messages = await slacker.update_permalinks( messages=empty_links_messages) answer = try_request(logger, r.patch, base_url + "message/links", data=json.dumps([x.dict() for x in messages], cls=TimerEncoder)) if answer.is_ok(): logger.debug(f"Updated permalinks for {len(messages)} messages.") linkless_messages_point = Point("workspace").field( "linkless_messages", len(empty_links_messages)).time(datetime.utcnow()) INFLUX_API_WRITE([linkless_messages_point, channels_point])
def messages_create(): message = request.form['message'] msg = Message(comment=message, user=g.user) db.session.add(msg) db.session.commit() return redirect(url_for('core.messages'))
def messages_create(): message = request.form['message'] msg = Message(comment=message, author=g.user, room=Room.query.first()) db.session.add(msg) db.session.commit() return redirect(url_for('core.messages'))