def create_meeting(meetingData: MeetingType): """ Create a new meeting. """ try: meeting = Meeting() meeting.validate(meetingData) meeting = Meeting.create(**dump_schema(meetingData)) headers = {"Content-Location": f"/v1/meetings/{meeting.id}"} msg = "Meeting created successfully." log.info(f"{msg} with id: {meeting.id}") return HTTP_201, {"message": f"{msg}"}, headers except ValidationError as error: log.error(f"ValidationError: {error}") raise HTTPError(HTTP_400, {"errors": str(error)}) except ConflictError as error: log.error(f"ConflictError: {error}") raise HTTPError(HTTP_409, {"errors": str(error)})
def meeting(room): meeting_data = { "title": fake.text(60), "date_start": fake.iso8601(), "date_end": fake.future_datetime(end_date="+10m").isoformat(), "owner": fake.name(), "room_id": room.get("id"), } meeting = Meeting.create(**meeting_data) yield meeting.serialize() meeting.delete()
def create_meeting(*, initiator_id: int, companion_id: int) -> Meeting: return Meeting.create(initiator_id=initiator_id, companion_id=companion_id)