Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Dialogue 2.0 specification: Difference between revisions

From MoodleDocs
No edit summary
Line 6: Line 6:
| Status
| Status
| '''Draft'''
| '''Draft'''
|-
| Tracker
| http://tracker.moodle.org/browse/CONTRIB-2059 | CONTRIB-2059
|}
|}



Revision as of 04:21, 3 September 2010

This page tracks and summarises the progress of rewrite of the Dialogue module for Moodle 2.0. Moodle 2.0


Dialogue 2.0 specification
Status Draft
Tracker CONTRIB-2059

Introduction

The Dialogue module allows students or teachers to start two-way dialogues with another person. They are course activities that can be useful when the teacher wants a place to give private feedback to a student on their online activity. For example, if a student is participating in a language forum and made a grammatical error that the teacher wants to point out without embarrassing the student, a dialogue is the perfect place. A dialogue activity would also be an excellent way for counsellors within an institution to interact with students - all activities are logged and email is available but not necessarily required.

Usage scenarios

  • Teacher sends same course welcome message to all students in “Course A” including future students. Not other roles. Multiple messages.
  • Teacher sends same group welcome message to all members of “Group A” including future members. All roles in “Group A”. Multiple messages.
  • Teacher sends same message to some students. Multiple messages.
  • A Teacher can send “Message” to a student. Student can view but not respond. Single user message.
  • A Student can send “Message” to a Teacher. But not to other students. Single user message.
  • Teacher A leaves, Teacher B needs to close a Dialogue that posts to all Students.
  • A specific Student (eg Class Rep with specified role) can send a “Message” to all students. Ongoing conversation allowed.
  • A Student can send a “Message” to a specific students (eg Class Rep with specified role). Ongoing conversation allowed.
  • All Teachers can view and participate in any existing conversation in a shared teaching situation.

Design goals

User interface mock-ups

Dialogue listing

Dialogue view

Dialogue new

Recipient picker

Implementation plan

Database structures

dialogue

Field Type Default Description Notes
id int (10) auto-numbered
course int (10) 0 the course id this dialogue
intro text (medium) the description/assignment of the workshop
introformat int (3) 0 the format of the intro field
timemodified int (10) 0 the timestamp when the module was modified
edittime int (10) 0
maxattachments int (3) 1 number of attachments
maxbytes int (10) 100000 maximum size of the one attached file

Capabilities and Permissions

Capability Description Role permissions(defaults) Notes
mod/dialogue:open Open a dialogue with single recipient teacher
mod/dialogue:receive Can receive a dialogue student Can be used to control what roles are displayed in the recipient picker
mod/dialogue:reply Can reply to a dialogue teacher, student
mod/dialogue:closeown Can close a dialogue if have ownership teacher, student
mod/dialogue:deleteown Can delete a dialogue if have ownership teacher, student
mod/dialogue:deleteownreply Can delete own reply teacher, student Add ability to delete last reply in dialogue thread. Maybe/Maybe not?
mod/dialogue:openmultiple Can start a dialogue with multiple recipients teacher For sending the same dialogue to multiple recipients. Used for targeting particular group(s) of users or whole class.
mod/dialogue:viewany TO-DO TO-DO
mod/dialogue:replyany TO-DO TO-DO
mod/dialogue:closeany TO-DO TO-DO
mod/dialogue:deleteany TO-DO TO-DO

Group API

File API

File manager

Messaging API

Setup messageprovider for routing posts.

Event API

user_enrolled()

Can be used for any automated opening of dialogues for new course participants when all participants were selected in a multi-open dialogue.

groups_member_added()

Can be used for any automated opening of dialogues for new group members when group(s) were elected in a multi-open dialogue.

user_unenrolled()

Cleanup function, delete any dialogues that user is a recipient.

Navigation functions

dialogue_extend_navigation($navref, $course, $module, $cm)

Can use for dialogue unread count, filters(All, Unread, Read e.t.c) providing direct linking.

dialogue_extend_settings_navigation(settings_navigation $settingsnav, navigation_node $dialoguenode)

???

Logging

Translations