private void MatrixClient_OnEvent(string roomid, MatrixEventRoomJoined joined) { MatrixRoom mroom; if (!_rooms.ContainsKey(roomid)) { mroom = new MatrixRoom(api, roomid); _rooms.TryAdd(roomid, mroom); //Update existing room } else { mroom = _rooms [roomid]; } joined.state.events.ToList().ForEach(x => { mroom.FeedEvent(x); }); joined.timeline.events.ToList().ForEach(x => { mroom.FeedEvent(x); }); mroom.SetEphemeral(joined.ephemeral); }
internal void FireRoomJoinEvent(string room, MatrixEventRoomJoined evt) => RoomJoinEvent?.Invoke(this, new RoomJoinEventArgs() { Room = room, Event = evt });