MrWaloo Posté(e) le 12 septembre 2012 Posté(e) le 12 septembre 2012 (modifié) Salut, Je me suis documenté pas mal pour savoir comment faire un spk. Ça n'a pas l'air insurmontable... J'ai toutefois des petites questions : - quel est l'intérêt de mettre le package_icon encodé en BASE64 dans le fichier INFO (comme c'est le cas dans les spk SynoCommunity) au lieu de l'enregistrer en PACKAGE_ICON.PNG à coté du fichier INFO (comme c'est le cas pour les spk Synology) ? - existe-t-il un exemple de spk qui ne lance pas une page web avec un port différent (genre 9091 pour transmission) mais une fenêtre ExtJS? C'est juste pour la syntaxe. - avec le paquet Python installé, on peut faire un CGI en python ? (réponse : oui, il faut juste faire un .htaccess qui va bien) Merci A+ Michel Modifié le 12 septembre 2012 par MrWaloo 0 Citer
bud77 Posté(e) le 13 septembre 2012 Posté(e) le 13 septembre 2012 Pour l'icone, de mémoire, c'est ce qui est préconisé dans le "3rd party app developper" de Synology (dispo ici) Pour l'exemple de SPK en extJS, comme çà de tête, y'a le "shellinabox" dans le repo de missilehugger Pour la CGI, tu t'es auto-répondu 0 Citer
Diaoul Posté(e) le 13 septembre 2012 Posté(e) le 13 septembre 2012 Je réponds dans l'ordre : Pas vraiment d'intérêt, les deux méthodes ont coexistées à une époque, base64 prédominait chez Syno avant, c'est possible que maintenant ce soit la méthode PACKAGE_ICON qu'ils privilégient. Je ne sais pas. En tout cas pour le repo c'est facile à stocker en base de donnée via le base64 Faut voir avec Piwi pour le repo. Oui il en existe, je te recommande le SPK subliminal comme exemple, ça utilise le must en Python du moment et j'ai essayé de rendre clair le ExtJS qui ne l'est pas forcément... Je n'ai pas regardé shellinabox mais je te conseille de rester sur du "maison" SynoCommunity Oui, même sans .htaccess, cf le SPK subliminal. Pour résumer, le SPK subliminal c'est : Un fichier de config pour sauvegarder les paramètres utilisateurs Une petite base de donnée sqlite avec une table pour stocker une liste de répertoires Une interface ExtJS qui permet d'éditer tout ce beau monde Un folder picker dans ExtJS pour sélectionner un dossier facilement (comme dans les SPK de Synology) Un CGI protégé des intrusions exterieures grace à une authentification DSM et un contrôle sur le groupe utilisateur (restreint à administrators) Tout ça en Python parce que ça fait un code lisible et synthétique. Du coté des modules Python en vogue en ce moment ça utilise : Flask (framework web) SQLAlchemy (ORM) Enjoy 0 Citer
bud77 Posté(e) le 13 septembre 2012 Posté(e) le 13 septembre 2012 Honte à moi, j'avais pas du tout pensé à Subliminal ... *part s'auto-flageller" 0 Citer
PiwiLAbruti Posté(e) le 13 septembre 2012 Posté(e) le 13 septembre 2012 (modifié) Le 9/13/2012 à 12:31 PM, Diaoul a dit : Pas vraiment d'intérêt, les deux méthodes ont coexistées à une époque, base64 prédominait chez Syno avant, c'est possible que maintenant ce soit la méthode PACKAGE_ICON qu'ils privilégient. Je ne sais pas. En tout cas pour le repo c'est facile à stocker en base de donnée via le base64 Faut voir avec Piwi pour le repo. Peu importe, le dépôt supporte les deux méthodes avec une priorité sur l'icône en base64 dans le fichier INFO. C'est-à-dire que si l'icône est définie dans le fichier INFO, le fichier PACKAGE_ICON.PNG sera ignoré. Le 9/13/2012 à 12:31 PM, Diaoul a dit : Une petite base de donnée sqlite avec une table pour stocker une liste de répertoires Pour stocker des paramètres d'application, je privilégié les fichiers JSON. Je ne sais pas si c'est aussi transparent en Python qu'en PHP, mais en PHP c'est très simple de récupérer un fichier JSON sous forme de tableau ou d'objets imbriqués (et surtout très performant). Modifié le 13 septembre 2012 par PiwiLAbruti 0 Citer
MrWaloo Posté(e) le 13 septembre 2012 Auteur Posté(e) le 13 septembre 2012 Merci pour toutes ces réponses, je m'y penche prochainement bisous 0 Citer
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.