писать стек, который будет: * формировать массив запросов и отправлять не больше 1 запроса в 501мс в нагруженном состоянии или не больше 2 запросов в 1001мс в обычном режиме * работать с использованием batch (50 запросов пакетом за раз если я правильно помню), * организовывать взаимодействие сайта со стемом, что вообще меняет работу сайта и нужны доработки
Это для слабо нагруженного проекта (и маленькую цену), 3 - 4 запроса для одного посетителя будет норма, но по теории вероятности возможны и 6 и 9 и 12 и больше запросов, если сойдутся звёзды или, например, кто-то захочет выполнить DDoS и знает как запортачить связь сайта с битрикс24
******** Вариант 2 поставить в скрипте задержку между запросами 500 - 800 мс
******** Вариант 3 Оставить как есть
**********
Я думаю вариант 2 самый лучший по соотношению цена/качество, а вариант 1 самый интересный, но сожрет пару дней труда (а может и больше с отладкой и поиском багов).
я думал насчёт batch, но у меня такая специфика, что для выполнения следующего запроса необходим ответ на предыдущий, например: 1. отфильтровал все номера похожие на заданный, получил ID контактов (crm_duplicate_findbycomm) 2. получил данные клиентов, в том числе ID оргазинаций, связанных с этими контактами уже по ID (crm.contact.list) (на сайте обработал результаты запроса 2, в том числе почистил массив с ID организаций от дубликатов) 3. получил названия организаций (crm.company.list) 4. (на основе 3-го запроса мне нужно выполнять ещё один, чтобы получить данные других контактов, на основе результата, который ранее не получался (crm.contact.list) как в таком случае использовать batch
Цитата
Денис Диденко написал: Александр Девятков , 2 в секунду, используйте batch
(при использовании фильтра по номеру телефона 3-го запроса вроде получалось избежать, но требовалось делать дополнительный запрос с + (писал выше)
PS
Какой ответ на этот вопрос?
А откуда информация что не рекомендуется фильтровать по полю PHONE в методе ".list" ?
PPS
За что вероятнее получить бан: больше 2 запросов в секунду или за фильтрацию по телефону?
Спасибо за информацию о методе crm.duplicate.findbycomm, с ним код выглядит чище, занимает меньше строк )))
А откуда информация что не рекомендуется фильтровать по полю PHONE в методе ".list" ?
Какое сейчас ограничение на количество запросов к облаку в секунду? (мне для каждого клиента приходится делать 4 штуки подряд из них 3 на основе предыдущего ответа B24, не забанят ли меня?)
Добрый день! В этом методе crm.contact.list пока не реализована возможность фильрации по телефонам, содержащим другие символы, кроме чисел. В отделе разработок есть заявка на реализацию такой возможности. Я добавлю ваше обращение в эту заявку для увеличения ее критичности и ускорения реализации. Вы получите уведомление в этот чат, когда данная возможность появится, даже если чат будет закрыт.
Таким образом, все кто хочет такую возможность, оставьте заявки в службу поддержки, полагаю, таким образом повысится приоритет данной реализации...
PS Насколько я понял из диалога с ТП и при проверке работоспособности своих скриптов, 'LOGIC' => 'OR', всё же работает в облаке!
Несколько часов пытаюсь настроить поиск номеров телефонов по Bitrix24, чтобы находились номера, забитые в Bitrix24 в 4-х разных форматах: 000 111 2233 7 000 111 2233 8 000 111 2233 +7 000 111 2233 В переменную $filter передаю 10 знаков: '0001112233' Не находит конаткты с +7, как исправить запрос?
PS Временно решил проблему отправкой второго запроса, в случае если в запросе выше ничего не найдено. Но данное решение кажется мне каким-то мрачным и во вторых это решение создаёт дополнительный запрос к REST API что не есть хорошо