Closed mehtank closed 3 years ago
@mehtank Looking over this code, is there a particular reason you chose an API with specific actions like raiseHand
and archiveRoom
instead of the generic roomEdit
/tabEdit
interface that the methods use internally? It seems like the latter would be easier to maintain, and safe given our plan to require the meeting secret for all methods (and frankly exactly what's available in the browser anyway). The only downside is a somewhat less intuitive API, but I think easy enough...?
@mehtank Looking over this code, is there a particular reason you chose an API with specific actions like
raiseHand
andarchiveRoom
instead of the genericroomEdit
/tabEdit
interface that the methods use internally?
"Historical artifact" -- when I started on this, my main use case was to enable easy archiving of a whole bunch of rooms at once (to save on UI clicks). No idea why I didn't just unify it into a single edit endpoint when I added the raising / lowering hand bit later. I agree that a single roomEdit / tabEdit API call is better.
Oh I did unify them later over in the tags branch #135 (commit 4197733ddef6d3e75c80bd70f46067b0d5711616)
@mehtank I did a major rewrite of the API (and a lot of the methods). Do you want to review it before it gets merged, to make sure it does everything you want? (sans tags for now) Notably, you can do cool match + edit queries like tabEdit
with body {"tabs":{"meeting":"blahblah","archived":false}, "archived":true}
— this matches all unarchived tabs and makes them archived. Could use documentation...
Partially addresses #125