7

Tôi đang cố gắng tìm ra cách tôi có thể sử dụng đá quý Gibbon trong Rails để tự động thêm người đăng ký vào các nhóm sở thích cụ thể trong MailChimp?Làm thế nào để bạn sử dụng Gibbon Gem để tự động thêm người đăng ký vào các nhóm sở thích cụ thể trong MailChimp?

tôi đã tìm thấy bài viết này định chi tiết một phương pháp phi Rails để làm như vậy: http://roman.tao.at/uncategorized/mailchimp-api-listsubscribe-listbatchsubscribe-and-groups/

Tôi muốn tìm ra cách để thực hiện điều đó chức năng bằng cách sử dụng đá quý Gibbon: https://github.com/amro/gibbon

FYI, Tôi cũng là người mới làm quen với cả MailChimp và Rails.

Trả lời

5

Cập nhật phiên bản 2.0 của API MailChimp và phiên bản 1.0 của Gibbon (Đối với @Calin và hậu thế). Dưới đây là những thay đổi cần thiết từ phiên bản trước. Các đối tượng API được truy cập như thế này bây giờ:

gb = Gibbon::API.new 

Và danh sách các phương pháp như vậy:

gb.lists.subscribe(params) 

Cuối cùng các tham số :email_address đã được thay thế bởi tham số :email, mà phải được gán giá trị là như sau biểu mẫu: Giá trị phải là một băm có một khóa, hoặc là 'email' hoặc 'leid' và giá trị phải là địa chỉ email của người đăng ký hoặc mã định danh duy nhất của MC (LEID) cho người đăng ký.

Vì vậy, một cuộc gọi thuê bao đầy đủ có thể trông như thế này:

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

từ ví dụ của họ ở đây http://apidocs.mailchimp.com/api/2.0/lists/subscribe.php điều này không trông rất trực quan, nhưng có vẻ như để làm công việc, cảm ơn bạn – Calin

+0

'nhóm' chỉ có thể là một mảng thay vì một đối tượng, ví dụ: 'nhóm: [{id: '95', nhóm: ['Some Group']}, ...]' –

+0

@MattHuggins Điều này dường như không hiệu quả đối với tôi. Tuy nhiên, tôi không chuyển tùy chọn replace_interests. Tôi đã kiểm tra bằng cách vượt qua nó, không hoạt động. – Ameen

9

Cuối cùng, sau hàng giờ đọc qua mã. Tôi đã tìm thấy ví dụ mà tôi đang tìm kiếm!

Nhờ TJ Moretto cho việc cung cấp này trên Google Groups thread:

Tôi đang sử dụng đá quý vượn, nhưng chạy vào cùng loại của các vấn đề này. Đây là cách tôi phải định dạng các tham số để có được điều này để làm việc:

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}"}}} 
        }) 

Hy vọng điều đó sẽ hữu ích.

Nhóm Mailchimp - dựa trên số lượng sự cố mọi người chạy vào khi cố gắng thực hiện điều này (trên tất cả ngôn ngữ lập trình), tôi đề xuất bạn cập nhật tài liệu API rõ ràng hơn.

+0

Cảm ơn bạn !! Tôi đã đánh đầu của tôi chống lại điều này trong một giờ. – hoffm

+2

Lưu ý rằng thông tin này hiện đã lỗi thời với phiên bản hiện tại (2.0) của API MailChimp và phiên bản hiện tại của Gibbon (1.0). – hoffm

+1

@hoffm bạn có biết cách nào đúng để thực hiện điều này ngay bây giờ không? – Calin

Các vấn đề liên quan