[Résolu][Python] Ouvrir une socket en mode client

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
eranael
Fraîchement OOthentifié
Messages : 3
Inscription : 09 févr. 2018 17:07

[Résolu][Python] Ouvrir une socket en mode client

Message par eranael »

Bonjour
Effectivement, après beaucoup d'errements, dont des pertes complètes des macros python, et l'obligation de réinstaller OO pour les récupérer, j'arrive à envoyer une commande sur mon serveur.
Dans le doute, j'ai développé une macro Basic qui appelle une petite application intermédiaire avec le service SystemShellExecute chargée de transmettre la commande. J'ai donc 2 solutions de tir.
L'exception qui est levée dans pythonscript indique probablement des problèmes de codages (2.7 n'est pas natif UTF8 comme 3.6), mais la précision de l'encodage ne suffit apparemment pas à régler ce problème dans la macro. En gros, toute exception levée signale un problème de connexion.

Merci en tout cas pour la confirmation du 13 qui m'a ôté le doute.
Dernière modification par eranael le 16 févr. 2018 16:15, modifié 2 fois.
OpenOffice 4.1.5 sous Windows 7
Avatar de l’utilisateur
Hubert Lambert
SuppOOrter
SuppOOrter
Messages : 1214
Inscription : 06 avr. 2016 07:26

Re: [Python] Passer une information à une autre application

Message par Hubert Lambert »

Bonjour, et bienvenue sur le forum ;) ,
eranael a écrit :Avez-vous une explication du plantage ?
Le message d'erreur vient du fichier pythonscript.py d'OpenOffice, qui tente d'afficher un message d'erreur interne à python mais contenant des caractères accentués mal décodés.
Essaie peut-être en changeant la langue d'interface d'OpenOffice pour l'anglais avant de relancer ton programme.
eranael a écrit :Pensez-vous que mon approche est correcte ?
Pourrais-tu donner un peu plus d'infos sur ce que tu essaies de faire au juste ?

Cordialement.
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
| « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
eranael
Fraîchement OOthentifié
Messages : 3
Inscription : 09 févr. 2018 17:07

Re: [Python] Comment ouvrir une socket en mode client

Message par eranael »

Essaie peut-être en changeant la langue d'interface d'OpenOffice pour l'anglais avant de relancer ton programme.
Non, le passage en anglais (USA) ne change rien, le message est le même.
Pourrais-tu donner un peu plus d'infos sur ce que tu essaies de faire au juste ?
C'est assez simple. J'ai une application Python qui fonctionne en serveur et écoute sur le port localhost:15556 à travers une socket. Elle peut ouvrir des fichiers audio et lancer leur écoute à un emplacement déterminé (par exemple 1h38'27") en utilisant libVLC, ou encore afficher des images.
Je voudrais pouvoir déclencher une macro dans Writer qui ouvre une socket sur ce port en mode client et transmette une requête composée d'un nom de fichier audio et d'une position de début d'écoute.
Exemple d'utilisation: lier un enregistrement de conférence et sa transcription, ou encore montrer des photos associées à un enregistrement d'une base de donnée.

Donc la question de base: comment ouvrir une socket en mode client dans une macro OO ? Est-ce possible ? Est-ce que le module socket est utilisable dans une macro ?
Quelqu'un a-t-il déjà joué à ça ?

Merci d'avance pour vos réponses.
Dernière modification par eranael le 12 févr. 2018 16:58, modifié 1 fois.
OpenOffice 4.1.5 sous Windows 7
Avatar de l’utilisateur
MrPropre
MOOdérateur
MOOdérateur
Messages : 1139
Inscription : 01 oct. 2008 16:54

Re: [Python] Passer une information à une autre application

Message par MrPropre »

Bonjour,
eranael a écrit :comment ouvrir une socket en mode client
Merci de corriger votre titre avec cette information.

Ce n'est pas pour vous mais pour les autres lorsqu'ils feront des recherches sur cette problématique.
Nettoyez votre PC du piratage, utilisez des logiciels libres à chaque lavage.
Une seule dose de OpenOffice suffit à éliminer durablement toute trace de MS-Office.
Avatar de l’utilisateur
Hubert Lambert
SuppOOrter
SuppOOrter
Messages : 1214
Inscription : 06 avr. 2016 07:26

Re: [Python] Ouvrir une socket en mode client

Message par Hubert Lambert »

Je viens de faire quelques tests et... tout fonctionne correctement.
Es-tu certain que le numéro de port est correct et que le script "serveur" tourne bien sur ta machine ("localhost") ?
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
| « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
eranael
Fraîchement OOthentifié
Messages : 3
Inscription : 09 févr. 2018 17:07

Re: [Python] Ouvrir une socket en mode client

Message par eranael »

Bonjour
Effectivement, après beaucoup d'errements, dont des pertes complètes des macros python, et l'obligation de réinstaller OO pour les récupérer, j'arrive à envoyer une commande sur mon serveur.
Dans le doute, j'ai développé une macro Basic qui appelle une petite application intermédiaire avec le service SystemShellExecute chargée de transmettre la commande. J'ai donc 2 solutions de tir.
L'exception qui est levée dans pythonscript indique probablement des problèmes de codages (2.7 n'est pas natif UTF8 comme 3.6), mais la précision de l'encodage ne suffit apparemment pas à régler ce problème dans la macro. En gros, toute exception levée signale un problème de connexion.

Merci en tout cas pour la confirmation du 13 qui m'a ôté le doute.
OpenOffice 4.1.5 sous Windows 7