more fixes
This commit is contained in:
parent
491dc6c569
commit
64ec9972be
|
@ -49,13 +49,12 @@ roomDataHandler ::
|
|||
roomDataHandler = do
|
||||
newRoomData <- parseBodyOrBadRequest
|
||||
liftIO $ putStrLn "Got triggered from prosody"
|
||||
whenM (roomStateDiffers newRoomData) $ do
|
||||
(openedRooms, closedRooms) <- setRoomDataState newRoomData
|
||||
(openedRooms, closedRooms) <- setRoomDataState newRoomData
|
||||
|
||||
mapM_ notifyRoomOpend openedRooms
|
||||
mapM_ notifyRoomClosed closedRooms
|
||||
mapM_ notifyRoomOpend openedRooms
|
||||
mapM_ notifyRoomClosed closedRooms
|
||||
|
||||
broadcastUserData
|
||||
broadcastUserData
|
||||
success
|
||||
|
||||
parseBodyOrBadRequest ::
|
||||
|
|
|
@ -26,16 +26,23 @@ class HasRoomsState a where
|
|||
updateRoomState ::
|
||||
( HasRoomsState env,
|
||||
MonadIO m,
|
||||
MonadReader env m
|
||||
MonadReader env m,
|
||||
MonadRoomDataStateRead m
|
||||
) =>
|
||||
RoomsData ->
|
||||
m RoomsStateDiff
|
||||
updateRoomState newData = do
|
||||
state <- getRoomsState <$> ask
|
||||
liftIO $ putStrLn "Upating room state"
|
||||
diff <- updateGenericTVarStateWithQuery state roomStateDiff newData
|
||||
liftIO $ putStrLn "Done Upating room state"
|
||||
return diff
|
||||
current <- getRoomDataState
|
||||
if not $ eqIgnoreOrdering newData current
|
||||
then
|
||||
( do
|
||||
liftIO $ putStrLn "Upating room state"
|
||||
diff <- updateGenericTVarStateWithQuery state roomStateDiff newData
|
||||
liftIO $ putStrLn "Done Upating room state"
|
||||
return diff
|
||||
)
|
||||
else return ([], [])
|
||||
|
||||
getRoomState ::
|
||||
( HasRoomsState env,
|
||||
|
|
Loading…
Reference in a new issue