by Cristián Lávaque » March 10th, 2011, 2:00 pm
I see.
Well, I looked at s2Member's file download features and I don't see how you could use that easily.
s2Member will obviously be used to allow access, or not, to the page where the contact form is based on his membership level or custom capability. You could save in the member's profile the message credits he's entitled to per month, using s2Member's custom capabilities. For the rest I think that you really need a custom solution.
A log of each message sent should be created in the database, including the user's ID and time, and updated after each message is sent successfully. This log can be checked every time the contact form is loaded and if the limit for that user has been reached, a message be shown to explain it instead.
You could figure out the message credits left for the current month, or in total if the person left some unused from previous months and they don't expire each month. You can use the times s2Member stored for the purchase if you want to count months starting with purchase date, or just use the calendar months. Both depend on your policy.
You can find developers to create this for you over at eLance, oDesk, Scriptlance or Rent-a-coder.
Does this help you?