# Особенности использования номеров в роботах и активити бизнес-процессов

Практически в каждом роботе или активити вам предстоит использовать номер телефона. Давайте разберёмся, как это делать правильно.

В карточке CRM (лид, контакт, компания) есть возможность использовать как один, так и несколько номеров телефонов, причём с разными типами (мобильный, рабочий, для рассылок, другой, и т.д.).

Если номер один, то вопросов обычно не возникает. Проблемы появляются, когда номеров несколько. В этом случае важно учитывать на какой и на сколько номеров вы отправляете сообщение.

Когда вы передаёте номер (номера) телефонов в робот или активити, то они могут передаваться как массив номеров – **{{Телефон}} / {=Document:PHONE}** (также **{{Контакт: Телефон}}** и **{{Компания: Телефон}}**) или как текстовая строка – **{{Телефон (текст)}}** **/ {=Document:PHONE\_PRINTABLE}** (также **{{Контакт: Телефон (текст)}}** и **{{Компания: Телефон (текст)}}**).

{% hint style="warning" %}
Обратите внимание, что переменная **{{Телефон}} / {=Document:PHONE} / {{Контакт: Телефон}} / {{Компания: Телефон}}** или **{{Телефон (текст)}} / {=Document:PHONE\_PRINTABLE}** **/ {{Контакт: Телефон (текст)}} / {{Компания: Телефон (текст)}}** собирает и передаёт номера ВСЕХ типов.

**Если в робот передан подобный массив номеров или текстовая строка с номерами и их там несколько – отправка будет осуществлена на первый номер в списке, на котором есть WhatsApp!**
{% endhint %}

Чтобы исключить ошибки, можно воспользоваться одним из способов, описанных ниже.

### **Используйте отдельный тип телефона для отправки сообщений в WhatsApp**

Например, «Для рассылок». Возможные варианты, которые могут принимать переменные:

* {{Телефон для рассылок}} / Document:PHONE\_MAILING}.
* {{Контакт: Телефон для рассылок}}.
* {{Компания: Телефон для рассылок}}.
* {{Телефон для рассылок (текст)}}.
* {{Контакт: Телефон для рассылок (текст)}}.
* {{Компания: Телефон для рассылок (текст)}}.

При настройке робота или активити используйте один из вариантов переменной, подставляя её в поле **Номер телефона (кому отправляем).**

<figure><img src="https://2213176759-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LcuJc7XlLhpPyLWZz1s%2Fuploads%2FDNgeI2umGUXLFJ7fBTVl%2Fimage.png?alt=media&#x26;token=2329a6ba-c2ad-4cd4-9e4f-43574ceb784d" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2213176759-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LcuJc7XlLhpPyLWZz1s%2Fuploads%2FGuQl2nl9wGh6e7NX4BRG%2Fimage.png?alt=media&#x26;token=019c6177-e2a0-4f78-8caa-a1b2dd73771f" alt=""><figcaption></figcaption></figure>

### **Используйте** [**функцию firstvalue**](https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=57\&LESSON_ID=4912) для указания первого значения из массива номеров.

При использовании функции **firstvalue** из массива номеров **{{Телефон}} / {=Document:PHONE} / {{Контакт: Телефон}} / {{Компания: Телефон}}** будет выбран и подставлен в робот или активити первый по счёту номер.

При настройке робота используйте один из возможных вариантов конструкций, подставляя её в поле **Номер телефона (кому отправляем):**

* {{=firstvalue({{Телефон}})}}.
* {{=firstvalue({{Контакт: Телефон}})}}.
* {{=firstvalue({{Компания: Телефон}})}}.

<figure><img src="https://2213176759-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LcuJc7XlLhpPyLWZz1s%2Fuploads%2FpHBDr6jAIPM19OrBGg2a%2Fimage.png?alt=media&#x26;token=335552fb-1910-44a5-9e05-906180e2432b" alt=""><figcaption></figcaption></figure>

