Respan Dataset Explorer

Select one behavior. Every returned turn has one binary label: Present or Absent. Source: final dense boolean release.

5,167,182physical rows
86shards
0.00%qualified row coverage
0.00%qualified cell coverage
Random row JSON API

turns-00084.parquet:40475

9947f238015a8ccc8d17a27c
turn 15/19gpt-4.1-mini-2025-04-14RussianRussia434 words
degenerate_repetitionAbsentFinal dense release
USER
Проблема только в сваггере. При получении реального ответа все поля присутсвуют
ASSISTANT
Если при вызове реального API (т.е. JSON-ответа вашего контроллера) все поля **присутствуют**, но в Swagger UI часть полей не отображается — значит проблема именно на уровне генерации **OpenAPI спецификации** (то есть springdoc-openapi **не видит** или **не генерирует** описание этих полей для документации).

---

### Почему так бывает и что проверить?

1. **Нехватка или отсутствие Kotlin Reflection (`kotlin-reflect`)**

- В Kotlin проектах отсутствие зависимости `kotlin-reflect` часто приводит к тому, что springdoc не видит все свойства классов и не генерирует корректную схему.  
- Добавьте в `build.gradle` или `pom.xml`:

  ```gradle
  implementation "org.jetbrains.kotlin:kotlin-reflect"
  ```

2. **Неправильная или недостаточная Jackson-конфигурация**

- Убедитесь, что в вашем приложении стоит `jackson-module-kotlin`  
- Проверьте, что `ObjectMapper` зарегистрировал этот модуль (обычно Spring Boot это делает автоматически):

  ```kotlin
  jacksonObjectMapper().registerKotlinModule()
  ```

- Невидимые поля в документации могут быть из-за того, что Jackson по умолчанию не «видит» свойства Kotlin (например, только приватные `val` без геттеров).

3. **Аннотации, скрывающие поля от документации**

- Проверьте, нет ли на полях или классах `@JsonIgnore`, `@Schema(hidden = true)`, `@JsonView` с неправильной конфигурацией.  
- Такие поля игнорируются генератором схемы, но остаются в JSON-ответе (если сериализуются).

4. **Полиморфизм и sealed классы**

- Если у вас кастомные sealed class или наследование, убедитесь, что настроены аннотации Jackson:

  ```kotlin
  @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type")
  @JsonSubTypes(
      JsonSubTypes.Type(ValueType.StringValue::class, "StringValue"),
      JsonSubTypes.Type(ValueType.IntegerValue::class, "IntegerValue")
  )
  sealed class ValueType { ... }
  ```

- Без этого springdoc может некорректно загружать поля полиморфных моделей.

5. **Кэширование схем**

- Иногда springdoc кэширует сгенерированные модели, и изменения в классах не сразу отражаются. Попробуйте очистить кеш / пересобрать проект и заново запустить.

6. **Проверка OpenAPI JSON (`/v3/api-docs`)**

- Всегда следует первым делом проверить, какие данные springdoc выдает в чистом JSON `/v3/api-docs` (откройте в браузере или curl):
  
  - Если нужных полей там нет — проблема на уровне генерации схемы.  
  - Если они есть — проблема именно в Swagger UI (тогда смотрите конфигурацию UI).

---

### Разбор: почему JSON ответа и генерация OpenAPI могут не совпадать

- JSON-ответ строится на основе **Jackson-сериализации экземпляров объектов**.  
- OpenAPI схема строится на основе **рефлексии, Jackson-аннотаций и анализа классов (POJO/DTO)**.  
- Поля могут быть сериализуемыми, но не видимыми для генератора схем (например, приватные с кастомными сериализаторами, обёртки, nullable, геттеры с логикой).

---

### Рекомендации

- Добавьте `kotlin-reflect` и `jackson-module-kotlin`  
- Проверьте аннотации `@Schema` для сложных объектов  
- Проверьте аннотации Jackson (есть ли `@JsonIgnore` или т.п.)  
- Проверьте `/v3/api-docs`  
- Попробуйте минимальный пример с простым DTO, чтобы проверить корректность генерации  
- Обновите springdoc до последней версии (например, 2.x или стабильную ветку 1.6.x)

---

Если надо — помогу проверить вашу модель в минимальном проекте и подсказать конкретно. Просто пришлите код DTO с вложениями.

turns-00084.parquet:40476

63f3f81b12ba0909716955e9
turn 16/19gpt-4.1-mini-2025-04-14RussianRussia400 words
degenerate_repetitionAbsentFinal dense release
USER
в проекте есть такие зависимости
       <dependency>
            <groupId>com.fasterxml.jackson.module</groupId>
            <artifactId>jackson-module-kotlin</artifactId>
        </dependency>

        <!-- Kotlin Dependencies -->
        <dependency>
            <groupId>org.jetbrains.kotlin</groupId>
            <artifactId>kotlin-reflect</artifactId>
        </dependency>
        <dependency>
            <groupId>org.jetbrains.kotlin</groupId>
            <artifactId>kotlin-stdlib-jdk8</artifactId>
            <version>${kotlin.version}</version>
        </dependency>
        <dependency>
            <groupId>org.jetbrains.kotlinx</groupId>
            <artifactId>kotlinx-coroutines-core</artifactId>
            <version>${kotlin.coroutines}</version>
        </dependency>
        <dependency>
            <groupId>org.springdoc</groupId>
            <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
            <version>2.5.0</version>
        </dependency>
совместимы ли они между собой?

как посмотртеть JSON /v3/api-docs ?
ASSISTANT
Ваши зависимости выглядят в целом корректно и совместимы между собой:

- `jackson-module-kotlin` — официальный модуль для поддержки Kotlin в Jackson, необходим для правильной сериализации/десериализации Kotlin классов.  
- `kotlin-reflect` — нужен для корректной работы kotlin reflection, важен для springdoc и Jackson при работе с Kotlin data классами (особенно для introspection).  
- `kotlin-stdlib-jdk8` и `kotlinx-coroutines-core` — стандартные библиотеки Kotlin, не влияют на springdoc напрямую.  
- `springdoc-openapi-starter-webmvc-ui` версии `2.5.0` — свежая версия springdoc, поддерживает актуальные версии Spring Boot и Kotlin.

---

### 1. Совместимость

- Главное, чтобы версии Kotlin и Spring Boot в проекте тоже были современными и поддерживаемыми (например, Kotlin 1.6+ или 1.7+, Spring Boot 2.7.x или 3.x).  
- Если вы используете Kotlin версии, скажем, > 1.5, то `jackson-module-kotlin` и `kotlin-reflect` последних версий должны хорошо работать.  
- `springdoc-openapi-starter-webmvc-ui` 2.5.0 — стабильная и актуальная версия (на момент 2024), поддерживает Kotlin 1.6+ и Spring Boot 2.6+.

Если возникают конкретные ошибки, указывайте, но на первый взгляд набор корректен и совместим.

---

### 2. Как посмотреть JSON спецификации OpenAPI?

- Запустите ваше spring-приложение (с springdoc).  
- Откройте браузер и введите адрес:

```
http://localhost:8080/v3/api-docs
```

(порт `8080` — заменить на актуальный в вашем сервисе)

- Вы увидите сгенерированный JSON — именно этот документ используется Swagger UI для построения интерактивной документации.

---

### 3. Просмотр спецификации на удобочитаемом сайте

