[SPIP Zone] [Spip-zone-commit] r7688 - in /_plugins_/_dev_/spip-sms-listes: ./ SMS.php SMS/ SMS/clickatell_http.php SMS/generic_smtp.php SMS/sms2email_http.php SMS/vodafoneitaly_smtp.php SMS/win_http.php package.xml

cedric@yterium.com wrote:

Author: cedric@yterium.com
Date: Thu Nov 30 14:14:52 2006
New Revision: 7688

Log:
un plugin de newsletter ... par SMS :stuck_out_tongue:
enfin la y a juste le package Net_SMS de Pear qu'on va reutiliser
et tout a faire ...

Comme je te le disais en irc , je veux bien faire marcher ce biniou.
Je suis un ex dev de ce paquet chez PEAR et j'ai toujours un compte de test chez clickatel et peut-être (à vérifier) chez un autre prestataire.
Nous l'utilisons dans PEAR::Net_Monitor dont je suis co-lead avec Robert Peake.
Pour mémoire, Net_SMS est en fait géré par Horde qui est +/- en symbiose avec PEAR.

Le choix est judicieux car la structure est ouverte et permet de rajouter tout prestataire (avec des bémols selon le protocole adopté).

Je suggérais de modifier au minimum pour préserver les upgrades , mais finalement ce ne serait pas facile et il faut savoir que ce paquet est extrèmement stable, sans doute peut d'évolutions à attendre , si ce n'est l'ajout de prestataire.

La difficulté est que ce truc s'insère normalement dans la machine de guerre PEAR et nécessite donc plusieurs moyens externes:
* PEAR.php : essentiellement pour la gestion d'erreur , c'est quelque chose qu'on peut facilement reproduire et spipiser (spip_log etc.)
* HTTP_Request et subséquament Net_URL et Net_Socket : ceux-ci pour faire les requètes nécessaires aux serveurs des prestataires http. C'est lourd de rajouter tout ça, entre autre ça contient plein de choses dont on a pas besoin ici. Je pense qu'il serait tout à fait possible de remplacer ça par recuperer_page() de inc/distant.php , ça fera plus spipien et intégré.
* Mail.php pour les protocoles smtp , pareil, c'est lourd et on a ce qu'il faut à la maison :slight_smile:
* gettext() est utilisé partout sous forme de _() , on ne peut guère éviter d'y toucher pour intégrer ça dans le système i18n de spip.

On gardera de toute façon la majorité du code inchangé , juste quelques fonctions ou includes renommés. Simplement on rajoutera une couche interface qui redirigera sur les procédures spip.

Dans un premier temps , il suffit de faire les protocoles http et smtp, ça couvre la majorité des prestaires ... tant qu'on ne veut pas faire du bulk messaging de masse (SMPP).
Je pense commencer par http.

Bon, c'est beaucoup de blabla , mais autant démarrer propre :wink:
--
toggg

bertrand Gugger a écrit :

On gardera de toute façon la majorité du code inchangé , juste quelques fonctions ou includes renommés. Simplement on rajoutera une couche interface qui redirigera sur les procédures spip.
  

Tu sais qu'on brule les gens pour moins que ca sur les listes SpipAgora ?
:o)

Enfin une approche d'integration, ca fait plaisir !
Comment comptes-tu t'y prendre ?
penses-tu faire une librairie SPIPPEAR, reprennant la structure de PEAR, et remplacer tous les PEAR:: dans le code (+inclusions) ?

@++

spipcarto wrote:

bertrand Gugger a écrit :
  

On gardera de toute façon la majorité du code inchangé , juste quelques fonctions ou includes renommés. Simplement on rajoutera une couche interface qui redirigera sur les procédures spip.
  

Tu sais qu'on brule les gens pour moins que ca sur les listes SpipAgora ?
:o)

Enfin une approche d'integration, ca fait plaisir !
Comment comptes-tu t'y prendre ?
penses-tu faire une librairie SPIPPEAR, reprennant la structure de PEAR, et remplacer tous les PEAR:: dans le code (+inclusions) ?

Oui, enfin ... le faire faire par http://trac.rezo.net/trac/spip-zone/browser/_dev_/genere_lib_sms qui part de la version cvs de Horde. (il n'y aura finalement plus rien de PEAR lui-même)
La couche de compatibilité, c'est:
* c_pear.php (version minimale),
* c_http_request.php (les méthodes y sont mais vides pour l'instant)
* c_mail.php (pas fait)
* dans le futur peut-être c_net_smpp_client.php
Tout cela dans http://trac.rezo.net/trac/spip-zone/browser/_plugins_/_dev_/sms/inc
J'ai finalement préféré tout renommer pour éviter un clash avec une autre utilisation éventuelle de PEAR.
Bon, rien n'est encore joué , le plus dur reste à faire.
--
toggg