Fonctionnement sur Bullseye

Bonjour à tous,

Suite à la migration de jeedom vers un autre controlleur et bullseye via un backup/restore, le plugin Pushbullet ne fonctionne plus. Le daemon ne démarre plus.

J’ai essayé d’appliquer la sollution décrite dans le poste:

[Erreur démon pushbullet en boucle - #38 par magifix]

Malheureusement cela ne fonctionne plus du fait que python 2.x n’est plus disponible sur bullseye, il y a seulement la version python3.9. Et même en utilisant le websocket de 3.9, ça ne donne rien.

Est-ce que quelqu’un a déjà tenté l’expérience avec succès?

Hello,
tous les plugins qui utilise du python 2.x seront non compatible pour Debian 11 et au delà, il faut que le développeur passe le plugin en python 3.x

la solution est sur du Debian 10

Cordialement

Merci pour la précision. Sauf erreur c’est ici que se trouvent les sources du module:

https://github.com/cazeaux/jeedom_pushbullet

Je ne suis pas développeur, mais je vais voir s’il y a moyen de faire quelque chose

1 « J'aime »

Le mieux c’est de refaire l’api je pense leur code de l’API date de 8 ans :slight_smile: d’après github

Le mieux c’est de le refaire en php, il y a un git aussi https://github.com/ivkos/Pushbullet-for-PHP, il date de pareil

D’après leur document https://docs.pushbullet.com/#pushbullet-api ils sont passé sur un OAuth2

Bonne chance ou de contacter le développer en MP

Ça à l’air d’être du job, ce sera plutôt pour les longues soirées d’hiver! Je vais voir si le développeur répond à mon message.

Bon aujourd’hui j’ai tenté la méthode « brute force ». J’ai utilisé le tool 2to3 pour convertir tous les scripts python en version 3. J’ai ensuite constaté qu’il y avait encore des problèmes avec la création du fichier pid. Il reste des commandes qui étaient « built-in » dans la version 2 de python et qui n’étaient pas converties, aini le fichier pid pour le démarrage du daemon n’était pas écrit. Il s’agissait du keyword file qui n’existe plus en version 3:

        pid = str(os.getpid())
        logger.debug("Writing PID " + pid + " to " + str(pidfile))
        #file(pidfile, 'w').write("%s\n" % pid)
        open(pidfile, 'w').write("%s\n" % pid)

file devient open

Mais j’ai toujours un problème, le script écrit « pid » dans le fichier au lieu du process id. Pourtant la synthaxe me parait correcte ( pid = str(os.getpid()) ).
Comme je ne suis pas spécialiste de python, je ne sais pas si quelqu’un voit le bug?

Arpès quelques corrections de syntaxe, j’ai pu quelque peu progresser, mais ça bloque sur le listener.py:

python /var/www/html/plugins/pushbullet/ressources/pushbullet_daemon/pushbullet.py « some_key »

DEBUG:pushbullet:Check PID file
DEBUG:pushbullet:PID file ‹ /var/www/html/plugins/pushbullet/ressources/pushbullet_daemon/…/…/…/…/tmp/pushbullet.« some_key ».pid ›
DEBUG:pushbullet:Write PID file
DEBUG:pushbullet:Start daemon
DEBUG:pushbullet:Writing PID 27271 to /var/www/html/plugins/pushbullet/ressources/pushbullet_daemon/…/…/…/…/tmp/pushbullet.« some_key ».pid
DEBUG:pushbullet.Listener:Listener open
DEBUG:pushbullet.Listener:Message received:{« type »:« nop »}
ERROR:root:‹ NoneType › object is not callable
Traceback (most recent call last):
File « /var/www/html/plugins/pushbullet/ressources/pushbullet_daemon/pushbullet/listener.py », line 73, in on_message
self.on_ping(json_message)
TypeError: ‹ NoneType › object is not callable
DEBUG:pushbullet.Listener:Message received:{« type »:« nop »}
ERROR:root:‹ NoneType › object is not callable
Traceback (most recent call last):
File « /var/www/html/plugins/pushbullet/ressources/pushbullet_daemon/pushbullet/listener.py », line 73, in on_message
self.on_ping(json_message)
TypeError: ‹ NoneType › object is not callable

Est-ce que quelqu’un sait si le contenu du répertoire /var/www/html/plugins/pushbullet/ressources/pushbullet_daemon/pushbullet est spécifique à jeedom, ou cela fait partie des sources de pushbullet?

Bonjour magifix,

Désolé de revenir sur le sujet, mais je viens seulement de passer sur « Bullseye » et je rencontre effectivement le même souci.

Depuis juillet 2023 vous avez pu avancer ou êtes passé à autre chose ?

A+

Hello
Moi je suis passé sur PUSHOVER qui fait pareil, et que j’ai intégré avec le plugin scripts pour lancer des wget sur leur API.
A+

Bonjour à tous,
Je viens de passer sur bullseye et évidemment j’ai le même problème…
Quelqu’un a-t-il une solution en restant sur pushbullet que j’utilise pour d’autres choses ?
Merci d’avance.
fabrice