diff --git a/litecord/blueprints/channel/messages.py b/litecord/blueprints/channel/messages.py index fd8a060..cd978eb 100644 --- a/litecord/blueprints/channel/messages.py +++ b/litecord/blueprints/channel/messages.py @@ -407,6 +407,9 @@ async def _create_message(channel_id): await _dm_pre_dispatch(channel_id, user_id) await _dm_pre_dispatch(channel_id, guild_id) + if payload['webhook_id'] == None: + payload.pop('webhook_id', None) + await app.dispatcher.dispatch('channel', channel_id, 'MESSAGE_CREATE', payload) diff --git a/litecord/embed/schemas.py b/litecord/embed/schemas.py index 2e17bea..61452c6 100644 --- a/litecord/embed/schemas.py +++ b/litecord/embed/schemas.py @@ -46,7 +46,7 @@ class EmbedURL: EMBED_FOOTER = { 'text': { - 'type': 'string', 'minlength': 1, 'maxlength': 128, 'required': True}, + 'type': 'string', 'minlength': 1, 'maxlength': 1024, 'required': True}, 'icon_url': { 'coerce': EmbedURL, 'required': False, @@ -65,7 +65,7 @@ EMBED_THUMBNAIL = EMBED_IMAGE EMBED_AUTHOR = { 'name': { - 'type': 'string', 'minlength': 1, 'maxlength': 128, 'required': False + 'type': 'string', 'minlength': 1, 'maxlength': 256, 'required': False }, 'url': { 'coerce': EmbedURL, 'required': False, @@ -79,10 +79,10 @@ EMBED_AUTHOR = { EMBED_FIELD = { 'name': { - 'type': 'string', 'minlength': 1, 'maxlength': 128, 'required': True + 'type': 'string', 'minlength': 1, 'maxlength': 256, 'required': True }, 'value': { - 'type': 'string', 'minlength': 1, 'maxlength': 128, 'required': True + 'type': 'string', 'minlength': 1, 'maxlength': 1024, 'required': True }, 'inline': { 'type': 'boolean', 'required': False, 'default': True, @@ -91,10 +91,10 @@ EMBED_FIELD = { EMBED_OBJECT = { 'title': { - 'type': 'string', 'minlength': 1, 'maxlength': 128, 'required': False}, + 'type': 'string', 'minlength': 1, 'maxlength': 256, 'required': False}, # NOTE: type set by us 'description': { - 'type': 'string', 'minlength': 1, 'maxlength': 1024, 'required': False, + 'type': 'string', 'minlength': 1, 'maxlength': 2048, 'required': False, }, 'url': { 'coerce': EmbedURL, 'required': False, diff --git a/litecord/types.py b/litecord/types.py index 38888e9..1a845f8 100644 --- a/litecord/types.py +++ b/litecord/types.py @@ -37,6 +37,10 @@ class Color: """Give the actual RGB integer encoding this color.""" return int('%02x%02x%02x' % (self.red, self.green, self.blue), 16) + @property + def to_json(self): + return self.value + def __int__(self): return self.value