Pular para o conteúdo principal

FV Decipher Support

Todos os tópicos, recursos necessários para FV Decipher.

Base de Conhecimento da FocusVision

Customizing the Quester Interactive Text Box Element

1:  Overview

The Quester interactive text box (Quester ITB) works like an instant messaging service. An automated conversational moderator (or computer) named Socrates initiates a chat session with the respondent and delivers your main question. When the respondent provides an answer, Socrates can help you gain deeper insight by following up with probes.

What is a probe?

In this context, a probe is a set of follow-up questions used to explore and uncover more information about the respondent's response. Without leading to a particular conclusion, Socrates can be programmed to respond to answers in specific ways that enable you to obtain definition of key issues.

In the screenshot above, the automated system delivers a probe to investigate what is meant when the respondent mentioned that the new PS4 is beautiful.

Learn more: Quester Interactive Text Box

2:  Underlying Question Architecture

Beneath every Quester ITB is a <textarea> question. Using the power of Javascript and AJAX, the Quester ITB can easily and seamlessly integrate into your project.

This question style requires that you include 3 pre-defined rows and no columns. See the table below for a description of each required row:

Data is always captured in the order shown below.


Row Variable Description
1 Status A value representing the status of the conversation session held with the respondent. Click here for a list of all possible values.
2 Respondent_ID A unique identifier associated with each respondent who interacts with the Quester ITB.
3 Conversation A pipe-delimited string containing the respondent's responses to each probe.


If you forget to include any of these rows, the following error will be presented:

To get started, you'll need a <textarea> question and the 3 required rows mentioned above.


<textarea label="Q1" optional="0">
    What is causing our global warming?
  <row label="r1">Status</row>
  <row label="r2">Respondent ID</row>
  <row label="r3">Conversation</row>

3:  Converting to Quester ITB

To incorporate the Quester ITB style, just add the following highlighted attribute to your <textarea> tag:

<textarea label="Q1" optional="0" uses="quester.1">

Great! Let's see what happens when we save and test this code...

Oh no... What happened? Please see below for specific details and the requirements for every Quester ITB question.

3.1:  Requirements

In addition to the 3 required rows, every instance of the Quester ITB must have a unique project ID. This ID will be used by the Quester system to return the proper follow-up probes.

3.1.1:  Acquiring the Quester Project ID

As shown in the error message, a project ID can be obtained by contacting Quester. The contact information is pasted below and can be found here.

Email: support@quester.com
Phone: 1-877-232-1005

Your account manager and/or client may already have a contact at Quester. Please reach out to them before moving forward.

3.2:  Options

There are 3 options available for every Quester ITB question:

  • quester:projectid
    • Required
    • A string which uniquely identifies the project which the ITB will access
    • Type: String
    • Example: quester:projectid="j0sgDNcjKgLTg6osGiaGZBAIBbvyTLfx2oG"
  • quester:externalid
    • The respondent ID that will link back to the ITB
    • Type: String
    • Default: ${uuid}
    • Example: quester:externalid="${gid or ID or uuid}" is a great way to set the external id to uuid if the other variables, gid or ID, are not available
  • quester:debrand
    • Debrands the ITB element by removing the "Powered by..." message.
    • Type: Boolean (1 = Debranded, 0 = Branded)
    • Default: 1
    • Example: quester:debrand="0" shows the "Powered by..." message

We can add these options to our previous "global warming" example and produce the following result:


    <textarea label="Q1" optional="0" uses="quester.1"
        quester:externalid="${source or uuid}"
        What is causing our global warming?
      <comment>Please be as specific as possible</comment>
      <row label="r1">Status</row>
      <row label="r2">Respondent ID</row>
      <row label="r3">Conversation</row>

Final Result

Demo Survey

Click here to view the example above in a live survey. 

3.3:  Limitations

Please be aware of the following limitations for each Quester ITB element:

  • The quester:projectid can only be obtained through Quester. Click here to learn how you can get one.
  • The Quester ITB element must be the only question on the page. You may, however, use any number of ITB elements per project.
  • When the probing is complete, the ITB will automatically submit the page and advance to the next.
  • Instruction text (<comment>) will not be visible to respondents.
  • The ITB must be initialized and used over HTTPS, not HTTP.

4:  Data Output

4.1:  Status

This variable provides information regarding the interaction and completion status between the respondent and the ITB. The following table details all of the possible values:


Value Name Description
1.0 Session Complete Status code 1.0 is returned when the ITB has completed the current question/probe session successfully.
1.1 Session Suspended Status code 1.1 is returned when the current question/probe session has been suspended and the respondent should continue through the study. This can occur in custom projects that involve multiple ITB instances.
2.0 Session Expired Status code 2.0 is returned when the respondents session has expired. This will occur if you attempt to show an ITB using a respondent ID for a respondent that has a completed session. This may also occur if the respondent sits on a question for a very long time.
2.1 Respondent Terminated Status code 2.1 is returned when the respondent indicates that they are finished with the current ITB session (using language such as "I'm done", "no more time", etc.).
2.2 Respondent Unresponsive Status code 2.2 is returned when the respondent is unresponsive (using empty or junk responses).
3.0 Invalid Project_ID or Respondent_ID Status code 3.0 is returned when an invalid project ID or respondent ID is used to show the ITB.
3.1 SSL Is Not Enabled Status code 3.1 is returned if you attempt to show the ITB using HTTP instead of HTTPS.
10.x Service Error Status code 10.x is returned if a service error occurs during the respondent's session.
11.x Quester System Message Status code 11.x is returned if a setup error is detected during the respondent's session. Perhaps the study has been closed or is no longer available. These messages generally indicate a setup problem and you should contact Quester for assistance resolving them.

Learn More: Quester ITB Status Codes

4.2:  Respondent ID

This is a string variable that will be generated automatically for each respondent who interacts with the ITB element. This data will normally be 43 characters long and the first 10 characters will be the same for each respondent per project.

4.3:  Conversation

This is a pipe-delimited string containing the respondent's responses to each probe delivered by the ITB. The following screenshot shows the data collected from our "global warming" example for 4 respondents:


5:  What's Next?

Want to learn all there is to know about the Quester interactive text box element? 
Click here to read the technical details from their website.