【问题标题】:How do you use the Gibbon Gem to automatically add subscribers to specific interest groups in MailChimp?您如何使用 Gibbon Gem 自动将订阅者添加到 MailChimp 中的特定兴趣组?
【发布时间】:2012-09-12 02:40:26
【问题描述】:

我想弄清楚如何使用 Rails 中的 Gibbon gem 自动将订阅者添加到 MailChimp 中的特定兴趣组?

我发现这篇文章详细介绍了一种非 Rails 方法:http://roman.tao.at/uncategorized/mailchimp-api-listsubscribe-listbatchsubscribe-and-groups/

我想弄清楚如何使用 Gibbon gem 实现该功能:https://github.com/amro/gibbon

仅供参考,我也是 MailChimp 和 Rails 的新手。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 rubygems mailchimp


    【解决方案1】:

    最后,经过数小时的代码阅读。我找到了我正在寻找的例子!

    感谢 TJ Moretto 在 Google 网上论坛thread 上提供此信息:

    我正在使用 gibbon gem,但遇到了相同类型的问题。 以下是我必须如何格式化参数才能最终让它工作:

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

    希望对您有所帮助。

    Mailchimp 团队 - 基于每个人遇到的问题数量 当尝试这样做时(跨所有编程语言),我建议 您更新 API 文档以使其更加清晰。

    【讨论】:

    • 谢谢!!我为此苦苦挣扎了一个小时。
    • 请注意,此信息现在与 MailChimp API 的当前版本 (2.0) 和 Gibbon 的当前版本 (1.0) 已过时。
    • @hoffm 你现在知道正确的方法是什么吗?
    • @Calin 我已经发布了一个新的答案来回答你的问题。
    【解决方案2】:

    MailChimp API 2.0 版和 Gibbon 1.0 版更新(供@Calin 和后代使用)。以下是对先前版本的必要更改。现在可以像这样访问 API 对象:

    gb = Gibbon::API.new
    

    然后列出这样的方法:

    gb.lists.subscribe(params)
    

    最后:email_address参数已经被:email参数替换,它应该被赋予一个如下形式的值:该值本身应该是一个带有一个键的散列,'email''leid',该值应该是订阅者的电子邮件地址或订阅者的 MC 唯一标识符 (LEID)。

    所以一个完整的订阅电话可能看起来像这样:

    gb = Gibbon::API.new
    gb.lists.subscribe(:id => "ed6d1dfef4",
                       :email => 
                         { "email" => "example@domain.com" },
                       :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")
    

    【讨论】:

    • 来自他们的示例apidocs.mailchimp.com/api/2.0/lists/subscribe.php 这看起来不是很直观,但它似乎可以完成这项工作,谢谢
    • groupings 可能只是一个数组而不是一个对象,例如:groupings: [{id: '95', groups: ['Some Group']}, ...]
    • @MattHuggins 这似乎对我不起作用。我没有通过 replace_interests 选项。我通过它检查了它,无论如何都不起作用。
    • 刚刚检查了此代码所在的项目,它在实施时正在使用 gem 版本 1.1.2。不确定从那时起它是否在 MailChimp API 或 Gibbon 本身方面发生了变化,尽管该项目已移交给客户。
    猜你喜欢
    • 2016-12-11
    • 2016-10-03
    • 2016-04-17
    • 2013-09-07
    • 2015-12-10
    • 2015-11-11
    • 2012-02-04
    • 2013-11-19
    • 2011-04-18
    相关资源
    最近更新 更多