Questions autour de TrelloTool

Bonjour, j’ai vu que dans la librairie TrelloTool on a une nouvelle méthode Call() pour appeler n’importe quelle action vers Trello API. Mais quand j’essaye d’appeler la méthode call(), Simplicité me dit que la méthode n’existe pas. Dois je mets à jour qqc pour bénéficier cette nouvelle méthode ?

Cordialement,
Dang

Oui effectivement j’ai passé hier en public les méthodes génériques “bas niveau” call et getParams (qui étaient jusqu’ici private) qu’utilisent les méthodes de plus “haut niveau”, ex:

	/**
	 * Get a board's lists data  (see https://developers.trello.com/reference#boardsboardidlists)
	 * @param boardId Board ID
	 * @param params Optional parameters
	 * @return Board's lists data
	 */
	public JSONArray getBoardLists(String boardId, JSONObject params) throws APIException
	{
		try
		{
			return (JSONArray)call(HTTPTool.append("boards/" + HTTPTool.encode(boardId) + "/lists", getParams(params)), "get", null);
		}
		catch (ClassCastException e)
		{
			throw new APIException(e);
		}
	}

ou

	/**
	 * Get list data (see https://developers.trello.com/reference#listsid)
	 * @param listId List ID
	 * @param params Optional parameters
	 * @return List data
	 */
	public JSONObject getList(String listId, JSONObject params) throws APIException
	{
		try
		{
			return (JSONObject)call(HTTPTool.append("lists/" + HTTPTool.encode(listId), getParams(params)), "get", null);
		}
		catch (ClassCastException e)
		{
			throw new APIException(e);
		}
	}

Comme ça a été fait hier et poussé dans le buidl de cette nuit, il faut que les instances soient à jour.

Indique moi la version/patchelevel/revision obtenue dans le /health sur ton instance.

Cela dit je propose d’intégrer progressivement les méthodes de “haut niveau” dont tu auras besoin directement dans la classe TrelloTool histoire de l’enrichir, mais le fait que tu aies accès aux méthodes “bas niveau” te permettra de ne pas perdre de temps à attendre que ça soit mis dans TrelloTool

L’idée c’est que tu ajoute une classe custom temporaire (dans Administration > Shared code) qui hérite de TrelloTool et dans laquelle tu implémentera les méthodes de “haut niveau” qui te manquent en attendant que celles-ci soient intégrées à TrelloTool

Il faut donc juste que tu nous tienne au courant des APIs dont tu as besoin

PS: nous avons ajouté d’ores et déjà qques nouvelles méthodes de haut niveau relatives aux labels, notifications, checklists, custom fields, …

Bonjour David,

Voici les infos de notre instance

Simplicité version4.0 patch level P25a
Built on2020-01-20 17:28
Revisiond2c8baefd575763c797a27fb52383d48f331c3f8
Database levelP25a;24d6d4cbc11a94116fb7651e597b866ffcb1f623
EncodingUTF-8 (system encoding UTF-8)
Time zoneEurope/Paris

Nous avons pour le moment un besoin de ajouter/modifier… des custom field, apparemment tu l’a déjà fourni. Pour le moment sur mon instance je n’ai pas encore ces méthodes dans TrelloTool.

Visiblement cette instance n’est pas en autoupgrade
Quelle est son URL ?

NB: je vois, en outre, que c’est une “alpha” ce qui n’est clairement pas une bonne chose si on parle d’une instance de dev

Voici url de mon instance
https://j8f84e4953.demo.simplicite.io/

Effectivement je me sers de cette instance pour créer un POC Trello, ce n’est pas notre environnement de DEV

J’ai lancé l’upgrade de cette instance. Ces “sandbox” ne sont pas sensées être utilisées pour autre chose que de l’évaluation de la plateforme ! Elles correspondent à la nightly du jour et ne sont pas défaut en autoupgrade.

Merci de vous rapprocher de nos équipes commerciales pour qu’on voit comment mettre en place des infrastructures pour travailler dans des conditions correctes.

Merci David.

Je voudrais savoir comment fonctionne la méthode
org.json.JSONObject updateCustomField​(java.lang.String customFieldId, org.json.JSONObject data)

Selon la doc de Trello il faut appeler en PUT url :
https://api.trello.com/1/card/{idCard}/customField/{idCustomField}/item

Avec le json
{
“value”: { “text”: “Hello, wo” },
“key”: “monkey”,
“token”: “montoken”
}
=> J’ai pu faire fonctionner cela avec Postman

