Odoo 19.0 Community · Persistente

gamification.challenge: campos, relaciones y API

El modelo gamification.challenge («Desafío de ludificación») es un modelo persistente declarado por el módulo Ludificación y ampliado por 3 módulos más. Expone 45 campos, 26 de ellos declarados directamente en el modelo; 3 campos de otros modelos apuntan a él. A continuación encontrará cada campo con su nombre técnico, tipo, etiqueta en español y relaciones, y un ejemplo de llamada a la API JSON-2 de Odoo 19.

Ficha de identidad

Nombre técnico
gamification.challenge
Etiqueta
Desafío de ludificación
Tipo
Persistente (models.Model)
Tabla SQL
gamification_challenge
Módulo de origen
Ludificación (gamification)
Ampliado por
survey, website_slides, website_forum
Orden por defecto (_order)
end_date, start_date, name, id
Hereda de (mixins)
mail.thread

Campos del modelo

26 campos propios, 13 heredados de mixins y 6 campos automáticos del ORM. Haga clic en un nombre para obtener el enlace directo al campo.

45 de 45 campos mostrados

Nombre técnicoEtiquetaTipoDetalles
challenge_categoryAparece en

Defina la visibilidad del desafío a través de los menús

selection
obligatorio

Valores: hr (Recursos humanos / Compromiso), other (Ajustes / Herramientas de ludificación)

descriptionDescripcióntext
traducible
end_dateFecha de finalización

El día en el que el nuevo desafío se cerrará automáticamente. Si no se establece periodicidad, se usará esta fecha como fecha de finalización.

date
invited_user_idsSugerir a los usuariosmany2many
last_report_dateFecha del último informedate
line_idsLíneas

Lista de metas que se establecerán

one2many
obligatorio

inverso: challenge_id

manager_idResponsablemany2one
nameNombre del desafíochar
obligatoriotraducible
next_report_datePróxima fecha de informedate
calculado, almacenado
periodPeriodicidad

Periodo de asignación automática de metas. Si no hay ninguno seleccionado, se lanzará de forma manual.

selection
obligatorio

Valores: once (No recurrente), daily (Diariamente), weekly (Semanalmente), monthly (Mensualmente), yearly (Anualmente)

remind_update_delayLos objetivos manuales no actualizados se recordarán después

No mandar recordartorio si no hay valor o si es 0.

integer
report_message_frequencyFrecuencia del informeselection
obligatorio

Valores: never (Nunca), onchange (Al cambiar), daily (Diariamente), weekly (Semanalmente), monthly (Mensualmente), yearly (Anualmente)

report_message_group_idEnviar copia a

Grupo que recibirá una copia del informe además del usuario

many2one
report_template_idPlantilla de informemany2one
obligatorio
reward_failure¿Recompensar a los mejores si no terminaron?boolean
reward_first_idPara el primer usuariomany2one
reward_idPara todos los usuarios exitososmany2one
reward_realtimeRecompensar en cuanto se alcance cada meta

Con esta opción habilitada, cada usuario puede recibir una insignia sólo una vez. Las tres mejores insignias se siguen recompensando de todas formas al final del desafío.

boolean
reward_second_idPara el segundo usuariomany2one
reward_third_idPara el tercer usuariomany2one
start_dateFecha de inicio

El día en el que el nuevo desafío empezará automáticamente. Si no se establece periodicidad, se usará esta fecha como fecha de inicio.

date
stateEstadoselection
obligatorio

Valores: draft (Borrador), inprogress (En proceso), done (Hecho)

user_count# Usuariosinteger
calculado
user_domainDominio de usuariochar
user_idsParticipantesmany2many
visibility_modeModo de visualizaciónselection
obligatorio

Valores: personal (Metas individuales), ranking (Tabla de clasificación (por grupo))

has_messageTiene un mensajeboolean
calculado

heredado de mail.thread

message_attachment_countNúmero de archivos adjuntosinteger
calculado

heredado de mail.thread

message_follower_idsSeguidoresone2many

inverso: res_id

heredado de mail.thread

message_has_errorError de envío de mensaje

Si está marcada, algunos mensajes tienen error de envío.

boolean
calculado

heredado de mail.thread

message_has_error_counterNúmero de errores

Número de mensajes con error de envío

integer
calculado

heredado de mail.thread

message_has_sms_errorError de envío del SMS

Si está marcada, algunos mensajes tienen error de envío.

boolean
calculado

heredado de mail.thread

message_idsMensajesone2many

inverso: res_id

heredado de mail.thread

message_is_followerEs un seguidorboolean
calculado

heredado de mail.thread

message_needactionAcción requerida

Si está marcada, hay nuevos mensajes que requieren su atención.

boolean
calculado

heredado de mail.thread

message_needaction_counterNúmero de acciones

Número de mensajes que requieren una acción

integer
calculado

heredado de mail.thread

message_partner_idsSeguidores (Contactos)many2many
calculado

heredado de mail.thread

rating_idsCalificacionesone2many

inverso: res_id

heredado de mail.thread

website_message_idsMensajes del sitio web

Historial de comunicación del sitio web

one2many

inverso: res_id

heredado de mail.thread

create_dateCreado eldatetime
solo lecturaautomático
create_uidCreado pormany2one
solo lecturaautomático
display_nameNombre mostradochar
solo lecturacalculadoautomático
idIDinteger
solo lecturaautomático
write_dateÚltima actualización eldatetime
solo lecturaautomático
write_uidÚltima actualización pormany2one
solo lecturaautomático

Relaciones

Modelos enlazados desde este modelo

Campos de otros modelos que apuntan aquí

Leer este modelo por la API

Ejemplo de llamada a la API JSON-2 de Odoo 19: lectura de los cinco primeros registros con campos reales del modelo. Sustituya la instancia, la base y la clave API por las suyas.

curl
curl -X POST "https://su-instancia.odoo.com/json/2/gamification.challenge/search_read" \
  -H "Authorization: bearer $ODOO_API_KEY" \
  -H "X-Odoo-Database: su-base" \
  -H "Content-Type: application/json" \
  -d '{"domain":[],"fields":["name","challenge_category","period","report_message_frequency","report_template_id"],"limit":5}'
Python (requests)
import requests

BASE_URL = "https://su-instancia.odoo.com/json/2"
headers = {"Authorization": f"bearer {API_KEY}", "X-Odoo-Database": "su-base"}

res = requests.post(
    f"{BASE_URL}/gamification.challenge/search_read",
    headers=headers,
    json={"domain": [], "fields": ["name","challenge_category","period","report_message_frequency","report_template_id"], "limit": 5},
)
res.raise_for_status()
print(res.json())
  • El acceso a la API externa está reservado al plan Custom de Odoo.
  • XML-RPC y JSON-RPC se retirarán en Odoo 22 (otoño de 2028): use JSON-2.
  • Se aplican los permisos de acceso y las reglas de registro del usuario de la clave.

Citar esta herramienta

¿Escribe un tutorial, una documentación interna o una respuesta en un foro? Copie este enlace para dirigir a sus lectores a la ficha actualizada.

<a href="https://aidoo.ai/es/outils/explorateur-modeles-odoo/gamification-challenge">gamification.challenge (Odoo 19.0)</a>

Fuentes

Datos verificados el 23 de septiembre de 2026 · Odoo 19.0 Community

¿Tiene un proyecto Odoo o quiere aprovechar su ERP con la IA? Hablemos

Implantación, desarrollo de módulos, conexión de Claude o ChatGPT a sus datos: cuéntenos su contexto y le responderemos en 24 horas laborables.