You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2012-03-06 15:57:15

bobito
Member
Registered: 2011-10-18
Posts: 8

[Web services] addTicketDocument : Type MIME ?

Bonjour,

J'implémente un client consommant les webservices du plugin GLPI. Tout cela fonctionne très bien, sauf dans le cas de la méthode "addTicketDocument".

Depuis mon client j'upload un document puis le lie à un ticket existant. La méthode indique que le document a été attaché au ticket avec succès. Dans l'interface GLPI, lorsque j'ouvre le ticket en question, le document lié est bien visible mais la colonne "Type MIME" n'est pas renseignée. Du coup lorsque j'ouvre ou télécharge ce document il est illisible. Cela indépendemment du format de fichier, de son nom ou de sa taille.

D'où ma question, la méthode "addTicketDocument" a-t-elle un paramètre "Mime" ou "Type"? Il ne me semble pas avoir vu ça dans la doc, mais sait-on jamais. Si Ce n'est pas le cas, une idée d'où pourrait venir le problème.

Merci d'avance!

GLPI: 0.80.5
Webservices: 1.2

Offline

#2 2012-03-06 16:31:57

remi
GLPI-DEV
From: Champagne
Registered: 2007-04-28
Posts: 7,127
Website

Re: [Web services] addTicketDocument : Type MIME ?

Le type mime est calculé par le serveur, en principe....

C'est quoi comme environnement ?


Dév. Fedora 29 - PHP 5.6/7.0/7.1/7.2/7.3/7.4 - MariaDB 10.3 - GLPI master
Certifié ITILv3 - RPM pour Fedora, RHEL et CentOS sur https://blog.remirepo.net/

Offline

#3 2012-03-06 16:42:44

bobito
Member
Registered: 2011-10-18
Posts: 8

Re: [Web services] addTicketDocument : Type MIME ?

Merci pour la réponse rapide...

Oui effectivement le type Mime est bien calculé par le serveur. Jusqu'à là tout va bien. Par contre il ne semble pas être transmis correctement à GLPI.

L'environnement:
Suse entreprise 11
PHP 5.3.5
MySQL 5.1.57
GLPI: 0.80.5
Web services: 1.2

Offline

#4 2012-03-06 16:46:51

remi
GLPI-DEV
From: Champagne
Registered: 2007-04-28
Posts: 7,127
Website

Re: [Web services] addTicketDocument : Type MIME ?

Le type Mime est calculé par le serveur "GLPI", par la méthode du WebService recevant le fichier

Est-ce que l'extension PHP fileinfo est installée ?


Dév. Fedora 29 - PHP 5.6/7.0/7.1/7.2/7.3/7.4 - MariaDB 10.3 - GLPI master
Certifié ITILv3 - RPM pour Fedora, RHEL et CentOS sur https://blog.remirepo.net/

Offline

#5 2012-03-06 17:19:40

bobito
Member
Registered: 2011-10-18
Posts: 8

Re: [Web services] addTicketDocument : Type MIME ?

L'extension fileinfo semble être activée par défaut à partir de PHP 5.3. Donc oui.

Une précision supplémentaire, les documents liés à des tickets depuis l'interface GLPI ont un type Mime correctement renseigné. C'est uniquement ceux liés au travers des webservices qui ont un type Mime à NULL.

Merci.

Offline

#6 2012-03-06 17:37:08

remi
GLPI-DEV
From: Champagne
Registered: 2007-04-28
Posts: 7,127
Website

Re: [Web services] addTicketDocument : Type MIME ?

C'est quoi comme fichier ?
Que retourne, pour ce fichier, depuis le serveur GLPI

file nomdufichier
file --mime-type nomdufichier

Dév. Fedora 29 - PHP 5.6/7.0/7.1/7.2/7.3/7.4 - MariaDB 10.3 - GLPI master
Certifié ITILv3 - RPM pour Fedora, RHEL et CentOS sur https://blog.remirepo.net/

Offline

#7 2012-03-06 17:39:09

remi
GLPI-DEV
From: Champagne
Registered: 2007-04-28
Posts: 7,127
Website

Re: [Web services] addTicketDocument : Type MIME ?

Et même

php -r '$f=finfo_open(FILEINFO_MIME);print_r(finfo_file($f,"NOMDUFICHIER"));'

Dév. Fedora 29 - PHP 5.6/7.0/7.1/7.2/7.3/7.4 - MariaDB 10.3 - GLPI master
Certifié ITILv3 - RPM pour Fedora, RHEL et CentOS sur https://blog.remirepo.net/

Offline

#8 2012-03-08 14:02:35

bobito
Member
Registered: 2011-10-18
Posts: 8

Re: [Web services] addTicketDocument : Type MIME ?

Une partie du problème semblait en effet provenir de l'extension  fileinfo. Cette dernière n'était pas installée correctement. C'est maintenant chose faite.

Du coup lorsque je lie un document à un ticket via webservices, la colonne "Type Mime" est maintenant renseignée. Mais de manière eronnée. En effet, quelque soit le format du document lié (gif, jpg, doc, etc, etc..) le type MIME est "application/octet-stream; charset=binary".

Voici les résultats des requêtes:

file nomdufichier
16195_amelioration_ITL.doc: CDF V2 Document, Little Endian, Os: Windows, Version 5.1, Code page: 1252, Author: xxx, Template: Normal.dotm, Last Saved By                                                  : xxx, Revision Number: 9, Name of Creating Application: Microsoft Offic e Word, Total Editing Time: 01:31:00, Create Time/Date: Sun Oct 30 15:13:00 2011 , Last Saved Time/Date: Sun Oct 30 16:44:00 2011, Number of Pages: 3, Number of Words: 415, Number of Characters: 2285, Security: 0

file --mime-type nomdufichier
16195_xxx.doc: application/msword

php -r '$f=finfo_open(FILEINFO_MIME);print_r(finfo_file($f,"NOMDUFICHIER"));'
application/msword; charset=binary

Offline

Board footer

Powered by FluxBB