7

Próbuję dowiedzieć się, w jaki sposób mogę użyć klejnotu Gibbon w Railsach, aby automatycznie dodać subskrybentów do określonych grup zainteresowań w programie MailChimp?W jaki sposób korzystasz z Gibbon Gem, aby automatycznie dodawać subskrybentów do określonych grup zainteresowań w programie MailChimp?

Znalazłem ten artykuł, którego szczegóły non-Rails metodę robi tak: http://roman.tao.at/uncategorized/mailchimp-api-listsubscribe-listbatchsubscribe-and-groups/

Chciałbym dowiedzieć się, jak wdrożyć tę funkcjonalność używając gem Gibbon: https://github.com/amro/gibbon

FYI, Jestem również początkującym z MailChimp i Rails.

Odpowiedz

5

Aktualizacja dla wersji 2.0 interfejsu MailChimp API i wersji 1.0 Gibbon (dla @Calin i potomności). Oto niezbędne zmiany z poprzedniej wersji. Celem API jest dostępne tak jak to teraz:

gb = Gibbon::API.new 

oraz wykaz metod tak:

gb.lists.subscribe(params) 

Wreszcie parametr :email_address został zastąpiony przez parametr :email, które powinny być podane wartości następujących formularz: wartość powinna być hashem z jednym kluczem: 'email' lub 'leid', a wartość powinna być adresem e-mail subskrybenta lub unikalnym identyfikatorem MC (LEID) dla subskrybenta.

Więc pełne wywołanie subskrypcja może wyglądać tak:

gb = Gibbon::API.new 
gb.lists.subscribe(:id => "ed6d1dfef4", 
        :email => 
        { "email" => "[email protected]" }, 
        :merge_vars => 
        {:groupings => 
         { 
         0 => { :id => "95", :groups => ["Some Group", "Another Group"]}, 
         1 => { :id => "34", :groups => ["A Third Group"]} 
         } 
        }, 
        :update_existing => "true", 
        :double_optin => "false", 
        :replace_interests => "false") 
+1

z ich przykładu tutaj http://apidocs.mailchimp.com/api/2.0/lists/subscribe.php to nie wygląda bardzo intuicyjnie, ale wydaje się, że wykonuje to zadanie, dziękuję – Calin

+0

"Grupowanie" może być po prostu array zamiast obiektu, np .: 'groupings: [{id: '95', groups: ['Some Group']}, ...]' –

+0

@MattHuggins To nie działa dla mnie. Nie przekazuję jednak opcji replace_interests. Sprawdziłem, przekazując go, i tak nie działa. – Ameen

9

Wreszcie, po godzinach przeglądania kodu. Znalazłem przykład, którego szukam!

Dzięki TJ Moretto zaopatrzenia to na Google Groups thread:

Używam gem Gibbon, ale wpadł na tych samych typów spraw. Oto jak musiałem formatować parametry, by w końcu dostać to do pracy:

gb.list_subscribe({:id => "#{list.id}", 
        :email_address => user.email, 
        :update_existing => true, 
        :double_optin => false, 
        :send_welcome => false, 
        :merge_vars => {'FNAME' => "#{user.first_name}", 
            'LNAME' => "#{user.last_name}", 
            'GROUPINGS' => {0 => {'id' => grouping.id, 'groups' => "#{challenge.name}"}}} 
        }) 

nadzieję, że pomoże.

Zespół Mailchimp - w oparciu o liczbę problemów, z którymi wszyscy się spotykają próbując to zrobić (we wszystkich językach programowania), sugeruję, aby zaktualizować dokumentację interfejsu API, aby była bardziej przejrzysta.

+0

Dziękuję !! Walczyłem z tym głową przez godzinę. – hoffm

+2

Należy pamiętać, że te informacje są obecnie nieaktualne w aktualnej wersji (2.0) interfejsu MailChimp API i bieżącej wersji Gibbon (1.0). – hoffm

+1

@ hoffm czy wiesz, jaki jest teraz właściwy sposób, aby rozwiązać ten problem? – Calin

Powiązane problemy