In precise lernid no longer follows url's posted by non-faculty (like classbot) in the classroom while it is moderated

Bug #925756 reported by John S. Gruber
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Lernid
Fix Released
Medium
John S. Gruber
lernid (Ubuntu)
Fix Released
Medium
Unassigned
Precise
Fix Released
Medium
Unassigned

Bug Description

For precise, 12.04, the following message is produced:

DEBUG:root:could not acess "moderated" property: 'org.freedesktop.Telepathy.Properties'

The problem appears to be a key error returned on 'org.freedesktop.Telepathy.Properties', so the interace has apparently changed.

http://telepathy.freedesktop.org/doc/telepathy-glib/telepathy-glib-interfaces.html may be of help with its moderated property, TP_PROP_CHANNEL_INTERFACE_ROOM_CONFIG_MODERATED

Tags: 12.04 precise

Related branches

Revision history for this message
Mohammad AbuShady (coalwater) wrote :

In the file lernid/IrcBackend:

def is_moderated(self):
   try:
       return bool(self._chan[PROPERTIES_INTERFACE].GetProperties([3])[0][1])
    except Exception, e:
       logging.debug('could not acess "moderated" property: {0}'.format(e))
    return False

Shouldnt the property be called by name not by index? I don't have precise yet so i can't tell what the problem might be.

Revision history for this message
John S. Gruber (jsjgruber) wrote :

Getting it all by name rather than index would have been better, but I didn't see a way to do that.

In any case, the whole interface PROPERTIES_INTERFACE seems to have gone missing from the python binding. I haven't figured out why.

Changed in lernid (Ubuntu):
status: New → Confirmed
Changed in lernid (Ubuntu):
assignee: nobody → John S. Gruber (jsjgruber)
Changed in lernid:
assignee: nobody → John S. Gruber (jsjgruber)
Changed in lernid:
assignee: John S. Gruber (jsjgruber) → nobody
Changed in lernid (Ubuntu):
assignee: John S. Gruber (jsjgruber) → nobody
Revision history for this message
John S. Gruber (jsjgruber) wrote :

From what I can tell, the moderation flag has been moved to a whole new interface, one not supported by python-telepathy. python-telepathy hasn't been updated in a while (possibly due to the move to introspection).

During a learning session, instructor nicknames get corrected, and, in some cases new instructors are assigned. Classes also move around. Lernid had been relying on knowing that the classroom was moderated as an alternative to knowing exactly who should be instructing the class.

Allowing anyone, at anytime, to direct lernid to display arbitrary web sites seems dangerous, possibly leading to phishing. Using moderation to piggy back on the usual IRC controls over voicing is no longer a feasible option.

Changed in lernid (Ubuntu Precise):
importance: Undecided → Medium
milestone: none → ubuntu-12.04.1
milestone: ubuntu-12.04.1 → precise-updates
Revision history for this message
John S. Gruber (jsjgruber) wrote :
Revision history for this message
John S. Gruber (jsjgruber) wrote :

Fix testing:

The following are the steps needed to use an alternate classroom and an alternate calendar that the person
conducting the test can change.

Download the test.lernid configuration file and the lernid-test-calendar.ics
files.

Edit the test.lernid file to point to the calendar file on your system.

Use a IRC client to connect to irc.ubuntu.com

/join ##lernid-test

/mode +m to make the test room moderated.

(This must be done before starting lernid).

Bring up the test lernid under precise: lernid -v --config /path-to/test.lernid

Lernid will offer to connect you to
Ubuntu-lernid-test. Connect. If the name is wrong the lernid command above
is wrong or the config file can't be found. After connecting the "Lernid Test"
session will start and will appear in the Schedule tab. If this doesn't happen
the config doesn't properly point to the calendar.

In your IRC client enter http://google.com .

Under oneiric the web browser in the Session tab would display the google
page since the ##lernid-test room is moderated. Under precise it will not
because to moderated flag is inaccessible at the old interface telepathy
used in oneiric and before.

Edit the calendar to change the Instructor to your irc name. The calendar has
only one entry and the Instructor field is part of the Description.

Wait at least 3 minutes for lernid to discover the change to the calendar.

Check the Schedule tab to be sure that it changes lernid-bug-test to your
name.

After it does, go back to your irc client and enter http://google.com
This should be displayed in bold this time, and the web page should come
up in the Session tab.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lernid - 0.8.2.2ubuntu2

---------------
lernid (0.8.2.2ubuntu2) precise; urgency=low

  * Prepare for application to Ubuntu (universe)

lernid (0.8.2.2ubuntu2~testlernidppa2) precise; urgency=low

  * Dynamically load the schedule each minute at 5 seconds past the minute
    Addresses LP: #925756

  * Slide.py have poppler render to a cairo surface and use a trick to
    get that into the pixmap. (LP: #972069)
    (Technique from diogodivision's "BlingSwitcher" through
    http://www.mikedesjardins.net. Thank you.)
 -- John S Gruber <email address hidden> Thu, 12 Apr 2012 11:38:30 -0400

Changed in lernid (Ubuntu Precise):
status: Confirmed → Fix Released
Changed in lernid:
assignee: nobody → John S. Gruber (jsjgruber)
milestone: none → 0.8.5
Changed in lernid:
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.