J’ai essayé d’utiliser la méthode updateCustomField avec le même json mais je n’y arrive pas.

La méthode dont tu parles correspond à https://developers.trello.com/reference#customfieldsid

Là tu me parle d’une autre méthode qui concerne les items, celle-ci n’est pas encore implémentée, comme de nombreuses autre méthodes dont on a pas eu l’usage jusqu’ici.

Le plus efficace c’est que tu m’indique la liste des APIs que tu dois appeler et on implémentera en priorité celle qui manquent dans cette liste

David,

J’ai besoin la méthode pour récupérer l’ensemble des custom field d’un board
ex: https://api.trello.com/1/boards/kqbaP7mn/customFields

Et une méthode pour mettre à jour un ou plusieurs custom fields d’une carte
ex: https://api.trello.com/1/card/{idCard}/customField/{idCustomField}/item

C’est implémenté, je te laisse vérifier si c’est bon d’après la Javadoc : https://docs.simplicite.io/4.0/javadoc-alpha/com/simplicite/util/tools/TrelloTool.html

La modif sera poussé ce soir, les instances en autoupgrade étant mises à jour dans la nuit.

Cela dit, vu que tu es sur un instance “alpha” (ce qui je le redis n’est vraiment pas une bonne chose pour travailler dans de bonnes conditions), je peux éventuellement forcer l’upgrade dès maintenant quand tu es prêt.

Peut-être que je me trompe, mais je ne vois pas des nouvelles méthodes liées à

"
J’ai besoin la méthode pour récupérer l’ensemble des custom field d’un board
ex: https://api.trello.com/1/boards/kqbaP7mn/customFields

Et une méthode pour mettre à jour un ou plusieurs custom fields d’une carte
ex: https://api.trello.com/1/card/{idCard}/customField/{idCustomField}/item "

dans le java doc https://docs.simplicite.io/4.0/javadoc-alpha/com/simplicite/util/tools/TrelloTool.html

Oui tu te trompes:

https://docs.simplicite.io/4.0/javadoc-alpha/com/simplicite/util/tools/TrelloTool.html#getBoardCustomFields(java.lang.String,java.lang.String)

et

https://docs.simplicite.io/4.0/javadoc-alpha/com/simplicite/util/tools/TrelloTool.html#setCardCustomFieldItem(java.lang.String,java.lang.String,org.json.JSONObject)

Mais si tu cherches à t’en servir dans ton instance, elle n’y sont pas encore, cf. ma réponse précédente, j’attends donc ton feu vert pour éventuellement forcer l’upgrade si ça ne peut pas attendre demain matin.

Merci, désolé j’ai cherché avec customField mais ça resortait pas de ma recherche.
Oui je veux bien un forcing sur mon instance stp.

Upgrade en cours…

Nous avons créé une instance depuis une image docker simplicite/plateform.
Je voudrais savoir qu’est ce qu’on doit faire pour bénéficier ces dernières évolutions sur notre nouvelle instance?
On est sur cette version: Simplicité version 4.0 patch level P24

Ben comme pour toute mise à jour d’image Docker vous stoppez votre container, vous pullez l’image à jour, vous redemarrez votre container (docker stop/pull/run un docker bas niveau ou docker-compose down/pull/up en docker compose etc.)

Rien de specifique à Simplicité.

Si vous gérez des instances sur vos infrastructures privées vous avez l’obligation de vous maintenir à jour, faute de quoi nous ne pourrons pas assurer de support. Bref vous devez savoir faire l’opération ci dessus et la refaire très régulièrement.

Quel tag d’image Docker avez vous sélectionné ?

On est sur “lastest”

OK “latest” est le bon choix par défaut.

La doc complète pour se servir de nos images Docker est là: https://docs.simplicite.io/documentation/90-operation/docker.md

Cette doc plus simple https://docs.simplicite.io/public/41c7f8ddbd7b2177fdf83624218a88cc.md décrit les cas simples/classiques en mode “tutorial d’installation from scratch”

NB 1: Le choix de la base de données pour votre(vos) instance(s) est un des points importants lors de l’installation

NB 2: si vous vous mettez vos instances derrière un reverse proxy, lisez avec attention cette partie de la doc https://docs.simplicite.io/documentation/90-operation/docker.md#reverseproxy, car la plupart des gens qui installent Simplicité pour la première fois se ratent sur cette “tuyauterie” et se retrouvent confrontés à des problèmes qu’ils n’auraient pas du rencontrer.