Skip to content

Releases: jobrachem/alfred3-interact

alfred3_interact v0.1.4

18 May 16:51
Compare
Choose a tag to compare

(Combined release)

alfred3-interact v0.1.4 (Released 2021-05-18)

Fixed v0.1.4

  • Version v0.1.3 introduced a bug on the MatchingPage: The page did not
    correctly hide its navigation buttons. This update fixes the bug.

alfred3-interact v0.1.3 (Released 2021-05-18)

Changed v0.1.3

  • Improved cooperation of two MatchMakers in one experiment (#4)
  • Improved robustness of groupwise matching (#3)

alfred3-interact v0.1.2

14 May 18:20
Compare
Choose a tag to compare

Added

  • alfred3_interact.Chat gains the new parameter you_label.
  • alfred3_interact.WaitingPage gains the parameters wait_timeout_page
    and wait_exception_page, thereby allowing users to customize the
    pages shown to participants if the experiment is aborted while waiting.

Fixed

  • Decryption of loaded messages in chat element
  • In some corner cases, the chat element displayed the same message
    twice. This release fixes this bug.

alfred3 v0.1.1

21 Apr 11:58
Compare
Choose a tag to compare

alfred3_interact v0.1.1 (Released 2021-04-21)

Fixed

  • The HTML and JavaScript templates used in the package were not correctly
    added to the package, so that the package distributed via pypi did
    not work. This release fixes that problem.

alfred3-interact v0.1.0

20 Apr 06:55
Compare
Choose a tag to compare

alfred3-interact: Interactive web-experiments in alfred3

Alfred3-interact is a plugin for alfred3.
It allows for the creation of interactive web experiments, predominantly
in the social sciences. As prerequisites,
you need to have Python 3.7 or newer and alfred3 v2.0 or newer installed.

Installation

$ pip3 install alfred3_interact

Documentation

Documentation for alfred3_interact is avaialable here: Link to docs

Quick example

Below is an example script.py for creating an experiment with an
asynchronous exchange of data between participants via stepwise matching:

  1. Initialize the MatchMaker during experiment setup
  2. Find a group via MatchMaker.match_stepwise and bind it to the
    experiment plugins object.
  3. Now the group object is available in sections, pages, and elements
    through the experiment session object. You can use it to access data
    from other participants in the same group.

Note: While match_stepwise has its main purpose in asynchronous interactive
experiments, you can still include WaitingPages to synchronize group
members. Refer to the documentation for the WaitingPage class for more
guidance.

# script.py
import alfred3 as al
import alfred3_interact as ali

exp = al.Experiment()

@exp.setup
def setup(exp):
    mm = ali.MatchMaker("role1", "role2", exp=exp)
    exp.plugins.group = mm.match_stepwise()


@exp.member
class Success(al.Page):
    title = "Match successful"

    def on_exp_access(self):
        group = self.exp.plugins.group
        
        txt = f"You have successfully matched to role: {group.me.role}"
        self += al.Text(txt, align="center")

if __name__ == "__main__":
    exp.run()

The demo experiment can be started by executing the following command
from the experiment directory (i.e. the directory in which you placed
the script.py):

$ alfred3 run