Describes one message to be placed into a running session at a stated
point, as an experimental manipulation: an objection, a correction, a
piece of news. The message is logged like any other, with
metadata$injected = TRUE and an injection record giving its label, arm,
point, sender, visibility, and the message_id it follows.
Usage
fg_injection(
text,
at,
from = "moderator",
visibility = c("shared", "participants"),
label = NULL
)Arguments
- text
One non-empty string, the message.
- at
Where the message goes:
fg_after_item(),fg_before_turn(), or"before_closing". When an injection and a probe share a point, the probe is asked first.- from
"moderator", a participant's id or handle, or the name of an outside speaker.- visibility
"shared"or"participants".- label
Optional name for the injection in the records; by default the arm's name in
run_focus_group_arms(), and"injection_1","injection_2", ... inrun_focus_group().
Details
A message from = "moderator" is logged under the moderator's id, so the
moderator reads it as its own line; so is a message from the moderator's
id or handle. A message from a participant's id or handle (the handle in
any case) is that participant's turn: at fg_before_turn(t) the
participant says text as turn t, with no model call. It is logged
under the participant's id with metadata$as_turn = TRUE, recorded in the
routing record with the rule "injected", and counted as a participant
turn, and it takes the place of the turn the session was about to give:
the flow's pick, an addressed turn, or the reply to a call-on line, after
which the moderator calls on the next silent participant. A line from
someone other than the participant called on takes no one's place: the
participant called on still answers next. The record's replaced names
which turn was taken, or "none". Such a message is allowed only at
fg_before_turn(), with visibility = "shared", and once per point. A
from that is one participant's id and another's handle, as under
permuted handles, could mean either and stops the run before any call. Any
other from names an outside voice, such as "Guest expert", logged
under that name and shown to the agents as written; it may not be
"System", nor a name of the form "P4", which would read as a
participant's handle. A moderator message that puts its last question to
one participant by handle ("P2, what do you make of that?") gives that
participant the next turn, except at a turn that answers the moderator's
call-on line, which stays with the participant called on.
With visibility = "shared" the message enters the shared log and every
agent sees it from then on. With visibility = "participants" it is kept
out of the moderator's prompts and out of interim summaries, which the
moderator also reads; the participants see it as part of the discussion.
Examples
fg_injection(
"One study found that extended hours cost more than they return.",
at = fg_after_item(4), from = "Guest expert")
#> <fg_injection> fg_after_item(4) from Guest expert (shared)
#> One study found that extended hours cost more than they return.
