fix: fetch all odoo tickets deterministically

This commit is contained in:
2026-07-24 10:22:55 +02:00
parent b0fb879914
commit 7c108154df
6 changed files with 35 additions and 3 deletions
+5 -1
View File
@@ -51,6 +51,8 @@ username = CHANGE_ME_ODOO_USERNAME
api_key = CHANGE_ME_ODOO_API_KEY
model = helpdesk.ticket
fields = id,name,stage_id,partner_id,user_id,write_date
limit = 0
order = id asc
[http]
timeout = 30
@@ -93,6 +95,8 @@ La cle API est utilisee comme mot de passe d'API Odoo pour authentifier `usernam
`odoo.fields` controle les champs recuperes depuis Odoo pour enrichir la notification. Les champs `id` et `write_date` sont toujours ajoutes s'ils sont absents, car ils sont necessaires a la comparaison d'etat.
`odoo.limit = 0` force la recuperation de tous les tickets. `odoo.order = id asc` stabilise la comparaison avec l'etat local.
`notification.max_tickets` limite le nombre de tickets affiches dans Rocket.Chat. `notification.ticket_url_template` controle le lien d'ouverture du ticket ; les variables disponibles sont `{odoo_url}`, `{id}` et `{model}`.
## Protocole Odoo
@@ -123,7 +127,7 @@ Lecture des tickets :
"params": {
"service": "object",
"method": "execute_kw",
"args": ["database", "uid", "api_key", "helpdesk.ticket", "search_read", [[]], {"fields": ["id", "name", "stage_id", "partner_id", "user_id", "write_date"]}]
"args": ["database", "uid", "api_key", "helpdesk.ticket", "search_read", [[]], {"fields": ["id", "name", "stage_id", "partner_id", "user_id", "write_date"], "limit": 0, "order": "id asc"}]
},
"id": 1
}