Bienvenue sur le forum des lancements organisés de produits numériques ...


Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - LoadingZ

Pages: [1]
1
Pour faire simple j'ai pas mi de serveur mail sur mon serveur j'utilise zoho mail, gmail et autre avec mes prorpre nom de domaine, du coup j'envoie via smtp, depuis mon serveur avec un relai via zoho ou gmail.

Mais si on envoie trop de mail invalide on risque de finir en spam etc, et un mail en spam 99% des cas sera pas ouvert.

du coup vu que je n'utilise pas de service payant style Aweber j'ai aucune vérification avant de les faire moi même, et c'est pour sa que je me suis fait un petit service qui check la validité des mail.

et pour le coup j'ai aussi rajouter la gestion des rôles (je n'envoie pas de mail a (webmaster|contact|etc)@ndd.ltd car ce sont des mail impersonnel et avec un rôle spécial )

A l'heure actuelle mon script vérifie donc que :
 1) la syntaxe et valide
 2) le nom de domaine existe
 3) check les MX et si accessible
 4) check si le mail et valide ou non
 5) vérifie que ce ne soit pas un mail jetable (plus de 300 nom de domaine il doit en manquer beaucoup)
 6) que l'adresse mail n'est pas un rôle

Je viens aussi de faire une API
qui permet de passer une liste, ou une adresse seule

après bon sa marche a-priori parfaitement (pour le moment plus de 5400 mail check juste pour les test), et les résultat semble plutôt concluant.

retour de ma liste de 5400 mail :
 5248 Valide
 27 Valide avec rôle
 92 valide jetable
 35 invalide

dans mes retour api par liste, je peut géré les résultat à affiché (pas finalisé encore)
exemple si on souhaite affiché seulement les mail valide sans rôle et non jetable suffi de passer les paramètre avec true|false

"?idliste=1&valide=true&role=false&disposable=false"
cette requette nous retournera seulement les 5248 mail valide

"?idliste=1&valide=true&role=true&disposable=false"
cette requette nous retournera les 5248 mail valide, plus les 27 mail avec rôle

"?idliste=1&valide=true&role=true&disposable=true"
cette requette nous retournera les 5248 mail valide, plus les 27 mail avec rôle, plus les 97 mail jetable

une fonction de l'api et d'affiché un json ou un xml(le xml bug actuellement) avec la totalité des mail et le status de chaque mail, comme dans mon premier message, mais avec un champ rôle en plus
"?idliste=1&affmode=json"
---
Je pense aussi rajouté une option champ complémentaire pour auto-update les liste avec un paramètre utilisateur.

pour faire simple, un utilisateur qui fourni une liste peut passer en plus dans sa liste une liste d'id associer a chaque mail.

exemple tu passe le mail avec son id utilisateur.
Quand on retourne le notre liste en retourne l'id en plus dans les paramètre de chaque mail, pour faire un (update|delete) dans les tables exemple (le update et autre sont des script utilisateur pas de l'api)

2

Bonjour,

Je me suis entrain de prévoir un futur mailing, seulement les mail que j'ai récolté au cours des 5 dernières années ne sont plus forcément à jours (j'ai souvent des e-mail non délivré).

Je me demandé donc comment vous mainteniez vos liste mailing à jour.
Actuellement, je suis entrain de développez un système qui check(syntaxe, existe, jetable), ce système fonctionne très bien. (hors certaine boite mail très restrictive)

l'avantage de ce système et d'avoir Toujours une base de donnée de mailing à jour, et avec des mail
valide, qui existe, et qui ne sont pas des mail jetable.

Je ne suis pas expert en mailing, même loin de la, car j'en et quasiment jamais fait.
Mais je ne souhaite pas commencé avec ne serai-ce que 10% de mail non délivré ou jetable et autre
Du coup je cré ce service qui va clean ma table mailing (~12 000 mail)

Et vous? vous préféré tester vos mail vous même un par un ?, ou utilisé vous des service existant qui font la même chose ?


Exemple de résultat:
  - pour une vrais adresse avec un format valide, et qui n'est pas jetable