Для вызова окна функций в активити бизнес-процесса введите в поле для ввода номера телефона знак «равно» и в открывшемся окне выберите функцию **firstvalue.**

<figure><img src="https://2213176759-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LcuJc7XlLhpPyLWZz1s%2Fuploads%2FV9ES4423W59YHpKhGqcn%2Fimage.png?alt=media&#x26;token=676c3c2f-d93e-4a7e-ab9f-4a5eece5fec0" alt=""><figcaption></figcaption></figure>

В круглых скобках функции укажите массив номеров, из которых нужно выбрать первое значение. Например, **{{Контакт: Телефон}}.**

<figure><img src="https://2213176759-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LcuJc7XlLhpPyLWZz1s%2Fuploads%2FxPLbrX8KvroUy1cUGvUM%2Fimage.png?alt=media&#x26;token=25c90568-a53a-49c2-8079-361b524ca9d2" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Обратите внимание, что при использовании функции **firstvalue** переменную **{{Телефон}} / {{Контакт: Телефон}} / {{Компания: Телефон}}** нужно передавать без модификатора «(текст)», т.к. важно передавать именно массив номеров.
{% endhint %}

**Используйте активити** [**Итератор**](https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=57\&LESSON_ID=10481)**,** чтобы перебрать номера в массиве и задать свою логику для каждого из номеров массива

{% hint style="warning" %}
Данный способ работает только в том случае, если на вашем тарифе Битрикс24 доступен дизайнер бизнес-процессов.
{% endhint %}

Создайте переменную бизнес-процесса.

![](https://2213176759-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LcuJc7XlLhpPyLWZz1s%2F-LzPQQY_2faFHS9DH95K%2F-LzP_UGmZt8O9z38mELZ%2Fimage.png?alt=media\&token=6a278081-642e-4318-85b3-5b87f61cbaf2)

Добавьте активити «Изменение переменных» и «Итератор».

Установите переменную для этих активити.

![](https://2213176759-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LcuJc7XlLhpPyLWZz1s%2F-LzPQQY_2faFHS9DH95K%2F-LzPinQ21PFlsrN8qZmP%2Fimage.png?alt=media\&token=6e94cf74-cd1a-45d8-8500-9f1de2653d14)

![](https://2213176759-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LcuJc7XlLhpPyLWZz1s%2F-LzPQQY_2faFHS9DH95K%2F-LzPj-MonmoQX4Sv3_4k%2Fimage.png?alt=media\&token=a9c8eac2-a734-40f0-93bb-8a806d88b2f0)

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

{% hint style="info" %}
Помните, что во всех вышеописанных способах вам необходимо учитывать ещё одно обстоятельство, а именно – наличие WhatsApp на номере, на который делается отправка.

В настоящее время проверка номера на наличие WhatsApp осуществляется сразу при отправке сообщения. Если отправка осуществляется на номер, на котором не установлен WhatsApp, в дополнительных результатах выполнения активити вы получите ошибку **«NW»** а в описании ошибки — более развёрнутое её описание: **«Ошибка при отправке: телефонный номер 7961\*\*\*\*\*57 не найден в WhatsApp».**
{% endhint %}

<figure><img src="https://2213176759-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LcuJc7XlLhpPyLWZz1s%2Fuploads%2FDMzSyV25bxKeKZt7qHkc%2Fimage.png?alt=media&#x26;token=7d50d90a-81be-4390-a1bc-c899d8e771ae" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Если вы хотите явно получить результат проверки номера на наличие WhatsApp и использовать его в ваших сценариях работы, проверку номера из массива номеров на наличие WhatsApp можно также осуществлять с помощью итератора. Подробнее в статье [proverka-telefona](https://docs.olchat.io/roboty-i-aktiviti/roboty/proverka-telefona "mention")
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.olchat.io/roboty-i-aktiviti/osobennosti-ispolzovaniya-nomerov-v-robotakh-i-aktiviti-biznes-processov.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
