При включении отправки результатов через Python Script в окне с кодом будет вставлен код по умолчанию. который может отправлять GET запрос на публичный API и может парсить ответ.
В верхней части кода будет блок комментариев в котором видно что все параметры функции доступны в словаре args
# Доступные параметры в словаре args:
# args["event_type"] - тип мероприятия (тип: string) [возможные значения определены в enum]
# args["date"] - дата (тип: string)
# args["start_time"] - время начала, формат даты - ISO 8601(YYYY-MM-DDTHH:mm) (тип: string)
# args["city"] - город (тип: string) [возможные значения определены в enum]
# args["venue"] - место проведения (тип: string)
# args["event_duration_minutes"] - продолжительность мероприятия в минутах (тип: integer)
# args["name"] - имя (тип: string)
# args["phone_number"] - номер телефона (тип: string)
# args["event_duration_hours"] - продолжительность мероприятия в часах (тип: string)
Скопируем весь код из поля "Код функции"
Пример запроса для ChatGPT
есть среда restricted python: import использовать нельзя но есть подключенные библиотеки и пример кода.
# Доступные параметры в словаре args:
# args["event_type"] - тип мероприятия (тип: string) [возможные значения определены в enum]
# args["date"] - дата (тип: string)
# args["start_time"] - время начала, формат даты - ISO 8601(YYYY-MM-DDTHH:mm) (тип: string)
# args["city"] - город (тип: string) [возможные значения определены в enum]
# args["venue"] - место проведения (тип: string)
# args["event_duration_minutes"] - продолжительность мероприятия в минутах (тип: integer)
# args["name"] - имя (тип: string)
# args["phone_number"] - номер телефона (тип: string)
# args["event_duration_hours"] - продолжительность мероприятия в часах (тип: string)
# Системные поля в словаре args:
# args["dateStringCreatedDialog"] - Дата/время начала (текст)
# args["dateUonCreatedDialog"] - Дата/время начала (под UON)
# args["dateStringUseFunction"] - Дата/время функции (текст)
# args["dateUonUseFunction"] - Дата/время функции (под UON)
# args["link"] - Ссылка на диалог
# args["messenger"] - Мессенджер
# args["linkAdAvito"] - Ссылка на объявление Авито
# args["locationAvito"] - Локация Авито
# args["linkDialogAvito"] - Ссылка на диалог Авито
# args["nameUser"] - Имя в мессенджере
# args["linkWidget"] - Ссылка на сайт с виджетом
# args["phoneNumberWhatsapp"] - Номер телефона из WhatsApp
# args["linkInUserMessanger"] - Ссылка на пользователя в мессенджере
# args["agentHash"] - ID агента
# args["platformIdSalebot"] - ID платформы Salebot
# Доступные возможности:
# Математика: abs, round, pow, sum, max, min, divmod, math (модуль)
# Типы данных: bool, int, float, str, chr, ord, bin, oct, hex
# Структуры: dict, list, tuple, set, frozenset, len, sorted, reversed, any, all
# Итерация: range, enumerate, zip, iter, next, filter, map
# Операторы присваивания: +=, -=, *=, /=, //=, %=, **=, <<=, >>=, &=, ^=, |=
# HTTP: requests.get(), requests.post(), requests.put(), requests.delete()
# JSON: json.loads(), json.dumps()
# Кодирование: base64 (модуль) - для кодирования/декодирования в base64
# Хеширование: hashlib (модуль) - для создания хешей (md5, sha1, sha256 и др.)
# Работа с CSV: csv (модуль) - для чтения/записи CSV файлов
# Структуры данных: collections (модуль) - Counter, defaultdict, deque и др.
# Функциональное программирование: itertools, functools (модули)
# Регулярные выражения: re (модуль)
# Дата и время: datetime (модуль), time (модуль), dateutil (модуль)
# Случайные числа: random (модуль)
# Статистика: statistics (модуль)
# URL обработка: urllib.parse (модуль)
# Логирование: debug() - для отладочных сообщений
# Пример использования логирования
debug("Начало выполнения функции")
debug(f"Получены аргументы: {args}")
# Пример HTTP-запроса с логированием (используем публичный API JSONPlaceholder)
try:
debug("Отправка HTTP запроса к JSONPlaceholder API...")
response = requests.get("https://jsonplaceholder.typicode.com/posts/1")
response.raise_for_status()
data = response.json()
debug(f"Получен ответ от API: {data}")
except requests.RequestException as e:
debug(f"Ошибка при выполнении запроса: {str(e)}")
result = {"status": "error", "message": str(e)}
else:
debug("Запрос выполнен успешно")
result = {
"status": "success",
"title": data.get("title"),
"body": data.get("body")
}
# Пример обработки данных с логированием
try:
debug("Начало обработки данных")
# Пример обработки полученных данных
processed_data = {
"post_info": f"Заголовок: {result.get('title', '')}",
"word_count": len(result.get('body', '').split())
}
debug(f"Данные обработаны: {processed_data}")
except Exception as e:
debug(f"Ошибка при обработке данных: {str(e)}")
raise
# Результат выполнения функции необходимо сохранить в переменную result
# Результат может быть словарем, списком, строкой или числом
debug("Формирование результата")
result = {
"status": "success",
"message": "Функция выполнена успешно",
"processed_data": processed_data,
"input_args": args
}
debug("Выполнение функции завершено")
можешь на основе этого кода написать отправку post запроса на URL https://eventorganizer.free.beeceptor.com/event/create
с отправкой JSON в таком формате:
{
"event_py": {
"event_type": "event_type"
},
"details": [
{
"date": "date",
"venue": "venue",
"start_time": "start_time",
"city": "city",
"duration": "event_duration_hours"
}
],
"contact_info": {
"name": "name",
"phone": "phone_number"
}
}