Luna
633cd730c0
guilds: add basic vanity urls
...
- add vanity_invites table
2019-03-13 04:28:23 -03:00
Luna
0dbfb3a210
admin_api.features: dispatch GUILD_UPDATE on feature changes
...
- storage: fix typing on get_guild_full
2019-03-13 04:09:43 -03:00
Luna
16e583179c
schemas: fix coerce
...
- run: change features_admin base to /admin/guilds
2019-03-11 02:12:09 -03:00
Luna
4bb3cad43e
migration.scripts: add NOT NULL and DEFAULT to guilds.features
2019-03-11 02:04:07 -03:00
Luna
87781c4606
admin_api.features: remove unused import
2019-03-11 01:45:49 -03:00
Luna
65b4b28d89
schemas: use coerce to Feature instead of guild_features type
...
cleaner to write code for.
- admin_api.features: support that
2019-03-11 01:43:11 -03:00
Luna
c325543242
enums: move Feature to EasyEnum
...
- schemas: add validator for guild_features type
2019-03-11 01:40:18 -03:00
Luna
2c1c384409
admin_api.features: make features input as a list
...
- add PATCH /:id/features
- enums: add Feature enum
- schemas: add FEATURES
- storage: add Storage.guild_features
- types: add return type to timestamp_
2019-03-11 01:36:52 -03:00
Luna
073f47e0f5
add draft for features_admin and add guilds_admin
2019-03-09 04:09:55 -03:00
Luna
a04b3acfaa
storage: add guild.features in get_guild
...
- remove features and guild_features tables
2019-03-09 03:27:12 -03:00
Luna
fa73e90170
Merge branch 'voice' into 'master'
...
Voice: Basics
See merge request litecord/litecord!24
2019-03-09 01:59:22 +00:00
Luna
1bf59e3106
lvsp: remove sequence numbers
...
thinking about it guaranteeing consistency via sequence numbers isn't
really needed when we already have Litecord as a single source of
truth.
plus, it keeps the protocol simple.
2019-03-06 04:04:00 -03:00
Luna
76a8038cb4
lvsp: add docs for voice state create and destroy
...
finishes all TODOs.
2019-03-06 03:47:40 -03:00
Luna
b8c3208fa4
lvsp: remove CHANNEL_UPDATE
...
bitrate is a client thing. lol
- lvsp: remove ChannelProperties, same applies to CHANNEL\_REQ
- voice.manager: remove channel\_properties
2019-03-06 02:19:28 -03:00
Luna
b8f5e01106
lvsp: add CHANNEL_REQ.token
2019-03-06 00:44:16 -03:00
Luna
a846c57ae8
storage: inject message.member field
...
required some changes around how we fetch data from the members table,
but it works
2019-03-05 18:31:33 -03:00
Luna
7b4aaabcbf
storage: better fix for message.webhook_id
...
the old fix only works for the return value in message create, where as
it should be in Storage.get_message instead so that the bug doesn't
happen to the other routes
2019-03-05 16:30:38 -03:00
Luna
67ae2385b5
Merge branch 'master' into voice
2019-03-05 16:27:31 -03:00
Luna
899f19b24c
gateway.websocket: fix some errors
...
right now requesting a voice channel won't return ANY voice events back
to the client, causing a visual/behavioral "lock" on the official
client, since there isn't any available voice servers.
2019-03-05 01:35:17 -03:00
Luna
30d9520935
lvsp: remove TODO
2019-03-05 01:18:53 -03:00
Luna
d21b3c8f2a
lvsp: add "common logic scenarios"
2019-03-05 00:59:37 -03:00
Luna
579a71dd9b
lvsp_conn: add basic INFO handling for channel assign
...
- lvsp: finish defining data for channel info messages
- lvsp_conn: add send_info()
- lvsp_opcodes: add InfoTable, InfoReverse
- voice.manager: handle channels without bitrate
2019-03-04 22:46:09 -03:00
Luna
00100f9abb
voice.manager: add VST_REQ call
2019-03-04 21:32:04 -03:00
Luna
e2af6b6370
voice: more voice goodies
...
- lvsp manager: change internal structure of lvsp conns
- voice.manager: add incomplete impl for creating a channel
2019-03-04 20:46:14 -03:00
Luna
9dab5b20ae
typing, episode 2
2019-03-04 15:48:51 -03:00
Luna
ed3c436b6d
channels, guild.roles, user.billing: typing fixes
2019-03-04 15:19:05 -03:00
Luna
68c6442375
storage: fix more type hints, handle None on more places
2019-03-04 15:12:38 -03:00
Luna
bbf80f72b1
fix tests and an ugly circular import
2019-03-04 05:24:40 -03:00
Luna
d91030a2c1
typings, episode 1
...
(i installed mypy and its beautiful)
2019-03-04 05:09:04 -03:00
Luna
506bd8afbe
pipenv: add mypy
2019-03-04 04:30:27 -03:00
Luna
627d87b4a7
lvsp_conn: remove unused var
2019-03-04 03:20:34 -03:00
Luna
0759a52046
pubsub.lazy_guild: s/pop/remove on remove_channel
2019-03-04 03:16:28 -03:00
Luna
ad7f93b40a
add guild.region = null consistency checker
...
as soon as a voice region is added, we should move all guilds to it. or
if there are any guilds with a NULL region, we select one at random.
region being NULL causes the client to be unable to change it, so..
- channels: fix update handlers for guild channels
2019-03-04 03:00:46 -03:00
Luna
336f3a6eaf
lvsp_conn: handle errors when connecting to voice server
2019-03-04 01:29:14 -03:00
Luna
9d80cb5564
admin_api.voice: handle UniqueViolationError
2019-03-04 01:26:53 -03:00
Luna
2d7dc05453
lvsp_manager: fix bug when fetching regions
2019-03-04 01:22:18 -03:00
Luna
4a792966f1
voice: fix bugs
2019-03-04 01:21:06 -03:00
Luna
547353e8a5
admin_api.voice: remove unused vars
2019-03-04 00:48:32 -03:00
Luna
cb029b36e3
add admin api (w/ voice endpoints)
...
- add docs/admin_api.md
- add litecord.voice_schemas
- auth: add admin_check
- voice.manager: add VoiceManager.voice_server_list
2019-03-04 00:37:56 -03:00
Luna
b71aec5aa1
add basic LVSP client implementation
2019-03-03 20:16:17 -03:00
Luna
7fdb74370e
add better implementation for GET /voice/region
...
this takes account of:
- the majority region selected in all the guilds the user owns. if that
fails:
- the majority region on all the guilds the user is in. if that fails:
- random region
- storage: add Storage.all_voice_regions
2019-03-03 18:57:54 -03:00
Luna
42cd0ae12c
lvsp_manager: handle no region case
2019-03-03 18:41:27 -03:00
Luna
9d853f0bda
lvsp_manager: add basic region spawn code
2019-03-03 18:40:35 -03:00
Luna
287678331d
add voice_regions, voice_servers, and guild.region foreign key
2019-03-03 18:11:11 -03:00
Luna
287368ad1c
litecord.voice: add LVSPManager, LVSPConnection
2019-03-03 04:30:41 -03:00
Luna
62d1252975
lvsp: remove VST REQUEST in favour of a generic INFO message
...
- lvsp: add sequence numbers
- lvsp: add health scoring on heartbeats and ready
- lvsp: change info table to allow for generic actions
2019-03-03 02:40:39 -03:00
Luna
307feacc78
gateway.websocket, voice.manager: quickfixes
2019-03-03 00:13:32 -03:00
Luna
3a6073468e
rm litecord/voice/utils.py
2019-03-03 00:05:33 -03:00
Luna
c6aea0b7b1
gateway.websocket: rewrite op 4 handler
...
mostly we moved the permission checks from the websocket to the voice
manager.
- voice.manager: add leave_all(), leave()
- voice.state add VoiceState.guild_id, VoiceState.key
2019-03-03 00:04:08 -03:00
Luna
e818551d16
Merge branch 'hotfix-icons-history' into 'master'
...
fix embeds, emotes, history and other stuff
See merge request litecord/litecord!22
2019-03-01 23:46:32 +00:00