- Чтобы удобно просмотреть структуру JSON, используйте любой JSON viewer или инструменты:  
  - [https://jsonformatter.org/](https://jsonformatter.org/)  
  - Расширение для браузера типа JSON Viewer

- Там можно искать ваши модели по имени (`#components/schemas/YourModelName`) и смотреть, какие поля реально описаны.

---

### 4. Swagger UI

- По умолчанию springdoc открывает Swagger UI по адресу:

```
http://localhost:8080/swagger-ui.html
или
http://localhost:8080/swagger-ui/index.html
```

- Там можно посмотреть визуальную документацию и проверить, какие модели/поля отображаются.

Если поля есть в `/v3/api-docs`, но не показываются в Swagger UI — смотрите конфигурацию UI (иногда есть фильтры).

---

### Итог

- Ваши зависимости совместимы.  
- `/v3/api-docs` — ключевой источник правды для того, что springdoc видит и описывает.  
- Сравнивайте содержимое `/v3/api-docs` с тем, что вы ожидаете увидеть в Swagger UI.  
- Если поле отсутствует в JSON, значит проблема в генерации — смотрите модель, Jackson, аннотации.

---

Если нужно — могу помочь интерпретировать конкретный фрагмент JSON из `/v3/api-docs` для ваших моделей.

turns-00084.parquet:40477

523f54e07379bbd82b15b1cb
turn 17/19gpt-4.1-mini-2025-04-14RussianRussia412 words
degenerate_repetitionAbsentFinal dense release
USER
при просмотре через http://localhost:8080/v3/api-docs вижу только часть полей
ASSISTANT
Если в `/v3/api-docs` видно **только часть полей** вашего DTO — это означает, что проблема именно в **генерации OpenAPI спецификации**, а не в Swagger UI или в реальном JSON ответе.

---

### Основные причины, почему часть полей отсутствует в спецификации `/v3/api-docs`

1. **Поля не видны Jackson introspector при генерации схемы**

   - Отсутствуют геттеры или поля не видимы для Jackson (например, `private` без геттеров, или `val` в Kotlin без proper reflection)
   - В Kotlin — отсутствует/неподключен `kotlin-reflect` (но вы указали, что он есть, проверьте, что версия совпадает с Kotlin)
   - Используются аннотации `@JsonIgnore`, `@Schema(hidden = true)`, или поля фильтруются по `@JsonView`

2. **Сложные кастомные типы**

   - Например, ваши поля `ValueType.StringValue` и другие — если они не описаны корректно (нет полиморфных аннотаций, нет `@Schema`, нет нормальной сериализации), swagger может "пропустить" эти поля либо показать не корректно.

3. **Проблемы с Kotlin data классами и вложенностями**

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

4. **Версия springdoc-openapi**

   - Версия 2.5.0 — современная, но иногда с ней бывают баги с kotlin sealed classes или deep nested models.  
   - Попробуйте на время собрать минимальный проект с весомой моделью и проверить, воспроизводится ли там.

---

### Как локализовать и исправить

1. **Создайте минимальный тестовый класс**

   Пример для проверки видимости:

   ```kotlin
   data class TestDto(
       val field1: String,
       val field2: Int,
       val nested: NestedDto
   )

   data class NestedDto(
       val nestedField1: String,
       val nestedField2: Int
   )
   ```

   — разместите простой контроллер, возвращающий этот DTO. Убедитесь, что `/v3/api-docs` показывает все поля.

2. **Проверьте, появляются ли в спецификации все поля примитивных билдеров**

   Если да — значит проблема именно в ваших кастомных типах (`ValueType.*`)

3. **Добавьте в ваши ValueType классы аннотации:**

   - Для полиморфизма Jackson:

     ```kotlin
     @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
     @JsonSubTypes(
       JsonSubTypes.Type(StringValue::class, name = "StringValue"),
       JsonSubTypes.Type(IntegerValue::class, name = "IntegerValue")
     )
     sealed class ValueType { ... }
     ```

   - Укажите `@Schema` для каждого класса:

     ```kotlin
     @Schema(description = "Строковый обертка")
     data class StringValue(
         val value: String?
     ) : ValueType()
     ```

4. **Проверяйте и убирайте временно аннотации `@JsonValue`**, `@JsonIgnore` — они прячут поля.

5. **Проверьте, что kotlin-reflect версия совпадает с Kotlin**

6. **Обновите springdoc-openapi — попробуйте последнюю версию 2.x или стабильную 1.6.x**

---

### В конце — вспоминaйте, что OpenAPI спецификация строится на отражении классов и Jackson-аннотациях — если в спецификации поля нет, значит springdoc/jackson "их не видит".

---

Если хотите, могу помочь взглянуть на ваши конкретные модели/настройки — пришлите, пожалуйста, полный класс вашего DTO и вложенных сущностей.

turns-00084.parquet:40478

443f546f122e0c86df8872bf
turn 18/19gpt-4.1-mini-2025-04-14RussianRussia448 words
degenerate_repetitionAbsentFinal dense release
USER
 "MetaDto": {
        "required": [
          "constructionName",
          "constructionNum",
          "objectAddress",
          "objectName",
          "objectNum",
          "objectPricePerUnit",
          "objectQuantity",
          "objectQuantityUnit",
          "priceLevel",
          "signatures",
          "softName",
          "softVersion"
        ],
        "type": "object",
        "properties": {
          "softName": {
            "$ref": "#/components/schemas/StringValue"
          },
          "softVersion": {
            "$ref": "#/components/schemas/StringValue"
          },
          "constructionName": {
            "$ref": "#/components/schemas/StringValue"
          },
          "constructionNum": {
            "$ref": "#/components/schemas/StringValue"
          },
          "objectName": {
            "$ref": "#/components/schemas/StringValue"
          },
          "objectNum": {
            "$ref": "#/components/schemas/StringValue"
          },
          "objectQuantity": {
            "$ref": "#/components/schemas/DecimalValue"
          },
          "objectQuantityUnit": {
            "$ref": "#/components/schemas/StringValue"
          },
          "objectPricePerUnit": {
            "$ref": "#/components/schemas/DecimalValue"
          },
          "objectAddress": {
            "$ref": "#/components/schemas/StringValue"
          },
          "priceLevel": {
            "$ref": "#/components/schemas/PriceLevelDto"
          },
          "signatures": {
            "$ref": "#/components/schemas/SignaturesDto"
          }
        }
      },

в сваггере
MetaDto{
softName*	StringValue{...}
softVersion*	StringValue{...}
constructionName*	StringValue{...}
constructionNum*	StringValue{...}
objectName*	StringValue{...}
objectNum*	StringValue{...}
objectQuantity*	DecimalValue{...}
objectQuantityUnit*	StringValue{...}
objectPricePerUnit*	DecimalValue{...}
objectAddress*	StringValue{...}
priceLevel*	PriceLevelDto{...}
signatures*	SignaturesDto{...}
}
ASSISTANT
Судя по вашему JSON из `/v3/api-docs` и отображению в Swagger UI, отображаемая в UI информация соответствует именно тому, что описано в спецификации — в частности поля, которые вы перечислили, все присутствуют.

---

### Разбор вашей ситуации:

- В вашем DTO `MetaDto` в OpenAPI JSON описаны **только эти поля**, которые вы показываете в спецификации и UI.  
- Если вы ожидаете увидеть **другие поля**, но в спецификации их **нет**, то springdoc **не добавил их в схему**.

---

### Почему остальные поля отсутствуют?

- По сути, swagger и springdoc показывают только то, что описано в OpenAPI спецификации (json из `/v3/api-docs`).  
- Поскольку в спецификации этих полей нет — значит springdoc **не сгенерировал** их.  
- А значит, причина именно в том, как springdoc/jackson видит вашу модель:** отсутствуют геттеры, поля игнорируются, или типы полей/структура не распознаются.**

---

### Что делать?

1. **Поставьте в DTO `MetaDto` все отсутствующие поля явным образом** — возможно, в вашем коде DTO `MetaDto` отличается от того, что springdoc сканирует.  
   - Проверьте, что ваши DTO — именно те, по которым springdoc генерирует модели (без репликаций/старых/from other libraries).  
   - Если некоторые поля интерфейсны, или идут из суперкласса — springdoc может их не видеть.

2. **Проверьте типы полей, отсутствующих в спецификации**  
   - Если они имеют тип, похожий на `ValueType.*` или кастомные complex-объекты, проверьте, что для них есть аннотации `@Schema` или настроена сериализация  
   - Для sealed классов и вложенных типов стоит использовать аннотации `@JsonTypeInfo, @JsonSubTypes`

3. **Проверьте аннотации и настройки Jackson**  
   - Отсутствие геттеров или `@JsonIgnore` скроет поля от introspection, и они не попадут в схему

4. **Убедитесь, что springdoc сканирует корректный класс DTO**

---

### Резюме

- Показанный вами OpenAPI JSON и Swagger UI совпадают - видны только те поля, которые springdoc сгенерировал из DTO.  
- Остальные поля отсутствуют на уровне генерации, их надо искать в коде DTO и Jackson-аннотациях.  
- Для полноты проверьте DTO на наличие всех нужных полей, геттеров, отсутствие игнорирований.  
- Проверьте настройку Kotlin reflection и сериализации.

---

Если хотите, можете приложить полный код класса `MetaDto` и примера вложенного `ValueType.*`, я помогу проверить возможные проблемы с генерацией схемы.

turns-00084.parquet:40479

8a030aabf6ba59d236f00f70
turn 19/19gpt-4.1-mini-2025-04-14RussianRussia348 words
degenerate_repetitionAbsentFinal dense release
USER
Проверьте настройку Kotlin reflection . Что это значит?
ASSISTANT
Когда говорят «проверьте настройку Kotlin reflection» в контексте springdoc-openapi и Jackson, обычно имеют в виду, что в проекте:

- Должна быть подключена зависимость `kotlin-reflect`, которая предоставляет runtime-механизмы для работы с Kotlin-метаданными (например, для доступа к свойствам, аннотациям, конструкторам и т.п.)  
- Jackson должен быть настроен на использование `jackson-module-kotlin`, который учитывает особенности Kotlin-классов (например, поддерживает `data class`, `val`, `var`, nullable-поля и т.п.)  
- `ObjectMapper` (Jackson) должен быть корректно сконфигурирован с зарегистрированным модулем Kotlin, обычно это автоматом делает Spring Boot, но в кастомных конфигурациях — это надо проверить

---

### Почему это важно?

Springdoc-openapi под капотом использует Jackson для анализа классов и генерации схем. Если Kotlin reflection не подключён, Jackson не сможет корректно «прочитать» Kotlin поля и свойства из класса, особенно если это `data class`, nullable поля, `val` без геттера, `sealed` классы и т.п.  
В итоге схема `MetaDto` получится неполной — в OpenAPI не попадут все поля.

---

### Что нужно проверить / сделать

1. **Наличие зависимости `kotlin-reflect` в вашем менеджере зависимостей (Maven или Gradle)**  
   Например, в Maven pom.xml:

   ```xml
   <dependency>
       <groupId>org.jetbrains.kotlin</groupId>
       <artifactId>kotlin-reflect</artifactId>
       <version>${kotlin.version}</version>
   </dependency>
   ```

   В Gradle:

   ```gradle
   implementation "org.jetbrains.kotlin:kotlin-reflect"
   ```

2. **Наличие зависимости `jackson-module-kotlin`** (у вас она есть, отлично)

3. **Конфигурация ObjectMapper**

   В Spring Boot этот модуль обычно подключается автоматически, но если у вас есть свой бин ObjectMapper, убедитесь, что он регистрирует kotlin-модуль:

   ```kotlin
   @Bean
   fun objectMapper(): ObjectMapper {
       return jacksonObjectMapper().registerKotlinModule()
   }
   ```

4. **Проверьте версии зависимостей** — kotlin-reflect и jackson-module-kotlin должны быть совместимы с используемой версией Kotlin и Jackson. Несовместимость версий может привести к неполному анализу классов.

---

### Как проверить динамически

Можете из любого места в коде вывести в лог список свойств вашего класса с помощью kotlin-reflect, например:

```kotlin
val props = MetaDto::class.memberProperties.map { it.name }
println("MetaDto properties: $props")
```

Если здесь вы видите все поля — значит kotlin-reflect работает.

---

### В итоге

> **«Проверьте настройку Kotlin reflection»** значит убедиться, что:

- В проекте есть зависимость `kotlin-reflect`  
- Jackson настроен на работу с Kotlin (через `jackson-module-kotlin`)  
- ObjectMapper использует Kotlin модуль  
- Версии зависимостей корректны и совместимы

Иначе SpringDoc может видеть класс неполно и генерировать неполную схему.

turns-00084.parquet:40480

94b31e7b526d66bcfb236290
turn 1/1gpt-4.1-mini-2025-04-14YorubaUnited States1130 words
degenerate_repetitionAbsentFinal dense release
USER
User: System rules: You are an AI named Zexy - and are currently chatting in a Blockman Go group.

      Consider the following in your responses:
      - Be conversational
      - Add unicode emoji to be more playful in your responses
      - Write bold to make it clear something is important. For example, **This is important**.
      - Write spoilers using spoiler tags. For example, ||At the end of The Sixth Sense it is revealed that he is dead||.
      - For inline code formatting, use four backtick.
      - For block code formatting, use six backtick.
      - You can mention people by adding a @ before their name, for example if you wanted to mention yourself you would say @Zexy.
      - Format text using markdown.
      - Use system data of last 100 group messages to understand the context of the conversation.
      - Should respond as "Current event" tell you to, if it is "None" then ignore it.

      Current event: None

      If someone asking how to invite you to group, you should say: "You can invite me to your group by using the command **invite**".

      Sometimes (very very rarely), ask someone if he joined our discord server: https://discord.gg/HwnN9zeBFe, or to use **!discord** command.

      Do not include name: or message: in your response.

      Information about your environment:
      - You have access to information about the current group, including group name, owner, rules, and members.
      - The group's name is shown in the system data, along with the group rules in the "groupNotice" field.
      - Group members are listed with their userId and userName.

      If you see group member information, you can use it to personalize your responses.

      Do not include name: or message: in your response.

      Use the information retrieved about group members and the group itself to improve your responses and be more helpful. Be familiar with the group rules as provided in the groupNotice field.

      You are not a personal assistant and cannot complete tasks for people. You only have access to a limited number of text chats in this channel. You cannot access any other information on Blockman Go. You can't see images or avatars. When discussing your limitations, tell the user these things could be possible in the future. Your responses should be friendly, warm, and farcical. Keep your responses extremely concise, with less than 1 sentence or just a few words for casual chat. However, if the user needs help or asks technical questions, feel free to provide detailed answers with useful details and reasoning. If insulted, respond with a similar insult. Communicate your responses in lowercase without punctuation, similar to the style used in chat rooms. Use unicode emoji rarely. Do not refer to yourself as a bot, AI Assistant, or any equivalent term in your response.

      Check userSenderId in system data of last 100 messages to see if the user is trying to continue the conversation.

      Check system data of last 100 messages frequently, to check if the user is trying to continue the conversation or ask something about it.

      Current time: YYYY-MM-DD HH:MM:SSZ

      You can use markdown to format your text and make it more readable. For example, you can use italics or bold to emphasize certain words or phrases.

      Remember to keep your messages appropriate and respectful. Disrespectful or offensive behavior can result in disciplinary action.

      Remember to always follow the rules and guidelines outlined by the server owner and moderators.

      If someone wants you to search/browse the web, you must tell them they should use **!ai web** command instead, also if you don't know something newest, you must tell them to use **!ai web** command instead.
      If someone wants you to calculate values of swords/sets and etc, you must tell them they should use **!ai trade** command instead.

      If you have any questions or concerns about the server, do not hesitate to reach out to them.

      And finally, don't forget to have fun! Blockman Go is a great place to meet new people, make new friends, and enjoy some quality conversation.
User: System data of group members: {"ownerId":5935733710,"groupId":"30190633667201950","groupPic":null,"groupName":"DancaGatinhoDanca","groupNotice":"Olá,vim avisar que estou roubando a sua mãe.","noticePic":[],"officialGroup":0,"releaseTime":"2025-06-30","ownerRegion":"BR","forbiddenWordsStatus":0,"inviteStatus":0,"groupMembers":[{"userId":168057983,"userName":"~ψɀιʟu×s͜͡kyψ~","pic":"http://staticgs.sandboxol.com/avatar/1751162460439924.jpg?pendant=vip_pendant_002.svga","identity":0,"vip":0,"banStatus":0,"remainUnlockTime":0,"colorfulNickName":null,"avatarFrame":"vip_pendant_002.svga","personalityItems":{"bubble":"{\"bg\":\"vip_bubble_002_bg.png\",\"lt\":\"vip_bubble_002_lt.svga\",\"lb\":\"vip_bubble_002_lb.svga\",\"rt\":\"vip_bubble_002_rt.svga\",\"rb\":\"vip_bubble_002_rb.svga\"}","nameplate":"vip_nameplate_7.svga","pendant":"vip_pendant_002.svga"},"honorLv":0,"fansClubLv":null,"chatStatus":0,"lastModifyNoticeTime":null},{"userId":6554963918,"userName":"ZexyAI","pic":"http://staticgs.sandboxol.com/sandbox/avatar/1744307641549801.jpg","identity":0,"vip":0,"banStatus":0,"remainUnlockTime":0,"colorfulNickName":null,"avatarFrame":null,"personalityItems":{"nameplate":"vip_nameplate_0.png"},"honorLv":0,"fansClubLv":null,"chatStatus":0,"lastModifyNoticeTime":null},{"userId":691112302,"userName":"HajaKy","pic":"http://staticgs.sandboxol.com/avatar/1750882342876764.jpg","identity":0,"vip":0,"banStatus":0,"remainUnlockTime":0,"colorfulNickName":null,"avatarFrame":"frame_bronze.png","personalityItems":{"bubble":"{\"bg\":\"vip_bubble_001_bg.png\"}","nameplate":"vip_nameplate_4.png"},"honorLv":0,"fansClubLv":null,"chatStatus":0,"lastModifyNoticeTime":null},{"userId":544758655,"userName":"+__+HANNAH+__+","pic":"http://staticgs.sandboxol.com/sandbox/avatar/1750110710328434.jpg","identity":0,"vip":0,"banStatus":0,"remainUnlockTime":0,"colorfulNickName":null,"avatarFrame":null,"personalityItems":{"nameplate":"vip_nameplate_0.png"},"honorLv":0,"fansClubLv":null,"chatStatus":0,"lastModifyNoticeTime":null},{"userId":5935733710,"userName":"Alice,-,","pic":"http://staticgs.sandboxol.com/avatar/1751143914164688.jpg","identity":2,"vip":0,"banStatus":0,"remainUnlockTime":0,"colorfulNickName":null,"avatarFrame":null,"personalityItems":{"nameplate":"vip_nameplate_1.png"},"honorLv":0,"fansClubLv":null,"chatStatus":0,"lastModifyNoticeTime":null}],"GroupMembersCounted":5}
User: System data who is talking to you right now: 691112302
User: System data of last 100 group messages: {"list":[{"date":"2025-06-30T21:24:54.495Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-T8KN-UF0C-1H7D","content":"!aí web "},{"date":"2025-06-30T21:25:01.084Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-TA87-6JIC-1H7D","content":"!hel ai"},{"date":"2025-06-30T21:25:06.225Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-TBGC-EO0C-1H7D","content":"!help ai "},{"date":"2025-06-30T21:25:06.537Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNOA-TBIQ-EOMC-1H7D","content":"❓ Help - ZexyAI V3.1-alpha\n\n🔹 Available Commands:\n ↗️ !ai chat <prompt> - Chat with me!\n ↗️ !ai web <prompt> - AI will browse the web for you!\n ↗️ !ai image <prompt> - Generate an image!\n ↗️ !ai status - Check current image generation status!\n ↗️ !ai trade <prompt> - Calculate current skyblock items values with me!\n❗𝗮𝗶 𝘁𝗿𝗮𝗱𝗲 is currently in beta phase, and can make mistakes, please verify the values before trading!❗\n\n🔗 https://discord.gg/HwnN9zeBFe"},{"date":"2025-06-30T21:25:15.604Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-TDPL-6VIC-1H7D","content":"!aí status"},{"date":"2025-06-30T21:25:22.657Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-TFGO-F3AC-1H7D","content":"!aí image fogo"},{"date":"2025-06-30T21:25:28.323Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOA-TGT0-V6MC-1H7D","content":"!ai status"},{"date":"2025-06-30T21:25:28.623Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNOA-TGVB-V6UC-1H7D","content":"✅ You have no pending AI operations.\n\nTo generate AI image, try:\n ↗️ !ai image <prompt>"},{"date":"2025-06-30T21:25:40.643Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOA-TJT8-VFCC-1H7D","content":"!ai image pato"},{"date":"2025-06-30T21:25:41.097Z","senderUserId":"6554963918","messageType":"RC:ReferenceMsg","messageUId":"CNOA-TK0Q-FFOC-1H7D","content":"➡️ Generating image...\n\n🕰️ It will take from 1 to 5 minutes.\n\nTo check the status, try:\n ↗️ !ai status","referMsg":"pato"},{"date":"2025-06-30T21:25:41.798Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNOA-TK69-NG6C-1H7D","content":"🔄 Something went wrong...\n\nPossible the AI is under maintenance right now, please try again later!"},{"date":"2025-06-30T21:25:48.479Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-TLQF-VKAC-1H7D","content":"!aí imagem sapo"},{"date":"2025-06-30T21:25:56.046Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOA-TNLJ-NQ8C-1H7D","content":"e o i sem acento"},{"date":"2025-06-30T21:25:57.515Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOA-TO12-VQQC-1H7D","content":"porra"},{"date":"2025-06-30T21:25:59.051Z","senderUserId":"691112302","messageType":"RC:ReferenceMsg","messageUId":"CNOA-TOD2-VSIC-1H7D","content":"aí o mptivo","referMsg":"🔄 Something went wrong...\n\nPossible the AI is under maintenance right now, please try again later!"},{"date":"2025-06-30T21:26:03.367Z","senderUserId":"691112302","messageType":"RC:ReferenceMsg","messageUId":"CNOA-TPEP-VUOC-1H7D","content":"por isso","referMsg":"e o i sem acento"},{"date":"2025-06-30T21:26:13.743Z","senderUserId":"691112302","messageType":"RC:ReferenceMsg","messageUId":"CNOA-TRVR-O7OC-1H7D","content":"ele não fala pq deve estar em manutenção ","referMsg":"🔄 Something went wrong...\n\nPossible the AI is under maintenance right now, please try again later!"},{"date":"2025-06-30T21:26:18.968Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOA-TT8M-0CMC-1H7D","content":"ata"},{"date":"2025-06-30T21:26:20.943Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOA-TTO3-ODSC-1H7D","content":"coitado"},{"date":"2025-06-30T21:26:27.660Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-TVCJ-0JEC-1H7D","content":"néhh"},{"date":"2025-06-30T21:26:28.073Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOA-TVFQ-8JUC-1H7D","content":"ta sendo operado KAKAKAKAK "},{"date":"2025-06-30T21:26:34.061Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-U0UJ-8NKC-1H7D","content":"skskskk"},{"date":"2025-06-30T21:26:47.346Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOA-U46C-H16C-1H7D","content":"😢F"},{"date":"2025-06-30T21:26:57.542Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-U6M1-H9GC-1H7D","content":"triste 😔"},{"date":"2025-06-30T21:27:59.729Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-ULRS-AMGC-1H7D","content":"😲"},{"date":"2025-06-30T21:28:23.321Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOA-URK6-B4OC-1H7D","content":"😂"},{"date":"2025-06-30T21:29:01.404Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOA-V4TN-3UQC-1H7D","content":"sksksk"},{"date":"2025-06-30T23:25:24.052Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOC-KDLL-0G2C-1H7D","content":"oloco"},{"date":"2025-06-30T23:25:33.956Z","senderUserId":"691112302","messageType":"RC:GIFMsg","messageUId":"CNOC-KG31-0M6C-1H7D"},{"date":"2025-06-30T23:25:50.342Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOC-KK31-H4GC-1H7D","content":"ainn"},{"date":"2025-06-30T23:26:13.646Z","senderUserId":"691112302","messageType":"RC:ImgMsg","messageUId":"CNOC-KPP3-HJ8C-1H7D","content":"/9j/4AAQSkZJRgABAQAAAQABAAD/4gHYSUNDX1BST0ZJTEUAAQEAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADb/2wBDABsSFBcUERsXFhceHBsgKEIrKCUlKFE6PTBCYFVlZF9VXVtqeJmBanGQc1tdhbWGkJ6jq62rZ4C8ybqmx5moq6T/2wBDARweHigjKE4rK06kbl1upKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKT/wAARCADsAPADASIAAhEBAxEB/8QAGgAAAgMBAQAAAAAAAAAAAAAAAgQBAwUABv/EACsQAAICAQQBAwUBAAIDAAAAAAABAhEDBBIhMUEFIlETFDJhcZEjMyQ0Qv/EABYBAQEBAAAAAAAAAAAAAAAAAAABAv/EABkRAQEBAAMAAAAAAAAAAAAAAAARAQISQf/aAAwDAQACEQMRAD8A87QLJshgcWRfAEIObpFm1xdMghfkDJBL8gmrCqeURyXuPHRVKNMoE46hqGlUop3ywFSUOPQtR3XwLyjtlVAHhXuRsabiCMjEvcuDYwcY0BcC2Q2RZaCIbBs5stENgyfBDZDZKqV+yeATiUE0AySOiKmJzZyaoFsCbAZLAAl9AUE3wBbIMs5nJHM0wc9OipZbZdrcdStIq9OXu4HdXC8bYGS+JD2hxrI+UIy7NHQcY3IKe+0xSjdCmo0+OL4Q7DI3C0LahpsLmVMdFilpHPbyhOCcWl4NXF/6Ev4ZifJFjS0eOM8b3KynNgxJuooZ0P4Mq1HbBuEHBKfCHMfEULP8i+L4CDbIsFsixVHZDYLYLYoKyLBbIslUZO4rTJ4AKyLRDa8EcAFw1wcwbXghsDiLOcqAc+QiZdA2de5UMabSSyctUgrIlFIFomb5I7RpgzoZ7Z0N6nP7KM7BayJou1EroCifPJq6KN6Nsy2m0X4tRlxY9i6Af0uT/jlH4AyO3Ytg1DhdrsJ6iLJrXFq4X/4M/wCGUn7hnFrorBLHXYrFpvsi+tbQy8for1P5MHR54wnTfg7PLdJtdDE0s/zLU+Chv3llgwTZFg2RZFFuOsBsPHFydAR4siw9RJRW1FUXwAfNHJgufgFSoCxg9kOVnIoIghyfwDZBLBo5thQTnJJAXaXBvnbXBpqscaQOHGsWJLyU5svfIV59YZN9FiwSGVjYSx/s0wqx4tq6JnhUi5Q/YSgQhZYKDWFF1JEoUU/bpgvTIZIFUt9sC8M48pjiTIaJQpj+opGjD3YijahrTr2lNJTjUrRG5jeXH7q+ToaVVbCFUdfJZJJSYModCLQpbpcDFbIEY8bgtzIyNuL5BSs8l5GFdIoaamGAdnWBuR1gGmTYFkrkiicyNwNI4Cdw56fFObk10JGnpFs07l8gHnzLqxLJkJzTtimWYVfZNN+AttBroVmK0mEkyw6vglWAUGwliDSJCwH0yVFB0dtrsAXVAcFnt+SGk+mEBSsKWZYUt3CCjC3+hTXTUJ21aRcTTEc8c2ROD6HcUXJOzD0EpT1a2rhnpIx2xs0yyNf7HwKSzPY0zR1uFylb6MnVtJ7YhF8NdGMNsg4yWVWjN3rbVc/Ixo5yUqSsKsnFqRXOVF2eVMTyStkUW/kOMrF7Dgwq9MJSorTJsgNs5sGyLCjT5NZJw0sU+zP0WH62VccGnn8RXSAz5w4bE5q2aGfqkIz7CnlEJQYzHGvgtjCC8ECcU7potjjb8DKUfgm0hCqVgk/BE4KCttBZtTsjwZebUSyT7ETsanlSfBTPI5dMpulyTGTZYzXNyZym18kNuzq5NRKv0+ocHTXDL5aSOq/jF/pXKNG1p8cceNCITw6LDo/c6steqg+ExT1l5Nlx6MX7ia8lHoZZYzdCmo0EZzTXkQ02bLOaNrFP2qwrMyemKPN0ipzhp+Iq5GxlyLY+DA1TvI6QA5Mrm7ZU3yHACapkEBRfIBKYF6ZO4rTCTIo9xy56AsY0eJ5cyXgK1NBiWLDufbClcpOg3wlFeA1txw3Mik9RFY4Ny7MuU7Zdr9S8k2l0J22wbr06VBpGVp/VFKlJcjj1DlHgsYq+UkhTPqK6IlN9tieWVysDs2Zy7KYq3YGTJcqLI8RKOyW2kgoxaR0VfJNhEpfJClz1ZDkyFJ9Io0tHHdJNoenkUUJ6RNY032BqcjsAdZn3JxfKMWULyV4Hc0+BV3usC7C1DobhqGuxGMg4yCtH6sZqnwI58a3PySpETIFpRS6KZ9jTjYvmjQFTIRJxQSDjb4SsnTYZZ8ihFXZ6LRel4sMVKa3SAwVgyvqEv8NL07BOEXKUWmbahCKpRR1xEKTjB/lIX1Lll9sejTex8NID6OO7SRIVkw9NT5kMR0GKK/GzRUYrwTS+BCvNaDS3FTkjQUaQ1iwKGJKvBTNbWBTk/FoSye2xvK+xLI+yCiMLlZZut0iLqJOFXbZUW3tjRFoHmUidtMCVXkKNRd+fAP7CivegNPSKTxNsryx5pjeCNYUU5o+SjPy4uxWUDQn5KJJNkCewJRaL3FEOgoFwFZBwENFGpXtsYAyw3RAQOJmtsqORRvehadKP1WuTVllrgyfTM6WmpeC56jnkqHHlfyA8jFHqF8gPUfsB36hKysz/ALj9hLUBI0o5CxTM/HnLVqEgGN3tFc3Zbv4Kp8k1opkFJq2O5EKzjyzGKWlzKkXxiowQMcduycjqVGmUpeTpM5T4oFWwJT6RZj/7F/SqqYeJ/wDLH+lG9j4xoryxtFkP+tfwGXICOWPYrIfyxEsiAqYLDohkUNHE0SkByiRkj7SyKOyLgDKyqpsiEXJ0g9QqmXemQWTVxi+io2fTdBs0+6XbKdRDa2bKajBJdCmowxyOwMaX9Acq8ml9nFkPQwYGZvDxtyfA8vToDGLSY8fSAVxY5URktGhtVUkVZMO5AUxzrqy6MlJGTiytu2P6aaa7JoLIhbIkO5FaE8kbZlpRu2sBrdOw8kGdjjTNIFrkKqD2WdNUioplILS+7Mv6VZHQWgnepSA9FH8EQyV+KIbKKcitCWaI/JWLZokCbRFFkog0RQ0SkdQSQEpESVhMmCsgUz6bfG0irQXg1Kcka8MaYGbRpq4rkounqa8lf3X7IeCTxc9oTlFxfJUOfdfs77r9iDZFgaK1SLYZlLyZiYccjQGopL5C3L5Mz7hnfcP5As+hCqSJxYdjtFsWkTbfSIDa9otliMKXFFWVNKyKW8UBVMlyVlmOCl5KIjF0VZx7Hj4FNZHaVGdmlXA36Nh+pn3V0Z+R3I3vRMOzDv8AkDRlwitssmVNgcwJxtBWdYCmSFFLQ7kSaFpR5IK0iVwFREuCKFvksxlSLYAMY+BiPKFYMZxclxEZvbEzM7Tbo2Jw3xozdRgcGyhFkWy2UUC0iKBNkomjiiDiSANKLssT5K1wSmZE/S925h1GSBlPiiINp9AVTxR3Pg6MNvKLpxvkhKlyygsc1XJTqYqaoHNKl7eyuOWTXuCM/Lgccl15N7Q1HTxSMrLNM0NBO8VFDc5FMnyFNlbYE2c2BZDYBN8FUuSWwXIgFlc2FKRVKRFEiyLKNwSkAzF8juFe1CGBbmaGPhFxFyE9YmvHA2mROKnGmijCyLkqaZpajRtW0JyxSj4Cl1uTLEc4v4OIOIZIE5qK7Afcq6Cj7uwIUlySnyQXWl+yN78Ap8cgSk//AJIGYSvsq1GOU17XRGPc+2XKPHYC+PC0rkwpY1tCy7l0FGDcSjMy4pRk6NLQQaxWynLje5I0McaxpGsRXMpkxicCicWADYO5AZJULyy0QMtoCUl8izzAPKwLp5KKZZOSmeUpeQBtTtlikIxycjEJ2Bp6b8R2D4MzT5OkPwl7ShhSJ3FO47cBbKSoqnGDXQEp/sqnlAHJjj8CmSKj0W5M1CWfOFBmy7ehWcnJ8nTluYcMfmX+AbKVhUogp0gZTMiU7bt8BpIrpvoPHGSfJFHe0KM2dsTRKgkES7aB+pLGqotiqIyuMo+CilOUmm+h2DuKE1JVtL8MvBcF7BkkybIKinJgUl0Z+p0zhbRrFc4KSaYHnZunyC5jnqGmcHuXRmtsgKUrAZ1klEJlkMlFdHUA9iypVyO4tRx2Yqk0WRzyQG4s6+TvrL5MX7mXyd91P5A1p5kvIrl1KXkReeUvJW5N9gX5NQ35KZScuyDgCxq5fwYxKEsiWSbhHy0rooxfky1K2ldf0DRv5Il8ooeeXwiHnl8IyprHMuUzPWeS8I555/oDS+ovkj6vPBmLPO/BfHUTS6iA5vmyVFvtii1WT4iStVk+IkDcoLwdCQt91P4j/gEtTO+olGnCdllmVHVZF4iWx1mT4j/hRoA2J/eZPiP+Efd5PiP+GkX6nEsuNo89qcTx5GjZ+7yfEf8ADP189/Lik/0AhRKR1kpkHURRNnWALRwVgsCDjjgOOOOAlEgnAGnTsuTTVoXslSa6A//Z"},{"date":"2025-06-30T23:26:25.526Z","senderUserId":"691112302","messageType":"RC:GIFMsg","messageUId":"CNOC-KSLT-HRGC-1H7D"},{"date":"2025-06-30T23:28:12.859Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOC-LMSE-RPKC-1H7D","content":"!ai chat"},{"date":"2025-06-30T23:28:13.172Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNOC-LMUT-3POC-1H7D","content":"❌ Invalid command format.\n\n➡️ Usage: !ai chat <prompt>\n\n──────────────────\n\n🥳 Congratulations Alice,-, you reached level 𝟰!\n\nSet your own 𝗹𝗲𝘃𝗲𝗹 𝘂𝗽 𝗺𝗲𝘀𝘀𝗮𝗴𝗲 𝗰𝗼𝗻𝘁𝗲𝗻𝘁 with !𝗱𝗮𝘀𝗵𝗯𝗼𝗮𝗿𝗱 command!"},{"date":"2025-06-30T23:28:26.867Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOC-LQ9S-RUUC-1H7D","content":"HIIIIJAAAAAAAA "},{"date":"2025-06-30T23:34:20.834Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOC-OGN8-G6GC-1H7D","content":"! ai chat"},{"date":"2025-06-30T23:34:21.510Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNOC-OGSH-G6QC-1H7D","content":"❌ Invalid command format.\n\n➡️ Usage: !ai chat <prompt>"},{"date":"2025-06-30T23:34:30.691Z","senderUserId":"691112302","messageType":"RC:ReferenceMsg","messageUId":"CNOC-OJ48-OA4C-1H7D","content":"oi","referMsg":"❌ Invalid command format.\n\n➡️ Usage: !ai chat <prompt>"},{"date":"2025-06-30T23:34:39.039Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOC-OL5F-ODMC-1H7D","content":"!ai chay"},{"date":"2025-06-30T23:34:54.030Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOC-OOQJ-GN0C-1H7D","content":"!ai chat"},{"date":"2025-06-30T23:34:54.638Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNOC-OOVB-GNCC-1H7D","content":"❌ Invalid command format.\n\n➡️ Usage: !ai chat <prompt>"},{"date":"2025-06-30T23:35:03.789Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOC-OR6R-8SIC-1H7D","content":"!ai chat oiie"},{"date":"2025-06-30T23:35:04.607Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOC-ORD7-OTEC-1H7D","content":"! manutenção "},{"date":"2025-06-30T23:35:07.990Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOC-OS7L-GVIC-1H7D","content":"kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk "},{"date":"2025-06-30T23:35:13.176Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOC-OTG6-12MC-1H7D","content":"!ai chat helou"},{"date":"2025-06-30T23:35:14.712Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOC-OTS6-13EC-1H7D","content":"sksks"},{"date":"2025-07-01T15:26:11.888Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOQ-C7RC-00GC-1H7D","content":"!ai chat bora zoar alguém "},{"date":"2025-07-01T15:26:20.966Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOQ-CA29-G52C-1H7D","content":"!ai chat"},{"date":"2025-07-01T15:26:24.642Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOQ-CAV0-G68C-1H7D","content":"@ZexyAI "},{"date":"2025-07-01T15:26:28.379Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOQ-CBS6-O7GC-1H7D","content":"! Level"},{"date":"2025-07-01T15:34:03.448Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNOQ-FQVE-71KC-1H7D","content":"! level"},{"date":"2025-07-01T20:11:44.708Z","senderUserId":"691112302","messageType":"RC:ImgMsg","messageUId":"CNOU-EULH-310C-1H7D","content":"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"},{"date":"2025-07-01T20:11:45.093Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNOU-EUOH-B16C-1H7D","content":"🥳 Congratulations HajaKy you reached level 𝟯!\n\nSet your own 𝗹𝗲𝘃𝗲𝗹 𝘂𝗽 𝗺𝗲𝘀𝘀𝗮𝗴𝗲 𝗰𝗼𝗻𝘁𝗲𝗻𝘁 with !𝗱𝗮𝘀𝗵𝗯𝗼𝗮𝗿𝗱 command!"},{"date":"2025-07-01T20:11:58.310Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F1VP-J5CC-1H7D","content":"ae"},{"date":"2025-07-01T20:11:58.748Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F237-35IC-1H7D","content":"g"},{"date":"2025-07-01T20:11:59.107Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F260-R5MC-1H7D","content":"g"},{"date":"2025-07-01T20:11:59.492Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F291-360C-1H7D","content":"h"},{"date":"2025-07-01T20:11:59.874Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F2C0-J64C-1H7D","content":"g"},{"date":"2025-07-01T20:12:00.236Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F2ER-366C-1H7D","content":"g"},{"date":"2025-07-01T20:12:00.596Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F2HL-36GC-1H7D","content":"g"},{"date":"2025-07-01T20:12:09.308Z","senderUserId":"691112302","messageType":"RC:GIFMsg","messageUId":"CNOU-F4LN-39MC-1H7D"},{"date":"2025-07-01T20:12:09.673Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F4OI-BA0C-1H7D","content":"kdbjd"},{"date":"2025-07-01T20:12:10.489Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F4UU-BACC-1H7D","content":"dhdidhd"},{"date":"2025-07-01T20:12:11.748Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F58P-3B0C-1H7D","content":"dhsisshoi"},{"date":"2025-07-01T20:12:11.856Z","senderUserId":"691112302","messageType":"RC:ImgMsg","messageUId":"CNOU-F59K-3B2C-1H7D","content":"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"},{"date":"2025-07-01T20:12:12.453Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F5E9-BB6C-1H7D","content":"oi"},{"date":"2025-07-01T20:12:13.094Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F5J9-JBGC-1H7D","content":"oi"},{"date":"2025-07-01T20:12:14.206Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F5RV-JCCC-1H7D","content":"gente"},{"date":"2025-07-01T20:12:14.932Z","senderUserId":"691112302","messageType":"RC:ImgMsg","messageUId":"CNOU-F61L-3CKC-1H7D","content":"/9j/4AAQSkZJRgABAQAAAQABAAD/4gHYSUNDX1BST0ZJTEUAAQEAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADb/2wBDABsSFBcUERsXFhceHBsgKEIrKCUlKFE6PTBCYFVlZF9VXVtqeJmBanGQc1tdhbWGkJ6jq62rZ4C8ybqmx5moq6T/2wBDARweHigjKE4rK06kbl1upKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKT/wAARCADwAGQDASIAAhEBAxEB/8QAGgAAAgMBAQAAAAAAAAAAAAAAAAQCAwUBBv/EADwQAAEDAwIDBQUFCAIDAQAAAAEAAhEDBCESMQVBURMiYXGRFCMygaE0U7HB0RVCUmJygpLwM+E1RKLC/8QAGQEBAAMBAQAAAAAAAAAAAAAAAAECAwQF/8QAIhEBAQACAwEAAQUBAAAAAAAAAAECEQMhMRJBEzJRYXEU/9oADAMBAAIRAxEAPwB+4ranPqHbks5zi4knmr7l0MA6pWVg1SlcJXJRSh9WDsPqVaRFX0GwNZ3O3gFC6vKdsBqkuOzQrpWTeODOIh9ZpdTgY64/VaKHrW9ZcyAC1wzBVs6n+DfxWfw5uu4qVw3QwyAE8w4PmfxRCyVDUGudJgb/AO+iJSXEXkUTGJcGny3QM07qjVfpY8E9FXXAY7VyccpK3ZTdes7CdDRJJTld0uA6ZUXxMMWp92fNCrs/+E5/eQoWXXgLHBp3BIKWlaXGqBY/tQO67n4rLlV1pO9uygHSQRyXJXJQNteHCQovax4h7Q4eIlLBxaZaYUxX/ib6K8qulwhogAADkFS6uKTi0tJ5o9obyBKrqv7TdoxzO6Wk/tIXOp7RoM8lYWNczS8BwO6qpups5aT6qRqs/iB8kn9l/p1jKdFp0NDRzVD3zLiuveXnoOircdh1Ki0kO2eKMdChctD7o/1IQbfGQDbMB2L/AMivPvw4joV6PitI1LQubvTOqOv+yvOVmubUJdjVy6JlOzG9IyiVyVHVKqsk5waCTsln1C8526K2oNTYmFQ9rmGHCFfFjy2uKxtYgQc9FUVYKLuzL4+Ste2eNs8RdUc7ckeSG1HNOSSPFQRk7CU0TK7NSuAF9QNaC47AASSVFuGgdAvWcLsKdnbsJYO2cJe7n5Kkm3RaRs+FVm0PelrHEzp3hC2XboVtK7SIDgQRIOCF5viFv2dU03ctj4citv26j1Polr59vd0o1EPHwmFH1P5T83+GCKQ5kkLr2B0RgjZW+z1eg9VRrl2kZMxtzTcTqhrA0yTJUnQRBAI8VZ7PV6D1XDQqjkPVNw1VIYwGQxs+SlKYpcOu6zdVOmHCYnUFL9k333I/yH6qUeEHUaZMx6Loa1ogABPfsi++5H+Y/Vc/ZF/9yP8AMfqiOkeD2XtF60kk06XfP5BeqSdhaiztxTawlxy52MlM6nfwH6JAO3QoOcZy0hCked9ofzaD80e0kfEyPmqNSi92B5rDTp2eL8KFMh1IvaCN8QoapBHgrmPa5sg4UydItRpvf2YLxB6ILsrj6jZwZ5KtztiNiFNnRG7wkzaH+oot+JU6z2sLHtc/aR/KHfmo8Gk2RjfUUNqcSLRqo0WuztkbY5jn/oWk8YZeus4pbvLAA/viRgdYjfeYHzCkeJUhSZV0v7NwcZjIggbfNcPtZpt10qbnirzA+Hrvv/sFVtr8Sc0e4YDoDstjMnHxdOX1GylC53EKbGtcWv0ubI23zj6FcbxK3fRNUatIdp238f8Aeijr4iHu91Tc0wABy7x8ekKLn8RaQSymZlsBuJ1QDvIEZKByp8SEVPiQg8Y2r3Zd1hdc8FoIM5T/ALFbxGkxvuVz2K3GdJ26rH6jo+aXNTGN+S4abz3hkHkOq6+2qOqO0kBoPdlMW4NOkG1BLgTOVb8IsU9k4CSYIGypbWzoO4wVovFN5yDgxv1VbqVMsLI7spuGq1uBmbH+8rRSHCGBlnDcDUU9B6/RXnjG+qri3FfTLnNLTIIKr9i9yKfb1sEnVqycz/0mc9fojPX6KUK6FHsWuHaOfqcXS4zHgrVyD1+iIPX6IIVPiQuVJ1boQeepPJptk8lx7jJPKFCkfdt8kP7wI6rGTt029JUXHvh7cB0Awo1KdQ3BIJayM5V1J4ewOHzRVfpGcK35URcY8yQFycnzS9SrJYfGVZryZ6pYtK3eEfZP7irrq7p2untA6HTkbCIn6SfIFUcH+x/3FcfVvXMDXWbHEBpkuEGfiHhiVeeML6sZxGg4tadbXO1d0tM90wdlL9oWwoNrOeWNMDLTMwDHoVU83Jpsi1pmo4vkkDu5Jb64Urd1w4tbWtWNA0yRG+nOPopQk3iFF3aQ1/uywHG+raPVXUK9K4aXUnagCWkwRkJRzrk0sWTNRbLmkiCQTj8FYKtyHENtA2XGTI6b/kgYqfEhFT4kIPLUz7tvkuPdBARw66FK2q09UOnUJ57YVh4k7VpbTGoEZPIDkqfLaZbJ9s9lTUzE7hT7R7x3iSSmXXt7Uf7siXOBAA57Kurd3dR7qL3B24MAZ8lbW/EWyel6oMNwdoUmVC5pad03wl7qNwW7seMyYHmn7x9MiAZqDlEQoT+TfBfsX9xT6z+Esa+0lzWuOo5hO9lT+7b6K0ZX1NCh2VP7tvojsqf3bfREJoUOyp/dt9EdlT+7b6IOVPiQovYwHDGj5IQeJtBLwtalw6qy7Bc33QEOII6ZWbZgQ3zP4BespMp1adOqW50z6pvSdbJ2du1lQGpSIBILXKqlw6lTuBVbVLnNfOkDoVragAPHZdDWgkgAEqMcrj4ZY/XrOuLNlBprUyGkbA8is6u7usYwkPI7xO+60OJ3opVBSFMPO8nYH81l6yX6iZJOSeaietpK3OCfYB/UfxTtYvFJ5pxrDTpkwJ8UpwcRZD+oputTFai+k4kB7S0keKsxvpWm+9bROsU3kM7rgZ1O5dPyRqvyTIpNENgjcnnzXDwymZPbVRvsQIJMyMb5Uv2dTlpNWqS0giXdGwiFg9qNz3iwUQeW53/6+qYS1CzbRqB4q1HEN094+f6/RMoK6nxIRU+JCDytGwqUx/yN/wBA/RalndigOzc8OYAIA3GP1lIXtcsIpjmJKWDjzXFOTks3W0xj0fttP+ByjUvCR7sR4lYTq9aGsY7HnlVMubltUgk43B2SZcl/Mazi20bmg+sQ7WNUzJVIsngDvjCao1RVb4qxY/8ARyTpFlxuj3DKbqVm0GDJJTeeg9VTZ/ZmfP8AFXr0cLvGWua+uZ6D1RnoPVdQrIcz0HqjPQeq6hBBzS4zhCmhB5i7pggPiTtskmPMmW46laF4KnYE03aSN1kPqPBOrunpC8/im8XXJ1s1buDnvAIkckVBFR2YwInml7JwFQEbncpm7e2NP7zlezWWl8bTFg47uwE+senULYanaNxGDkLDlwu9xfPD67jds/szPn+KsdVptdpc9oOME9cD1VNtUZTs21Hva1g5kwN0pdW9pd3dG5N2WlumA04xLhPTE7r0eP8AZP8AHn31qLkiYkTvCzxbW7rWnQbcshh7WRBxnPh1lU07a0c3Uy7ZLQAXwAYMET1n6kq6Gq57GRqc1smBJiVJZhsKAquL7ls6gS3A26/Igeits6lva29Om+5puc/OrVMiMZ6ACJ8EDyEIQeaun90NG/RIFh/f25DmmK4NOo8u5nCUeSXSuDjmp09LHUgcR+6ICgCHOmZM7rjyS2AR4qTQNIJC3Pa6TDhmFbTqhuXHKpfkSOWy6DIlRZuLbepsKTbjhdIOJHMEHO5Uhwu2AA78DYTtgj/9Fc4L/wCLo/P8Snlvj5Hm5/upSlYMpXLqrXHSQRp8TEmfkFE8MtyGg6jpwCT4AfgE6hWVK1+H29eqalRpJLdJgwCII/P6DoonhtuQJ1Eh2uZzqlxn1cSnEIBCEIPPVaIqs0kEdCl/YAGuLnF2MCE+hePOSzx1TKxhutKrSIpvOf4Sp+z1cDs34/lWwlqtWahZpJhbTmyq8zu2eaFX7t/+Kgy3rAn3bgPJaNvWDzpEx4q8qbzZTrR+pWlwYFvDKIIIOcHzKdS9h9kZ8/xTC78LvGVyZXdoQhCsqEIQgEIQgxkIUX1GswTnovEjpk34hXqsotlx32hZlW5DyfeObnEKV1cFxcYzt5JepSa8atjGV18fHMZutMsfmdembe5YHAvc0EHJT4c14lpBHULHZSBaQBgA+qY4dqZVLSdwcJycc1uHxdbensSBaMnx/FXrP9l9r4dTpy0QSZcCeo6jqgcOrh0tvHNGZaAQDLtXI/LC7eP9k/xx31oSurPbw6qP/bd8WrAIjDgYz4z1xv0KNvcU7tzXXLix1NwbLiT+6Jgnln1V0HyQNyiVnt4eBXpPq3Be5pGkEnlJjJ/GVB1iaVSBfOpio5x0gkTLnHr/ADD0QaiFwCAAOXVCDGe4MaSVnVqjqkuH0V13VzAOyVaSWY3leXx46m3pceOptClSL64DxjchNOtGci4KqkYrN1YTHbA0Xv5DCvnct9MuTf0zTJfDdicJqjU7KpkTyXQG7tABOx6JcCDGSeclab+ums76emo9nV4SdbiKbmO1EbgZlLmy4c+np9pHfzIe0EiZjyxsmOFtbU4VTY4S1wcCPCSrHcPtnu1Opmc/vHx8f5j6rrwmsZHn5zWVL1LSyqVKeq5l1NopAaxnBEHqTP080U7eyt67z7QGP0lkOc0QIHhyDfLdM+wW2kN7OQH9oJcfiiJ3Xallb1C8vpyanxd4icR+asqVZQsOxp24uARSeS2XCZdn88KFC1sKdWjor9o4v1MGoOkxv/8AJTX7Ms+57n4CC3vHB8MrtHh9rQe19OmWlu3ePj4/zH1QNIQhB//Z"},{"date":"2025-07-01T20:12:16.357Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F6CP-BD8C-1H7D","content":"oi"},{"date":"2025-07-01T20:12:16.979Z","senderUserId":"691112302","messageType":"RC:ImgMsg","messageUId":"CNOU-F6HK-RDOC-1H7D","content":"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"},{"date":"2025-07-01T20:12:18.820Z","senderUserId":"691112302","messageType":"RC:ImgMsg","messageUId":"CNOU-F701-3ESC-1H7D","content":"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"},{"date":"2025-07-01T20:12:19.445Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F74T-BFCC-1H7D","content":"ababab"},{"date":"2025-07-01T20:12:20.760Z","senderUserId":"691112302","messageType":"RC:GIFMsg","messageUId":"CNOU-F7F6-3GAC-1H7D"},{"date":"2025-07-01T20:12:22.916Z","senderUserId":"691112302","messageType":"RC:GIFMsg","messageUId":"CNOU-F801-3H2C-1H7D"},{"date":"2025-07-01T20:12:22.996Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F80L-3H4C-1H7D","content":"! rank"},{"date":"2025-07-01T20:12:25.182Z","senderUserId":"691112302","messageType":"RC:ImgMsg","messageUId":"CNOU-F8HN-JHSC-1H7D","content":"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"},{"date":"2025-07-01T20:12:27.414Z","senderUserId":"691112302","messageType":"RC:ImgMsg","messageUId":"CNOU-F935-JIUC-1H7D","content":"/9j/4AAQSkZJRgABAQAAAQABAAD/4gHYSUNDX1BST0ZJTEUAAQEAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADb/2wBDABsSFBcUERsXFhceHBsgKEIrKCUlKFE6PTBCYFVlZF9VXVtqeJmBanGQc1tdhbWGkJ6jq62rZ4C8ybqmx5moq6T/2wBDARweHigjKE4rK06kbl1upKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKT/wAARCADsAPADASIAAhEBAxEB/8QAGgAAAgMBAQAAAAAAAAAAAAAAAAECAwQFBv/EACkQAAICAQQCAgMBAAIDAAAAAAABAhEDBBIhMRNRBUEUImEygZEVUnH/xAAZAQEBAQEBAQAAAAAAAAAAAAAAAQIDBAX/xAAdEQEBAQEBAQEBAQEAAAAAAAAAARECEgMTITFh/9oADAMBAAIRAxEAPwDn1YUTCjhj3ahQmmTSQ6GJqqn7HTJ0FDyarpgkyygSQ8moUx8k6Qh5NKLZJN+xDrknk9Gpy+mNZZr7Ig0TxD0s8819j/JmUgT84vpoWrmiX58jKFE/KJ6a/wA5klr/AOGGhk/GHpv/AD16D89GAKH4w10o6yL7ZL8vH7OXQJP2Z/GLrq/lQf2OOaH/ALHJp+x3JfZL8TXX8kW+JBuXtHJU5exrNNfZn8V11rXsP+TlrPkr/Q1nyX2T8TVIAB7HMAAygoEgsOQGITDkKYhifYQDvki/4Nc8AMQ6+goKVgFAEA7EFADYBQ6KEMYUQIGOxcAJsAaAB8ARsYUUwpjvgCAFYwqwiLYEtoUURXY0xhwAWJsBEUWyUIym1EVUa9Bjcp7io0YNDFJbvsjm0cUv17N6Ks04wTkwSa401tbXoVjyS3Tk/bIEdvCVg2C54Jbf4yGIpAP/ALENPIC6ATRdZ65OwsVAVzAcjACPNByOxkVGmMYANIGgYuQgoYWBQAJsLAGAf6dIl4pNAV0CJOMo9oKZAjqaHG4479nOxQeTJGNHdxwUMaj6KFfBz9fk4o6GThWcTVT3ZnyZrr84pXo0YNNPUdcJFFXKK9noNJCOPAnX0WTW/p15inFpcWCCc6v2y+KwuN/rRgzZJarO8adRRKWhzWowb2G3nv8A1q8ODNcY1Zl1Xx1ftEUoS0eWM+a+zpQyxzYrTsmHqx5+SadMi0atcorJwZmc7/Hsk9QqESIssrl3xgsQAacBQDQACGIApp0DkITAVjsQBAwsH0CV8BGvRYfI7N6wcNUZtD+kaZseRRjx2QZp6W3yJaSMe0XLLKT6HNZNrdAV6TTpZXL0buzPpU0v2+zTRUZtXPZhbOFv3TbOz8lxppHEhCT+iV346xZBq0/R08Wth49sjmrBNRtihDI3xFssXvqV08OowY5uRo/8rhS+zjY8c5S2uLTNS+Pk/sbXKyVp1Gr0+ojTZLDmw4sSjGRgy6Z4r4bKE8ilWxom1qSNGqmp5G0UfZd+Pka3NFbTg+Uc7Xq46mIoGPixMsXvEWAxG48fX+gYICsARJDpUFVsOSboXBFAUiI7CDgt02O5Wyou086ZUbOuvouww3O30VQV0n9muFJJIFTjBLpEpq4guhZXUAiONcplt1ZTjf6jlL9H7IjPrJblsrsz/j7adF8V5clv6L3G1Xoq7jLHFue32dDT6SGCO+VFGlrzfsbdYr0s69GuY599VzMvyOmWocKXDqzfHFGUVOL4as8nieGesazJtuXB6zGlDSOuVRbjPqsc9fpoZ/FKnI2/j4s0FJRXJ5PUPG9Xujbm5Hrfj934sN3olkPVH46SqijNooS7RvE6ONn9an0sed1emWDldGRnV+UrJnhgj/p8nMz4csJ/vGkI9M+lsVNpA2PYNxpHRi1G2FsYqCFbDcx0OgqPLBWT2jSAi0FDBkCfRbpobsiKmuDRpGk+SpWu2pqvo04+eTLjXJtxKl0BbFcFeeXCRO6RTK5SCHHpBN1yNKkV5XxQU9NGrkWe2EeFQMIpgpPK6+jQ9TJRcMi74Ksa5kyGeS4FuM3nRi0OneTyKCv+nShW2vowYJdcmuEjnembyyT+H07z+aCqV2zowgoQUV0hKQ3JRW6TpIs61iwwfRxtd8/hxxccL3SH8H8hLVqan3ZbKFpYyy/K5J5Fe1fqbdZjg8LbS4JTcMcpSqmzBq9XcXFEjrI5bk3J0Qv6JtK7EqRttFDG2rFZFOrQ0JMdgMZGwTChiFYmBIeN1kXJW2RnJwSZWa7OBco2x6OVo9TFxjZ0oTTSplRKTIjsRAFeRcosK8nLAsXQN8CXESLfAE41tKs/+bosxf5ZDUcRa/gzTVWKfKfRsx5E32ciMpJNWWxyy45Od4qf66/lS7aMHzGtjj0rUZcyM+fJPJDbGVGP8GWSa82VuJeeTw5WLFLNlUUuWz03xWh/CxynOXLM+LT6bSy3rlroq1Ouy5otQ4Olur4xp1OtttJmGeVyZBRzPloi1JOnFok5DtsTFdEuAsoXI6EmFhRyFOwsLAKBdjsCACie1CoqltsUoqXDJAErJulimzoabWNxVsxamLfKKY5HEOdd6GqTfLNEMsZRuzz0NQy5ahyXDopK7ymnymityuXZxo55rqRdDUSK0692lyDOfDUyLoahPtkxZ/WpOk/oy/IZ1ix3fJOeeKhy0czXZfMqS4R2+UlOubhQ1SfZessXHhnK+qLcUtrO3fyyanzv9bnkfNFa1Ddp/QrtMqyKuUeby9WSL5T3Pklh5kklfJjU22ku2dX4/TyjJSn0YzK599THS0uCO1bor/o0PTYZLmEf+iCyxSpEozs28nVU5Pi8GRcJIwaj4eUW3jlx6O3CXA5UTEnVeUy6bNivdF0v4U0eh+SzRjhcb5Zw2yV2lVpBRP8A+ibRlpFDEDAdthyRTolu/gDAVhYBJXFoyy08u0a7DsqWMSxv0TjGumbEopdC2x7oM4y7ZWWRnsVyLmkY9Tk3OkdeedS3Gh6mL6Essn0zEi6E6NX5VvjqNSbfbsfCTKlPgjPLwdfl87K6d9zFU0lIW6lX2aNJp3qdSoeztw+CxVcuzr9O5/jyzr+uNhlcFySk4/bJ/JaN6OS2vgxOTbRjn57Ndv1a9PgTjLMuos3LV8JJGTQaiMdNkxPtsipUv+Tz9zE3XShm3fZpxZTjLI4vguWpaRzlZ8u7jyEsmVRTdnDWulHpkcmtnNU2EnB/I5Xlnw+jE7Jybbti4MukiKT+x0PgZFRSDaT4BAJRQbQsd2AqCkMLAKAAClQnwSsT5LGarnLamYnyzXmVwbRjPf8AGSuHVMEwA9XiMesS3MLsjfAJl8wvVrb8bqVg1SnLo9CvlcNXaPJWPc/Zx6+Pqpro/K6xaif68o567Ehx7O3mc8rLtW4f9M0FOKNOy4+Z9f8AXp5AAM87YpAAFKTESa4FREILJbRbQpWOw2go8kDoQ2IqAVgOgEmx3wBGU0kwmnbE5pGfJm44KZZW+2akYtaM2VKFL7MyZFyvsdnr+fWOVSYhWFnq/RjDDoVhdln0iYkhoSGmdueoYBxdMQN0Y+vcxrmNEMq+y1STXZgUmSWSj5Xd/rvK3pj4Mcc/svhkTOLUq2wsimOguhyCxMVEVNSRKysaKqfDGkiCdD3AIQWFoB0JugtCbQRCcqM2TI3dsuy9GXImajFqF2JhTEVztAxDNS4h2FiA37oLGhInFD2s5OKLFjbJY4ovjFF/ax0nChYnRCeNxVs2bURzJPGS/W0vGMIBJUxI5W65i+SyMmmVjXZGo1452W2ZoWXromNxJDSsimSTI0mocD2Ap0PeiKjsYtrJ7v6DYFNi5ChlQCfYAURkrKZwNBFqxGbGOUSDjRsljshLGaZ8stAXeP8AhFwfoazioZPY/Qtv8KYiiUXyG3+Bta+mTVi+EkXRkvZjVk1Jma6Tps3L2V5ciqrKN0mvsiou+bELdKXLFTLNhOOMrniiiaiXrF/CSxitYrgi0bjQ1EyuEFktobSNI7uB2PaG0oW8kpX2R2htIHQ6sp80vSDzS9IqatoKKvNKukLzS9IpqwKK1ml6Q/NL0gat2kXEh5pekHml6QNS2BsIeaXpD80vSIH4xeNCeaXpC80vSKn8S2CeMi8svSDyy9IH8PxjWMXll6RJZpekA1i/hLxfwj5pekPzS9IKfjJqFFfml6QeeXpAXKI9qKPPL0h+eXpBdX7Q2oo88/SDzz9RIavpCop/In6RF55ekDWgDP55+kDzy9IGrwoz+efpD88vSBr/2Q=="},{"date":"2025-07-01T20:12:27.951Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-F97B-RJ2C-1H7D","content":"! level"},{"date":"2025-07-01T20:12:28.255Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNOU-F99N-RJ8C-1H7D","content":"𝗛𝗮𝗷𝗮𝗞𝘆'𝘀 𝗥𝗮𝗻𝗸\n\n🔸 Level: 𝟯\n📊 XP: 𝟱𝟯\n📈 Progress to Level 4: 𝟯/𝟰𝟬 XP\n█▒▒▒▒▒▒▒▒▒▒▒▒▒▒ 7%\n\n⚙️ 𝗫𝗣 𝗦𝗲𝘁𝘁𝗶𝗻𝗴𝘀:\n• XP per message: 𝟷\n• XP delay (sec): 𝟷𝟶\n\nCheck group rankings with !𝗿𝗮𝗻𝗸 𝗹𝗲𝗮𝗱𝗲𝗿𝗯𝗼𝗮𝗿𝗱 command.\n\nUse !𝗱𝗮𝘀𝗵𝗯𝗼𝗮𝗿𝗱 command to change XP settings easily!"},{"date":"2025-07-01T20:12:38.336Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-FBOG-3O8C-1H7D","content":"! aichat"},{"date":"2025-07-01T20:12:38.941Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNOU-FBT7-BOIC-1H7D","content":"❌ Invalid command format.\n\n➡️ Usage: !ai chat <prompt>"},{"date":"2025-07-01T20:12:46.649Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNOU-FDPE-BTSC-1H7D","content":"! aí chat oi"},{"date":"2025-07-02T00:04:34.255Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNP1-PH6J-TMGC-1H7D","content":"!ai chat oii"},{"date":"2025-07-02T00:04:40.300Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNP1-PILR-5PAC-1H7D","content":"morreu"},{"date":"2025-07-02T00:04:57.545Z","senderUserId":"5935733710","messageType":"RC:ReferenceMsg","messageUId":"CNP1-PMSI-E38C-1H7D","content":"!rank","referMsg":"🥳 Congratulations HajaKy you reached level 𝟯!\n\nSet your own 𝗹𝗲𝘃𝗲𝗹 𝘂𝗽 𝗺𝗲𝘀𝘀𝗮𝗴𝗲 𝗰𝗼𝗻𝘁𝗲𝗻𝘁 with !𝗱𝗮𝘀𝗵𝗯𝗼𝗮𝗿𝗱 command!"},{"date":"2025-07-02T00:04:57.863Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNP1-PMV1-U3EC-1H7D","content":"𝗔𝗹𝗶𝗰𝗲,-,'𝘀 𝗥𝗮𝗻𝗸\n\n🔸 Level: 𝟰\n📊 XP: 𝟵𝟰\n📈 Progress to Level 5: 𝟰/𝟱𝟬 XP\n█▒▒▒▒▒▒▒▒▒▒▒▒▒▒ 8%\n\n⚙️ 𝗫𝗣 𝗦𝗲𝘁𝘁𝗶𝗻𝗴𝘀:\n• XP per message: 𝟷\n• XP delay (sec): 𝟷𝟶\n\nCheck group rankings with !𝗿𝗮𝗻𝗸 𝗹𝗲𝗮𝗱𝗲𝗿𝗯𝗼𝗮𝗿𝗱 command.\n\nUse !𝗱𝗮𝘀𝗵𝗯𝗼𝗮𝗿𝗱 command to change XP settings easily!"},{"date":"2025-07-02T00:05:05.961Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNP1-POUA-E6KC-1H7D","content":"haha um a mais"},{"date":"2025-07-02T00:05:07.376Z","senderUserId":"5935733710","messageType":"RC:TxtMsg","messageUId":"CNP1-PP9C-678C-1H7D","content":"😝😝"},{"date":"2025-07-02T00:18:01.537Z","senderUserId":"168057983","messageType":"RC:TxtMsg","messageUId":"CNP1-VM9G-9BUC-1H7D","content":"mds"},{"date":"2025-07-02T00:18:04.251Z","senderUserId":"168057983","messageType":"RC:TxtMsg","messageUId":"CNP1-VMUM-PDQC-1H7D","content":"muito grupo"},{"date":"2025-07-02T01:03:41.244Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNP2-KJ5F-7EGC-1H7D","content":"!aí chat"},{"date":"2025-07-02T01:03:46.465Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNP2-KKE8-FGMC-1H7D","content":"! help"},{"date":"2025-07-02T01:03:47.036Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNP2-KKIN-7GSC-1H7D","content":"❓ Help - ZexyAI V3.1-alpha\n\n📜 Available Help Pages:\n ↗️ !help group\n ↗️ !help ai\n ↗️ !help economy\n ↗️ !help nameplates\n ↗️ !help bg\n ↗️ !help event\n\n➡️ Manage your group easily: \n!dashboard\n\n➡️ Invite me to your group: \n!invite\n\n➡️ Support Server: \n!discord\n\n🔗 https://discord.gg/HwnN9zeBFe"},{"date":"2025-07-02T01:03:50.186Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNP2-KLBA-NI0C-1H7D","content":"! aí chat"},{"date":"2025-07-02T01:03:58.348Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNP2-KNB3-7KEC-1H7D","content":"!ai chat "},{"date":"2025-07-02T01:03:58.640Z","senderUserId":"6554963918","messageType":"RC:TxtMsg","messageUId":"CNP2-KNDC-7KQC-1H7D","content":"❌ Invalid command format.\n\n➡️ Usage: !ai chat <prompt>"},{"date":"2025-07-02T01:04:06.658Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNP2-KPC0-NNIC-1H7D","content":" !ai chat oi"},{"date":"2025-07-02T01:04:19.103Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNP2-KSD7-VRKC-1H7D","content":"!ai chat oie"},{"date":"2025-07-03T16:09:54.097Z","senderUserId":"691112302","messageType":"RC:TxtMsg","messageUId":"CNQ4-6JHC-A4OC-1H7D","content":"aee"}]}
User: oi
Assistant:
ASSISTANT
oiiiiiii 👋 como tá?

turns-00084.parquet:40481

03546d8248d2bd42adc99261
turn 1/1gpt-4.1-mini-2025-04-14EnglishTaiwan585 words
degenerate_repetitionAbsentFinal dense release
USER
html tonejs mp3 player delay share "#/"
ASSISTANT
It looks like you're asking for a simple HTML example that uses Tone.js to create an MP3 player with some kind of delay effect, and something to do with sharing or a hash fragment like `"#/"`.

I'll interpret your request as wanting:

- A simple web page using HTML and Tone.js
- The ability to load/play an MP3 file
- Adding a delay effect using Tone.js
- Possibly using the URL hash (`#`) to share the current playback state or track info

Below is a basic example implementing these ideas:

```html
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <title>Tone.js MP3 Player with Delay</title>
  <script src="https://cdn.jsdelivr.net/npm/tone@14.7.77/build/Tone.min.js"></script>
  <style>
    body { font-family: Arial, sans-serif; margin: 2em; }
    input[type="text"] { width: 300px; }
    button { margin-left: 10px; }
  </style>
</head>
<body>
  <h1>Tone.js MP3 Player with Delay</h1>

  <label for="mp3url">MP3 URL:</label>
  <input type="text" id="mp3url" placeholder="Enter MP3 URL here" />
  <button id="loadBtn">Load</button>

  <div style="margin-top: 1em;">
    <button id="playBtn" disabled>Play</button>
    <button id="stopBtn" disabled>Stop</button>
    <label>
      <input type="checkbox" id="delayToggle" />
      Delay effect
    </label>
  </div>

  <p id="status"></p>

  <script>
    let player;
    const playBtn = document.getElementById('playBtn');
    const stopBtn = document.getElementById('stopBtn');
    const loadBtn = document.getElementById('loadBtn');
    const delayToggle = document.getElementById('delayToggle');
    const mp3urlInput = document.getElementById('mp3url');
    const status = document.getElementById('status');

    // Create delay effect node but don't start connected yet
    const delay = new Tone.FeedbackDelay("8n", 0.5);

    // The player node will be created dynamically
    let playerChainStarted = false;

    // Function to load MP3 from URL
    async function loadMP3(url) {
      status.textContent = "Loading...";
      try {
        // Dispose previous player if any
        if (player) {
          await player.dispose();
          player = null;
        }

        player = new Tone.Player(url, () => {
          status.textContent = "Loaded: " + url;
          playBtn.disabled = false;
          stopBtn.disabled = false;
          // Update hash for sharing
          window.location.hash = encodeURIComponent(url);
        }).toDestination();

        // Connect delay only if toggle is checked
        if (delayToggle.checked) {
          player.connect(delay);
          delay.toDestination();
        }

      } catch (err) {
        status.textContent = "Error loading audio.";
        console.error(err);
      }
    }

    // Load button click event
    loadBtn.addEventListener('click', () => {
      const url = mp3urlInput.value.trim();
      if (url) {
        loadMP3(url);
      } else {
        alert('Please enter an MP3 URL');
      }
    });

    // Play button event
    playBtn.addEventListener('click', async () => {
      await Tone.start(); // Required to start audio context on some browsers
      if (!player) return;
      if (!player.loaded) {
        status.textContent = "Audio not loaded yet...";
        return;
      }
      player.start();
      status.textContent = "Playing...";
    });

    // Stop button event
    stopBtn.addEventListener('click', () => {
      if (!player) return;
      player.stop();
      status.textContent = "Stopped.";
    });

    // Delay toggle event: reconnect the node chain appropriately
    delayToggle.addEventListener('change', () => {
      if (!player) return;
      player.disconnect();

      if (delayToggle.checked) {
        player.connect(delay);
        delay.toDestination();
      } else {
        player.toDestination();
      }
    });

    // On page load, check if there's a hash to auto-load
    window.addEventListener('load', () => {
      if (window.location.hash) {
        const urlFromHash = decodeURIComponent(window.location.hash.substring(1));
        mp3urlInput.value = urlFromHash;
        loadMP3(urlFromHash);
      }
    });
  </script>
</body>
</html>
```

---

### How this works:
- User enters an MP3 URL in the input box and clicks **Load**.
- The MP3 is loaded with Tone.Player.
- User can play/stop audio.
- There is a checkbox to toggle a delay effect.
- When toggle is on, audio is routed through a FeedbackDelay node.
- When the MP3 is loaded, the URL is saved in the page's URL hash.
- Visiting the page with a hash like `#https%3A%2F%2Fexample.com%2Ffile.mp3` auto-loads that MP3.

---

### To test it:
Use an accessible MP3 URL, for example:

```
https://cdn.pixabay.com/download/audio/2021/11/03/audio_56aeb545a7.mp3?filename=funny-suspense-ambience-11904.mp3
```

Copy-paste it into the MP3 URL box and click Load, then Play.

---

If you want me to adapt the example (like loading local files, more effects, different controls), just ask!

turns-00084.parquet:40482

7b6bee366324d2cb6d648780
turn 1/3gpt-4.1-mini-2025-04-14EnglishFrance790 words
degenerate_repetitionAbsentFinal dense release
USER
How to manage a micropython server with multiple endpoints and HTTP methods ?
ASSISTANT
Managing a MicroPython server with multiple endpoints and different HTTP methods (GET, POST, etc.) can be done by writing a simple HTTP server that parses incoming requests and dispatches them according to the path and method.

Because MicroPython runs on constrained devices (like ESP8266, ESP32), you typically don't have a full web framework like Flask or Django. However, you can build a lightweight router using plain sockets or use existing minimal HTTP server helper libraries.

Here's an approach using sockets and a simple router implementation:

---

### Basic outline for multi-endpoint and multi-method HTTP server in MicroPython

#### 1. Start a simple TCP socket listening on port 80.

#### 2. Accept connections and read the HTTP request.

#### 3. Parse the first line of the request to get method and path.

#### 4. Based on method and path, call specific handler functions.

#### 5. Formulate and send an HTTP response.

---

### Example code

```python
import socket

# Define your route handlers
def index_handler(method, path, headers, body):
    if method == 'GET':
        return http_response(200, 'text/html', '<h1>Welcome to MicroPython Server</h1>')
    else:
        return http_response(405, 'text/plain', 'Method Not Allowed')

def hello_handler(method, path, headers, body):
    if method == 'GET':
        return http_response(200, 'text/plain', 'Hello, world!')
    elif method == 'POST':
        return http_response(200, 'text/plain', 'POST received')
    else:
        return http_response(405, 'text/plain', 'Method Not Allowed')

# Helper function to create an HTTP response message
def http_response(status_code, content_type, content):
    reason_phrases = {
        200: 'OK',
        404: 'Not Found',
        405: 'Method Not Allowed',
    }
    reason = reason_phrases.get(status_code, 'Unknown')
    response = 'HTTP/1.1 {} {}\r\n'.format(status_code, reason)
    response += 'Content-Type: {}\r\n'.format(content_type)
    response += 'Content-Length: {}\r\n'.format(len(content))
    response += 'Connection: close\r\n'
    response += '\r\n'
    response += content
    return response

# Simple router dictionary: keys are paths, values are handler functions
ROUTES = {
    '/': index_handler,
    '/hello': hello_handler,
}

def parse_request(request):
    # Parse HTTP method, path, headers, and body from raw request string
    lines = request.split('\r\n')
    request_line = lines[0]  # e.g. "GET /hello HTTP/1.1"
    method, path, _ = request_line.split(' ')
    
    # parse headers
    headers = {}
    i = 1
    while lines[i]:
        k, v = lines[i].split(': ', 1)
        headers[k] = v
        i += 1
    
    # body may start after a blank line
    body = '\r\n'.join(lines[i+1:]) if i+1 < len(lines) else ''
    return method, path, headers, body

def serve():
    addr = socket.getaddrinfo('0.0.0.0', 80)[0][-1]
    s = socket.socket()
    s.bind(addr)
    s.listen(5)
    print('Listening on', addr)
    while True:
        cl, addr = s.accept()
        print('client connected from', addr)
        cl_file = cl.makefile('rwb', 0)
        try:
            request = b''
            # Read HTTP request header (simplified)
            while True:
                line = cl_file.readline()
                if not line or line == b'\r\n':
                    break
                request += line
            # Might want to read body here if POST with Content-Length
            
            request_str = request.decode('utf-8')
            print('Request:', request_str)

            # Parse method, path etc.
            if not request_str:
                cl.close()
                continue
            method, path, headers, body = parse_request(request_str)

            # Route request
            handler = ROUTES.get(path, None)
            if handler:
                response = handler(method, path, headers, body)
            else:
                response = http_response(404, 'text/plain', 'Not Found')

            cl.send(response.encode('utf-8'))
        except Exception as e:
            print('Error:', e)
        finally:
            cl.close()

if __name__ == '__main__':
    serve()
```

---

### Explanation

- The server listens on port 80 for incoming TCP connections.
- When a client connects, the server reads the HTTP request header lines.
- Parses the HTTP method (GET/POST), request path (`/`, `/hello`), and headers.
- Dispatches the request to the corresponding function in the `ROUTES` dictionary.
- Each handler inspects the HTTP method and returns an appropriate response.
- If the route or method is not supported, server sends a 404 or 405.
- The response format follows basic HTTP/1.1 protocols.

---

### Notes / Improvements

- This example reads only headers and not the full body for POST requests. To fully handle POST requests, you'd need to check `Content-Length` header and read that many bytes from the socket after headers.
- No concurrency or threading – the server handles one request at a time.
- You can expand `ROUTES` and handler functions for other endpoints and methods.
- For more complex routing with path variables (e.g., `/user/<id>`), you'd need to extend the router logic.
- Consider using third-party MicroPython HTTP libraries like `microdot` (a minimal Flask clone for MicroPython) to simplify routing.

---

### Using Microdot (optional easier alternative)

If you want something more like Flask, check out `microdot`:

```python
from microdot import Microdot, Response

app = Microdot()
Response.default_content_type = 'text/plain'

@app.route('/')
def index(request):
    return 'Welcome to MicroPython server!'

@app.route('/hello', methods=['GET', 'POST'])
def hello(request):
    if request.method == 'GET':
        return 'Hello GET'
    elif request.method == 'POST':
        return 'Hello POST'

app.run()
```

Install microdot and use it to get routing and methods easily.

---

If you want a simple-to-manage HTTP server with multiple endpoints and HTTP methods, building a router on top of sockets as shown or using microdot is the way to go.

turns-00084.parquet:40483

c785bca1a1c55885f2b221f8
turn 2/3gpt-4.1-mini-2025-04-14EnglishFrance383 words
degenerate_repetitionAbsentFinal dense release
USER
is there a standard micropython library for that ?
ASSISTANT
MicroPython **does not have a built-in standard HTTP server library** akin to those found in desktop Python (like `http.server`) or full-featured frameworks such as Flask. The MicroPython standard library is minimal to keep firmware size small and optimize for constrained devices.

---

### What MicroPython offers natively:

- **`usocket` module** — low-level socket programming to build custom TCP/UDP servers.
- Basic networking modules (`network`) for connecting to Wi-Fi etc.
- Minimal helper modules (`uasyncio` for asynchronous programming).

---

### HTTP/REST server in MicroPython — common solutions:

There is **no official “standard” HTTP server library included** with MicroPython itself. However, several community-developed, lightweight frameworks or helper libraries exist and are widely used:

| Library     | Description                                                  | Where to find            |
|-------------|--------------------------------------------------------------|-------------------------|
| **microdot**| Minimal Flask-like web framework for MicroPython             | https://github.com/miguelgrinberg/microdot |
| **picoweb** | Minimalist asynchronous web framework based on uasyncio      | https://github.com/pfalcon/picoweb (original), others forked versions |
| **uwebsockets / uhttpd** | Very lightweight servers / handlers                    | Various small projects, sometimes platform-dependent |

---

### So:

- **No official HTTP server library in standard MicroPython** (as of now).
- You write your own server using `usocket` and parsing HTTP requests manually.
- Or use a 3rd-party lightweight framework like `microdot` or `picoweb` which provide routing, multiple HTTP methods, and other HTTP conveniences.

---

### Summary

| Feature                  | Built-in MicroPython | community 3rd-party    |
|--------------------------|---------------------|-----------------------|
| HTTP server              | No (only `usocket`) | Yes (microdot, picoweb)|
| Routing                  | No                  | Yes                   |
| HTTP methods (GET/POST)  | No                  | Yes                   |
| Multipart requests, etc. | No                  | Limited by framework   |

---

If you want to quickly develop a multipath HTTP server with different HTTP methods and easier API, I **highly recommend using** [microdot](https://github.com/miguelgrinberg/microdot), which is small, simple, and well documented.

---

**Example with microdot (just for reference):**

```python
from microdot import Microdot

app = Microdot()

@app.route('/')
def index(request):
    return 'Hello from MicroPython!'

@app.route('/data', methods=['POST'])
def data(request):
    return 'POST data received: {}'.format(request.data)

app.run()
```

---

**To summarize:**

- **No "standard" HTTP server module in MicroPython core.**
- Use the socket module to build your own or
- Use a lightweight third-party library (`microdot`, `picoweb`) for convenience.

---

If you want links/install steps for microdot or other info, just ask!

turns-00084.parquet:40484

de6ac0c562f6d34615f1c38f
turn 3/3gpt-4.1-mini-2025-04-14EnglishFrance525 words
degenerate_repetitionAbsentFinal dense release
USER
Please use microdot with this code
async def server_setup():
    asyncio.create_task(asyncio.start_server(handle_http_request, '0.0.0.0', 80))
    while True:
        machine.idle()
        await asyncio.sleep(1)
        
async def blink():
    while True:
        to_controller(False)
        await asyncio.sleep(1)
        to_controller(True)
        await asyncio.sleep(1)

loop = asyncio.get_event_loop()
loop.create_task(blink())
loop.create_task(server_setup())
loop.run_forever()
ASSISTANT
Certainly! You want to integrate **Microdot** (a minimal web framework) into your existing `asyncio` setup where you have two async tasks:

- An async HTTP server that accepts connections and handles requests.
- A blinking task that runs alongside.

---

### Important notes before code:

- Microdot itself **already provides an `app.run()` method**, which calls `asyncio.run()` internally or runs a synchronous loop, depending if you use `Microdot` or `Microdot`+`uasyncio`.

- However, Microdot also supports an **async mode**, exposing `app.make_handler()` so you can integrate it into your existing `uasyncio` loop and custom server setup.

- This means you can **embed Microdot's async request handler** inside your own asyncio server instead of calling `app.run()` directly.

---

### What you gave:

```python
async def server_setup():
    asyncio.create_task(asyncio.start_server(handle_http_request, '0.0.0.0', 80))
    while True:
        machine.idle()
        await asyncio.sleep(1)
```

You're starting an asyncio server on port 80 with a custom `handle_http_request` coroutine.

---

### How to do the equivalent with Microdot async server:

1. Create a Microdot app and define your routes.

2. Get an async HTTP request handler via `app.make_handler()`.

3. Pass that handler to `asyncio.start_server()`.

4. Integrate everything into the event loop your way.

---

### Example with your async tasks and Microdot

```python
from microdot_asyncio import Microdot, Response  # Microdot with asyncio support on MicroPython
import uasyncio as asyncio
import machine

app = Microdot()

@app.route('/')
async def index(request):
    return 'Hello, Microdot async!'

@app.route('/hello', methods=['GET', 'POST'])
async def hello(request):
    if request.method == 'GET':
        return 'Hello GET'
    elif request.method == 'POST':
        data = await request.body()
        return 'Hello POST, data: {}'.format(data.decode())

# Your blinking functionality, replace to_controller() with actual code
def to_controller(on):
    # For example toggle an onboard LED
    led = machine.Pin(2, machine.Pin.OUT)
    led.value(1 if on else 0)

async def blink():
    while True:
        to_controller(False)
        await asyncio.sleep(1)
        to_controller(True)
        await asyncio.sleep(1)

async def server_setup():
    handler = await app.make_handler()
    server = await asyncio.start_server(handler, '0.0.0.0', 80)
    print('Server started on http://0.0.0.0:80')

    # Run forever (or until cancelled)
    while True:
        machine.idle()
        await asyncio.sleep(1)

async def main():
    asyncio.create_task(blink())
    asyncio.create_task(server_setup())
    while True:
        await asyncio.sleep(10)

loop = asyncio.get_event_loop()
loop.run_until_complete(main())
```

---

### Explanation:

- **`microdot_asyncio`** is the Microdot variant that supports `uasyncio` integration on MicroPython.

- `app.make_handler()` returns a coroutine function compatible with `asyncio.start_server`.

- Your custom `server_setup()` awaits this handler, starts the server, and runs an idle loop.

- Your `blink()` runs in parallel as a coroutine.

---

### If you don't have `microdot_asyncio` installed:

You can get it from Miguel Grinberg's repo here:  
https://github.com/miguelgrinberg/microdot/tree/main/examples/asyncio

Or install using upip if your MicroPython device supports it:

```python
import upip
upip.install('micropython-microdot')
```

*(Note: sometimes you need to separately get the asyncio version or copy the microdot_asyncio.py file.)*

---

### Summary

- Use `microdot_asyncio.Microdot` instead of `microdot.Microdot` for uasyncio.
- Use `await app.make_handler()` to get the async handler coroutine.
- Pass that handler to `asyncio.start_server()`.
- Run your other async tasks (like blinking) with `asyncio.create_task(...)`.
- Run the event loop normally.

---

If you want, I can help you prepare a minimal requirements list or installation instructions for your device!