diff --git a/biscuit/apps/untis/util.py b/biscuit/apps/untis/util.py
index a2f4c762d6974ac8878eb4178790e69c13abacaa..8ec19df60bbb70072ae76167f72813b2947eafef 100644
--- a/biscuit/apps/untis/util.py
+++ b/biscuit/apps/untis/util.py
@@ -97,11 +97,15 @@ def untis_import_xml(request, untis_xml):
         for time_node in times:
             day = int(get_child_node_text(time_node, 'assigned_day'))
             period = int(get_child_node_text(time_node, 'assigned_period'))
-            time_periods.append((day, period))
+
+            room_id = get_child_node_id(time_node, 'assigned_room')
+            room = room_id[3:] if room_id else None
+
+            time_periods.append((day, period, room))
 
         subject = Subject.objects.get(abbrev=subject_abbrev)
-        periods = [TimePeriod.objects.get(
-            weekday=v[0], period=v[1]) for v in time_periods]
+        periods = [(TimePeriod.objects.get(
+            weekday=v[0], period=v[1]), Room.objects.get(short_name=v[2]) if v[2] else None) for v in time_periods]
         date_start = date(int(effectivebegindate[:4]), int(effectivebegindate[4:6]), int(
             effectivebegindate[6:])) if effectivebegindate else None
         date_end = date(int(effectiveenddate[:4]), int(effectiveenddate[4:6]), int(
@@ -126,6 +130,9 @@ def untis_import_xml(request, untis_xml):
             subject=subject, date_start=date_start, date_end=date_end)
 
         lesson.groups.set(groups)
-        lesson.periods.set(periods)
         lesson.teachers.set(teachers)
+
+        for period in periods:
+            lesson.periods.add(period[0], through_defaults={'room': period[1]})
+
         lesson.save()