PHP examples: add a message envelope producer and consumer
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 75/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- php
- Área
- developer-experience
Línea de trabajo
Start with examples/src/common.php for the existing helpers (iggy_client(), ensure_stream_and_topic(), send_payloads(), example_payloads()), then read the order types in examples/node/src/message-envelope/. Write examples/php/message-envelope/producer.php and consumer.php, with the consumer switching on message_type and logging and skipping unknown types. Done when both scripts run against a fresh server using the extension from foreign/php and the README has a Message Envelopes section.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
The Rust, Node, Java and C# examples show the message envelope pattern, where each payload is wrapped in a JSON object with a message_type and a payload string so one topic can carry several message kinds. The PHP examples have only getting-started and basic.
Affected area / component
PHP examples
Proposed solution
Add examples/php/message-envelope/producer.php and consumer.php, and a "Message Envelopes" section in examples/php/README.md.
- The helpers in
examples/php/src/common.php(iggy_client(),ensure_stream_and_topic(),send_payloads(),example_payloads()) already do the set-up, so the work is the envelope encoding (json_encode) and the consumer'smatchonmessage_type. - Take the order types from
examples/node/src/message-envelope/. - A message with an unknown type is logged and skipped.
New PHP SDK calls are out of scope (#3302 tracks PHP parity).
How to test: build the extension with cargo build in foreign/php, start a fresh server, and run both scripts with the same -d extension="${PHP_IGGY_EXTENSION:-...}" form the README's other commands use.
Good first issue
- I think this could be a good first issue for a new contributor
- Lenguaje dominante
- Rust
- Estrellas
- 5.2k
- Forks
- 502
- Merge medio
- 2 d 21 h
- PR fusionados (30 d)
- 159
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de apache/iggy
-
Go examples: add a message envelope producer and consumerPosiblemente ocupada @ThunderGod77 la tomó hace 5 días. Abiertogo good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
apache/iggy#4694 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
HTTP client treats a consumer group as a plain consumerPosiblemente ocupada @mohitduhan19 la tomó hace 22 días. Abiertobug rust server
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
apache/iggy#4408 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Add the fail-fast connection option to the Rust and Python quick-startsPosiblemente ocupada @QIW9 la tomó hace 10 días. Abiertodocs good first issue
Dificultad 1/5 1-3 horas Aptitud para principiantes 92/100
apache/iggy#4261 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
ResourceNotFound from the binary protocol prints an empty keyPosiblemente ocupada @xalestar la tomó hace 1 día. Abiertoapi python rust
apache/iggy#4767 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Node SDK: send accepts malformed user headers that fail during pollingPosiblemente ocupada @Subham-KRLX la tomó hace 2 días. Abiertobug good first issue javascript
apache/iggy#4750 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de apache/iggy
Issues similares
-
binding:python bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
coollabsio/orbit#72 ·
Los mantenedores suelen responder en 1 día
-
Synth suite fails unless run from the repo root: signal_flow's default machine path is cwd-relativeAbiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
Nimblesite/osprey#370 ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
bug order-flow studies ui
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
userFRM/egui-charts#2417 ·
Los mantenedores suelen responder en 1 día