Array
(
    [mailSyntax] => Array
        (
            [0] => success
            [1] => La syntaxe est correcte ( si la syntaxe de l'email et valide)
        )

    [mailHost] => Array
        (
            [0] => success
            [1] => La connexion à xx.xx.xx a fonctionné ( Si la connexion a l'host du l'mail et OK)
        )

    [mailValid] => Array
        (
            [0] => success
            [1] => email@valide.com est valide (Si l'adresse et une adresse existante)
        )

    [mailDisposable] => false // false = n'est pas jetable | true = jetable (les mail jetable sont a exclure des mailing)
)


- pour une fausse adresse avec un host valide est un format valide, et qui n'est pas jetable
Array
(
    [mailSyntax] => Array
        (
            [0] => success
            [1] => La syntaxe est correcte ( si la syntaxe de l'email et valide)
        )

    [mailHost] => Array
        (
            [0] => success
            [1] => La connexion à xx.xx.xx a fonctionné ( Si la connexion a l'host du l'mail et OK)
        )

    [mailValid] => Array
        (
            [0] => failure
            [1] => email@valide.com n'est pas valide (Si l'adresse et une adresse existante)
        )

    [mailDisposable] => false // false = n'est pas jetable | true = jetable (les mail jetable sont a exclure des mailing)
)


- pour une vrais adresse avec un format valide, et qui est jetable
Array
(
    [mailSyntax] => Array
        (
            [0] => success
            [1] => La syntaxe est correcte ( si la syntaxe de l'email et valide)
        )

    [mailHost] => Array
        (
            [0] => success
            [1] => La connexion à xx.xx.xx a fonctionné ( Si la connexion a l'host du l'mail et OK)
        )

    [mailValid] => Array
        (
            [0] => success
            [1] => email@valide.com est valide (Si l'adresse et une adresse existante)
        )

    [mailDisposable] => true // false = n'est pas jetable | true = jetable (les mail jetable sont a exclure des mailing)
)


bon je vais pas faire tout les jeu possible mais voilà.

Le plus long et de garder la liste des boite mail jetable à jour lol.

Votre avis sur cette solution ? utile ou inutile ?
pas besoin de s’embêter avec des ça peut être ?

3
200 par minute, ah ouai pas mal du tout !

intéressant pour faire un plug aussi avec curl du coup :
 - du style auto-complétion d'inscription
 - pour un espace membre pré-rempli pour le profil (ville, pays etc, FAI)
 - Pour se faire son système de stat géo perso

du coup intéréssant leur API

4
La programmation, les scripts / Re : 1TPE : API Produits
« le: 01 juillet 2016 à 23:05:33 »
oui je connais je fait déjà ça actuellement. (j'ai déjà un système similaire créer de A à Z pour le envato market ~6 millions de produits)

et oui le but de la db et bien de sauvegarder les donnée pour ne pas faire ces requêtes à chaque passage,
mais je doute que la location de la db mène a quelque chose, pas grand monde serait près a sortir quelque sous
pour avoir accès a une api.




5
avant de passer à 6, ouai il y en as pour des années, bien pour sa que j'en ai pas mi plus, et si un jour faut ajouter 1 sa devrais pas poser de souci lol.

après en général quand on ne veux pas limité on mais la valeur max de varchar soit 255 mais bon ...

après un mail dépasse très très rarement 50 caractères (en général bien sur)

exemple : une.adresse.mail.de50caractèrecafaitlong@gmail.com

pareil pour les nom/prénom, adresse, code postal (fr ou non),  ville, pays lol je suis pas sur qu'il y en ai des aussi long

bref on peut très vite limité les taille la encore, mais le plus judicieux et de mettre les limites fixé par sylvain si il veux bien les communiqué

6
La programmation, les scripts / Re : 1TPE : API Produits
« le: 01 juillet 2016 à 16:20:04 »
Ahh voilà une bonne nouvelle :)

Oui je me doute je connais bien trop ses méthode barbare ^^, mais qui marche extrêmement bien
puis hors changer le site le fonctionnement reste le même, seul les regex change.

cependant une API serait tellement mieux ^^

7
merci avec ton jeu de donnée ça va me permettre de faire une table au plus juste
et avec de vrais numéro on voie que ton second test peut aussi fonctionné du coup

après pour certaine info je n'ai trouver aucune iformation nulle part, si sylvain pouvais fournir le nombre de caractère max sa serait top au moins pas de problème, mais bon déjà on peut amélioré ta table sur quelque point si sont si je ne me trompe pas fixe

(Bon il reste beaucoup de varchar 200 mais je ne sais pas le nombre de caractère maximum)
exemple :
CREATE TABLE IF NOT EXISTS `ventes` (
  `facturec` bigint(16) NOT NULL,
  `amountc` varchar(10) NOT NULL,
  `datec` int(8) NOT NULL,
  `heurec` int(4) NOT NULL,
  `nomprodc` varchar(200) NOT NULL,
  `affic` varchar(200) NOT NULL,
  `vendc` varchar(200) NOT NULL,
  `trackc` varchar(200) NOT NULL,
  `nomc` varchar(200) NOT NULL,
  `adressc` varchar(200) NOT NULL,
  `codepc` varchar(200) NOT NULL,
  `villec` varchar(200) NOT NULL,
  `paysc` varchar(200) NOT NULL,
  `emailc` varchar(200) NOT NULL,
  `datac` varchar(200) NOT NULL,
  `rembc` varchar(3) NOT NULL,
  `numprodc` int(5) NOT NULL,
  `gainsvendc` varchar(10) NOT NULL,
  `gainsaffc` varchar(10) NOT NULL,
  UNIQUE KEY `facturec` (`facturec`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

8
La programmation, les scripts / Re : 1TPE : API Produits
« le: 01 juillet 2016 à 15:41:04 »
ba pour commencez j'ai créer une classe complète, je n''utilise pas le script qu'il fournisse car pas a mon gout
( gout personnel bien sur)

leur API a une porté très limité (Pas le listage, détail ou autre sur les produits), du coup ma classe actuelle ne fait pas beaucoup plus (via leur l'api, mais j'ai d'autre option), j'ai donc tout refait en POO il me suffi d'instancier la classe
exemple :
 $r = new UNTPE($memberID, $memberKEY);
Puis de gérer les méthode exemple :
$facture = $r->facture($numeroFAC);cette méthode me rempli donc tout les paramètre retourné par 1tpe

Exemple pour une utilisation normale je fait donc
Citer
<?php

/**
*  Test facture
*/
if($facture->status == 'VALIDE'){
     echo 'La facture et valide';
}
elseif($facture->status == 'ERREUR MEMBRE'){
     echo 'La facture n\'est pas associer au bon vendeur';
}
elseif($facture->status == 'ERREUR FACTURE'){
     echo 'La facture n\'existe pas';
}
else{
     echo 'Erreur inconnue';
}


/**
* Test renboursé
*  Retour : true:false
*/
if($facture->rembourser === false){
    echo 'Facture toujour valable (non remboursé)';
}
else{
    echo 'Facture remboursé');
}

bon la il n'y as que 2 exemple, mais je test aussi tout le reste, je peut attribuer un délaie de validité (en le passant en paramètre a une fonction

exemple : (utilisation dans mon script actuellement je limite le delai de téléchargement de mes fichier a 24 heure)
$r->setDelayAvailable('le nombre de seconde ou quelquechose du genre' ((60*60)*24) )
je peut aussi récupé des information d'une autre manière (avec convention de nommage) une foi que la facture à été demander
$r->setStatus;
$r->setRembourser
$r->setDelayAvailable
$r->.... etc

j'ai déjà inclue un système de récupération basique de produit avec catégorie/sous-catégorie et page suivante en auto le principe et simple
notre classe au lieux de l'instancié comme précédemment on ajoute un paramètre et on mais notre login/pwd
enssuite on lance le grabCategorie ( numéro catégorie,  arbre complet)
(exemple on veux listé qu'une seule cat on mais le numéro de la catégorie et seulement celle la sera listé, enfin je vais pas tout détaillez)

et pour finir on lance le grabProduit (qui lui fait plusieur appel au site car 1tpe utilise des frame pour certain truc)

Exemple récupération intégrale des produit sur 1tpe
$r = new  UNTPE($userName, $userPassword, true); // se connecté sur le site (pas sur l'api)
$listeCategorie = $r->grabCategorie(null, true); // On créer le tableau multidimentionnel qui va etre utilisé pour assigné les produits ultérieurement
$r->grabProduit(); // génère la liste de produit


Voilà quelque exemple tout bête bien sur après mon but étai de faire un système genre shop en automatique pour affilié.

le but serai de faire comme un système de marque blanche, ou de détail sur les vente avec des lien direct affilié ou autre, bref pas trop d'idée actuellement.
actuellement ce que peut faire mon script :
 1 ) gérer l'intégralité de l'api
 2 ) récupéré toutes les catégorie/sous-catégorie
 3 ) listé tout les produits et les assigné a chaque catégorie (j'ai quelque bug actuellement mais rien d'extraordinaire )
 4 ) récupéré les information dans les frame (lien direct, bannière etc)
 
puis, couplet a la classe, un script qui permet d'ajouter dans une base de donnée toutes les information recueilli et de faire pour le coup par exemple un shop en marque blanche, ou ce que l'on veux d’ailleurs.
Si vous êtes vendeur ou affilié ou les 2, le script permet d'avoir les stats des vente exactement pareil (vos vente ou celle de vos affilié, pas celle des autre bien évidement).

Maintenant quelques problème persiste, en lançant ce script vous faire pas loin de (18 000 + nb de catégorie + nb sous-satégorie par catégorie  + nb de page par catégorie/sous-catégorie) et la ....
Mister sylvain risquerai d'être furieux

si on compte le nombre de personne qui potentiellement lancerai un tel script, ou qui check les status des produits afin de mettre à jour leurs base de données cela risquerai de finir par des ban je pense.

alors que si cela serait intégré dans l'api officielle sa prendrais bien moins de ressources (pour 1tpe comme pour les utilisateur)


Point fort :
   - heuu elle existe lol

Point faible :
    - lent (pas réellement tout dépend des serveurs)
    - gourmand en ressources, disons 25 000 requêtes pour remplir la base de donnée sa commence à faire
    - non officielle (risque de ban ou autre ? aucune idée)
    - beaucoup de regex (le moindre changement sur le site 1tpe peut tout bloquer)
    - utilise votre login/pwd 1tpe au lieux des identifiant API

Voilà FortTrafic tu sais maintenant :)

9
La programmation, les scripts / Re : 1TPE : API Produits
« le: 28 juin 2016 à 23:45:24 »
ok ba faudrait que je voie ça un de ces jours.

10
Merci de ta réponse,

sinon niveau php aucun problème, juste que le seul test qui et fourni et vraiment limite car tous n'est pas rempli
(affilié, gain vendeur et autre par exemple), du coup faut un peut deviné.

Revenons en aux date, avec donc le numéro de facture de test "2222266665555544" ton second système ne fonctionne  pas, cependant je n'ai encore jamais rien vendu ce qui limite mes test au seul jeu disponible.

tu n'aurai pas quelque jeu complet de donnée, en changeant les nom/mail et autre donnée personnelle bien sur, mais en laissant les longueur maximale des chaine de caractère id et autre histoire que je que finisse ma class pour l'api stp ?

Merci

11
La programmation, les scripts / Re : 1TPE : API Produits
« le: 28 juin 2016 à 18:05:31 »
Salut,

Déterrage de topic lol, toujours pas d'actualité l'api produit ?
et le parser de misterbeen toujours pas OP ? (pas bien dur a faire soit même mais si quelqu' un l'a déjà fait   ::) )

12
Bonjour,

Je vais pas tarder à me lancé dans l'aventure 1TPE, et fait joujou avec l'API actuellement et je trouve qu'elle manque cruellement d'information, mais bon ses pas le sujet :) .

