latest stable versions: v150827 (changelog)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

EOT Not Working, still

Home Forums Community Forum EOT Not Working, still

This topic contains 12 replies, has 4 voices. Last updated by  Jason (Lead Developer) 4 years, 9 months ago.

Topic Author Topic
Posted: Monday Apr 2nd, 2012 at 9:06 pm #9827
CN
Username: mcmoney

Continued from this thread:

Sure. You’ll want to grab the CRON URL from your own Dashboard though. You can find that in your EOT Behavior options. Just choose that option from the list and a message will appear just above that field with the URL that’s required. Yours will look something like this:

http://www.example.com/?s2member_auto_eot_system_via_cron=1
Schedule the CRON job to run at least once each day please.

Dashboard -› s2Member® -› ccBill® Options -› Automatic EOT Behavior

The thread I want to respond to is now closed so I’m quoting the last response.

I set up a cron job with the URL s2member gives me, which looks exactly like the one above except with my domain, and today I got an email saying: “/bin/sh: http://example.com/?s2member_auto_eot_system_via_cron=1: No such file or directory”

Anyone know what’s going on?

  • This topic was modified 4 years, 9 months ago by  Raam Dev. Reason: Added link to previous thread

List Of Topic Replies

Viewing 12 replies - 1 through 12 (of 12 total)
Author Replies
Author Replies
Posted: Tuesday Apr 3rd, 2012 at 6:14 am #9856

What happens when you load that URL in the browser directly? Do you get a 404 or something else?

Did you check your .htaccess? Maybe there’s a rule there that’s making it fail?

Posted: Tuesday Apr 3rd, 2012 at 10:43 am #9867
CN
Username: mcmoney

When I go to it in my browser I get a blank page.

Posted: Tuesday Apr 3rd, 2012 at 1:50 pm #9889
Raam Dev
Username: Raam
Staff Member

Hello,

This error message indicates you’ve configured the Cron Job improperly:

/bin/sh: http://example.com/?s2member_auto_eot_system_via_cron=1: No such file or directory

That says that the system is trying to run the URL as a shell script using /bin/sh.

What you need to do is configure the Cron Job to use something like the wget program to access the URL:

/usr/bin/wget -q http://example.com/?s2member_auto_eot_system_via_cron=1
Posted: Tuesday Apr 3rd, 2012 at 3:48 pm #9918
CN
Username: mcmoney

@Raam – I will try that and report back. Thank you

Posted: Wednesday Apr 4th, 2012 at 4:44 am #10021

Thanks, Raam. Goes to show how much I know about cron jobs. :P

Posted: Thursday Apr 5th, 2012 at 1:33 pm #10177
CN
Username: mcmoney

This is what I get in the ccbill-dl log:

PHP v5.2.9 :: WordPress® v3.3.1 :: s2Member® v120309 :: s2Member® Pro v120309
Memory 35.52 MB :: Real Memory 35.75 MB :: Peak Memory 35.54 MB :: Real Peak Memory 35.75 MB
mysite.com/?s2member_auto_eot_system_via_cron=1
User-Agent: Wget/1.11.4 Red Hat modified
array (
‘s2member_log’ =>
array (
0 => ‘Storing last DataLink time: Thu Apr 5, 2012 5:00:06 pm UTC’,
1 => ‘No new Datalink IPNs at this time: Thu Apr 5, 2012 5:00:11 pm UTC’,
2 => ‘https://datalink.ccbill.com/data/main.cgi?startTime=20120404170006&endTime=20120405170006&transactionTypes=REBILL%2CEXPIRE%2CREFUND%2CCHARGEBACK&clientAccnum=xxxxxxxxx&clientSubacc=0004&username=s2member&password=xxxxxxxxxx’,
3 => ”,
),
)

As you can see – even though I probably have at least 50 people who should be expired, s2member doesn’t do a thing.

Posted: Thursday Apr 5th, 2012 at 10:22 pm #10216
Raam Dev
Username: Raam
Staff Member

