Перейти к основному содержимому

Опрос по индивидуальным ссылкам

· 2 мин. чтения

При проведении онлайн-опросов бывает нужно идентифицировать респондентов или подставлять в анкету какие-то данные из базы. Давайте посмотрим, как это сделать в проекте Веб-опрос.

Если требуется только сохранять в массиве ID респондента, добавьте к рабочей ссылке на опрос параметр extid, создайте для каждого ID свою ссылку и отправьте полученные ссылки респондентам, например:

  • https://do.survey-studio.com/survey?pkey=ef87c2da&extid=794035
  • https://do.survey-studio.com/survey?pkey=ef87c2da&extid=884751
  • https://do.survey-studio.com/survey?pkey=ef87c2da&extid=416592
  • и так далее.

В результате анкету с одним и тем же ID можно будет прерывать и продолжать в другое время, а после завершения интервью система не даст заполнить новую с этим же ID.

В качестве идентификатора можно использовать как число, так и текст. Длина не должна превышать 64 символа. Помните, что чем проще ID, тем легче будет его подобрать или ошибиться и заполнить чужую анкету.

примечание

Если ссылка будет короткая и в ней нет других параметров, то extid нужно добавлять после вопросительного знака:

https://sst.gl/the_best_survey?extid=lkw45d735j-941

Чтобы не дать заполнить анкету по ссылке, в которой нет ID, в проекте нужно поставить флаг Запрещать запуск анкеты, если отсутствует уникальный идентификатор контакта.

Вместо флага в проекте можно добавить скрипт перед показом в первый вопрос анкеты.
if (isTesting() || isValidation()) return ok;

if (respondent.extId === undefined) {
return exit('Отсутствует идентификатор в параметре extid');
}

Если в массиве, кроме ID, нужна дополнительная информация о респонденте или в анкету нужно подставлять какие-то данные, то файл с этой информацией необходимо загрузить в базу контактов. Как минимум, файл должен содержать столбцы с ID респондента и номером телефона. В качестве телефона можно использовать как реальный номер респондента (если требуется), так и любые числа, не короче 5-ти цифр. При загрузке полю с ID нужно будет поставить тип значения Внешний ключ.

Чтобы добавить в массив информацию из базы контактов, при его выгрузке нужно поставить флаг Выгружать дополнительные поля с данными из базы контактов. Если требуется подставлять данные в анкету, это можно делать, как обычно, через объект contact.

подсказка

Чтобы запретить заполнение анкеты для ID, которых нет в базе контактов, нужно поставить флаг Запрещать запуск анкеты, если в базе не найден контакт по extId/extPhone в свойствах проекта (вкладка Главная, блок Флаги).