Alors certes les information que je cherche ne sont pas obligatoire et tout, mais tellement plus pratique au quotidien...

Créant mes script entierement je tombe sur un point sombre sur "date de la commande" et "heure de la commande"
la question et la date ne contient elle pas l'heure ?

Car la facture de test ne permet pas d'en être sur car
 - pour la date cela me retourne :
 - - - - - 20160628 (soit 1970-08-22 09:10:28)
 - et pour l'heure
 - - - - - 1200 (soit 01:20:00)

faut il ajouter  l'heure de la commande  a la date de la commande ?
faut il ne pas prendre en compte l'heure de la date de la commande?
ou simplement le jeux de test n'est il pas correct ?


Je sais que sa peut paraitre tout bête mais, moi qui programme tous mon système et qui me dit je vais bloqué a 24  ou 48 heure la possibilité de télécharger, sans ces information rien n'est sûr.

-------------------------------------------------------------
Et ensuite pourquoi ne pas proposé un API programmé objet ? une class qui fait le boulot au lieux de faire du procédural qui en plus utilise des méthode peut recommandé depuis un moment
exemple short open tag qui ne devrais plus être utilisé (suffi simplement de remplacé <? par <?php
ou encore fsockopen, fwrite etc au lieux de curl ?
Et pourquoi pas faire une class php ?
cela rendrais bien plus lisible et maintenable votre code. (avis personnel bien sur)

Pages: [1]