Is this being tested in a clean installation with no other plugins running? As Jason explained in the previous thread, there could be conflicting plugins interfering with s2Member.

In the meantime, I’m going to ask Jason to take another look at this thread to see if he can offer any insight. Thank you for your patience.

Posted: Thursday Apr 5th, 2012 at 10:27 pm #10217
CN
Username: mcmoney

I tested on a clean install and as far as I know the same problems are not experienced. The problem before was that it was running every 10 minutes instead of once a day, via wp-cron. So, I basically disabled wordpress cron from running automatically and now have a scheduled wp-cron to run twice a day, along with the cron that you made for me with wget for running the s2member auto-eot system.

Here are my plugins:
http://www.imagebam.com/image/b29590183474840
http://www.imagebam.com/image/e62b75183474841

Posted: Thursday Apr 5th, 2012 at 10:28 pm #10218
CN
Username: mcmoney

Also, I’ve tried deactivating all of them except s2member and it still doesn’t auto-eot any members.

Posted: Friday Apr 6th, 2012 at 5:16 pm #10255
Staff Member

Thanks for the heads up on this thread…

‘s2member_log’ =>
array (
0 => ‘Storing last DataLink time: Thu Apr 5, 2012 5:00:06 pm UTC’,
1 => ‘No new Datalink IPNs at this time: Thu Apr 5, 2012 5:00:11 pm UTC’,
2 => ‘https://datalink.ccbill.com/data/main.cgi?startTime=20120404170006&endTime=20120405170006&transactionTypes=REBILL%2CEXPIRE%2CREFUND%2CCHARGEBACK&clientAccnum=xxxxxxxxx&clientSubacc=0004&username=s2member&password=xxxxxxxxxx’,
3 => ”,
),
)

In this log entry s2Member did not receive anything from ccBill. To clarify… s2Member will request REBILL, EXPIRE, REFUND, or CHARGEBACK details for the past 24 hours. In this request, it was asking for any of these that occurred starting on 2012-04-04 at 5pm until 2012-04-05 at 5pm (i.e. in the last 24 hours). ccBill responded back, saying none of these occurred in that time frame. Does that help any?

Posted: Friday Apr 6th, 2012 at 5:20 pm #10256
CN
Username: mcmoney

Hi,

It may help understand what it’s trying to do, yes. However, the problem is s2member has not been working for months. I need it to check members that have already expired via ccbill.

In other words, I need it to look at someone who may have joined on December 1st, expired on January 1st, but are still s2member level 1 on the site.

Shouldn’t s2member be looking up actual subscription ID’s instead of asking ccbill if there’s any? Is there a way I can have s2member manually go through all members to check the status of their account?

Thank you

Posted: Monday Apr 9th, 2012 at 7:46 pm #10404
Staff Member

Thanks for the follow-up!

I’m so sorry. No, that’s a limitation on the ccBill side of things.

Taken from the DataLink documentation, it reads as follows:
startTime and endTime
startTime and endTime are separate variables that represent the date and time during which the
transactions took place. The values must be passed in YYYYMMDDHHIISS format with hours
expressed in 24‐hour military format. Specified date ranges cannot exceed 24 hours; dates entered
outside this range will produce an error and terminate the script.

I suppose you could try to work around this, but forcing s2Member to re-run with start/end dates numerous times, based on the dates in the past. That would require a slight hack on your part though. If you open this file: /s2member-pro/includes/classes/gateways/ccbill/ccbill-datalink.inc.php, at line #74-75 you will find the start/end dates that s2Member uses (based on the last time it ran).

If you’d like to force s2Member to request data for specific dates in history,
you might do something like this around line #74 – 75. Example follows:

$start = strtotime('-60 days'); /* 60 days ago. */
$end = $last = $start + 86400; /* Plus one full day. */
Viewing 12 replies - 1 through 12 (of 12 total)

This topic is closed to new replies. Topics with no replies for 2 weeks are closed automatically.

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Contacting s2Member: Please use our Support Center for bug reports, pre-sale questions & technical assistance.