Documentation on Ping

I can't seem to find documentation on Ping.
I understand the ping name and ping data but what is the ping url for and how should I use "Strip query strings from URL" get or post.

I apologize if I overlooked this information.

  • Jonathan
    • The Incredible Code Injector

    @jmorris,

    No. Member won't be taken to that page. But wordpress will ping that page once Member has reached a level that triggers a ping...

    to ping a url, is to send packets of infomation to that url (page that can read and process that info).
    So the ping system works like this.
    You fill it in...

    Ping Name: Ping Test
    Ping URL: http://domain.com/pingtest.php
    Ping Data:
    blogurl=%blogurl%
    username=%username%
    subscription=%subscriptionname%
    level=%levelname%

    roughly translates to... http://domain.com/pingtest.php?blogurl=%blogurl%&username=%username% etc

    So you are sending those packets of data to pingtest.php.

    Now, pingtest.php needs to be set up to read this packets of data else nothing happens, which defeats the point. So we need to make pingtest.php do something with that data ...

    Here is a sample pingtest.php it emails you the details. But you could do anything - you just have to write the code for it.

    Borrowing sample - source link below

    <?php
    $to = 'my@email.com';
    $subject = 'Test';
    $headers  = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
    $message = "Blog url: ".$_POST['blogurl']."<br>
    		   Username: ".$_POST['username']."<br>
    		   Subscription: ".$_POST['subscription']."<br>
    		   Membership Level: ".$_POST['level']."<br>
    		   " ;
    mail($to, $subject, $message, $headers);
    ?>

    Code Source: https://premium.wpmudev.org/forums/topic/pings-on-membership

    It is the same thing that happens when user fills out a form and presses the submit button. The form data is sent / processed via get or post either on that page or somewhere else.
    Learn PHP (5) POST, GET, REQUEST : (this is forms - but the principle is nearly the same) http://www.youtube.com/watch?v=CEl3bhCBjtI
    Hope that clears it up a bit.

    Sidenote: This is one of the best features of membership plugin. It allows you to fully interact / customize certain process. You could for example have user added / removed from emailing lists (mailchimp / aweber etc) by pinging there add / remove urls.
    I am creating a add_loyalty_bonus.php which will add an unannounced loyalty bonus to my members (bonus1 7 days, bonus2 30days, bonus 5 120days) the bonuses get bigger and better the longer the user stays a member. This helps keep my membership cancellations down. I have a 60 day money back Guarantee - but I have teased unannounced bonuses at 90 days, 120 days etc..
    Anyways, the possibilities are endless.

  • Jonathan
    • The Incredible Code Injector

    More features - discounts is too hard to maintain and offers a unique set of problems.

    Still busy creating it - There is just not enough hours in a day - and I have too much to do :slight_frown:

    It is additional protected content (videos, downloads, manuals, software, plugins, etc) - Usually things that complement the current subscription package.

    For Example: User signs up for a course - (How to "What to expect when you'r expecting") - subscription C.

    Course might cover Comprehensive Childbirth Class . Breastfeeding Class
    And the bonus - Newborn Baby Care Class that covers everything you need to know in 6 easy to watch lessons, a total of 7 hours ...
    bonus one lesson 1, bonus two lesson 2 etc etc

    Learnt this approach from Rich Schefren

  • Jeffrey
    • WPMU DEV Initiate

    Wow, now this is exciting.
    So is it possible for me to send data to zoho crm?
    I guess theoretically when someone signs up I can have that date post to the CRM as a lead.
    There API documentation says to use this:

    Insert records into Zoho CRM from third-party applications

    URL Format: https://crm.zoho.com/crm/private/xml/Leads/insertRecords?newFormat=1&apikey=APIKEY&ticket=TICKET&xmlData=XMLDATA

    XMLDATA example:
    `<Leads>
    <row no="1">
    <FL val="Lead Source">Web Download</FL>
    <FL val="First Name">contacto 1</FL>
    <FL val="Last Name">apellido</FL>
    <FL val="Email">testing@testing.com</FL>
    <FL val="Title">Manager</FL>
    <FL val="Phone">1234567890</FL>
    <FL val="Home Phone">0987654321</FL>
    <FL val="Other Phone">1212211212</FL>
    <FL val="Fax">02927272626</FL>
    <FL val="Mobile">292827622</FL>
    </row>
    </Leads>

    Is this a possibility?

  • Barry
    • DEV MAN’s Mascot

    Hi, at the moment you can only send GET or POST information to a URL, the ping functionality doesn't cover XML or JSON - yet - I think it would be a cool edition so will definitely look into it.

    Basically, you set the URL that you want to "hit" when a user either moves to a level / subscription or leaves a level / subscription and then pass over the information as key / value pairs. The plugin converts the information into either a POST or GET hit on the URL and records the results.

    As a quick example. If you wanted to subscribe someone to a mailchimp mailing list when they sign up you would have the following Ping:

    Ping URL - http://us2.api.mailchimp.com/1.3/
    Ping data -

    method=listSubscribe
    apikey=mykey
    list=listid
    email_address=%useremail%
    send_welcome=true
    update_existing=true

    "Strip query strings from URL" - GET

  • sistak
    • Design Lord, Child of Thor

    Hi all, jumping on this as I couldn't get the above to work and found that:

    - URL: you need to change the 'us2' bit to whatever server your Mailchimp account is hosted on (mine is 'us4' - this is indicated at the end of your API key)
    - the 'list' variable didn't work for me, but 'id' worked (not sure when Mailchimp changed this but I think 'list' is deprecated)

    All details here: https://premium.wpmudev.org/forums/topic/membership-mailchimp-auto-subscribe-ping?replies=5#post-159703

    Hope that helps someone.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.