2010-10-06 14 views
1

Actuellement, pour l'envoi de courriers électroniques, nous utilisons Google Apps pour nos emails, mais nous sommes limités à 500 emails/compte/jour. Je me demandais s'il y avait un moyen de suivre le nombre de courriels que nous envoyons, puis de changer de compte si nécessaire - comme si nous avions moins de 500 courriels pour la journée, utiliser le compte 1, et si nous ' Avoir atteint 500, utiliser le compte 2, Si nous avons atteint 999, utiliser le compte 3, etc.Rails + Google Apps - Limite d'envoi d'email Question

Est-ce possible? S'il y a un plugin génial, sinon, comment pourrais-je faire ça?

Merci!

+0

Il serait probablement beaucoup plus facile d'acheter un compte approprié pour l'envoi de courriels. – tadman

+0

Je suis d'accord - c'est certainement beaucoup plus facile, mais pas moins cher - cependant, nous avons un budget limité, et nous pourrions ne pas dépasser la limite des 500. – stringo0

Répondre

3

Vous pouvez facilement réaliser cette solution en créant une classe proxy. La classe sera responsable d'obtenir la demande de livraison par courrier électronique, de consigner la demande et de la transmettre à l'expéditeur approprié.

Ceci est un prototype très simple, en supposant que vous utilisez Rails 2.

module MailerProxy 

    mattr_accessor :emails_count 
    @@emails_count = 0 

    def self.deliver(klass, method, *args) 
    emails_count += 1 
    klass.send("deliver_#{method}", *args) 
    end 

end 

MailerProxy.deliver(UserMailer, :email_notification, User.first) 

Malgré la solution ci-dessus pourrait fonctionner, je vous encourage fortement à utiliser un service approprié pour l'envoi de courriels qui est capable de gérer votre taux quotidien au lieu d'essayer de créer des solutions de contournement complexes.

+0

Merci Simone! Jusqu'à présent, beaucoup de services d'emailing semblent coûteux - le cachet de poste semble être le moins cher - avez-vous des sites recommandés? – stringo0

+0

J'ai du mal à implémenter/penser à cela - 1) Comment spécifier quel smtp utiliser? Ai-je besoin de configurer plusieurs expéditeurs? En outre, il doit être une classe, correct? – stringo0

+0

1. Créez un tableau d'options et laissez la classe choisir la meilleure. Bien sûr, l'exemple est juste un prototype. Non, vous n'avez pas besoin de plusieurs expéditeurs, modifiez simplement les paramètres ActiveMailer. Non, ça n'a pas besoin d'être une classe. –