You are not logged in.
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
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
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
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
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
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
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
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