facebook / facebook-ruby-business-sdk

Ruby SDK for Meta Marketing API
https://developers.facebook.com/docs/business-sdk
Other
204 stars 161 forks source link

Cannot add user to custom audience on Ruby 3.2 #198

Closed fout-hiroshi closed 10 months ago

fout-hiroshi commented 1 year ago

Which SDK version are you using?

What's the issue?

Cannot add user to custom audience

Steps/Sample code to reproduce the issue

require "facebookbusiness"

access_token = <ACCESS_TOKEN>
app_secret = <APP SECRET>
customaudience_id = <CUSTOM_AUDIENCE_ID>
device_ids = ['AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA']
session = FacebookAds::Session.new(access_token: access_token, app_secret: app_secret)
customaudience = FacebookAds::CustomAudience.get(customaudience_id, session)
customaudience.add_user(device_ids, "MOBILE_ADVERTISER_ID")

Observed Results:

Fail to add user with following error:

facebookbusiness-17.0.0/lib/facebook_ads/ad_objects/helpers/custom_audience_helpers.rb:61:in `prepare_params': wrong number of arguments (given 3, expected 2) (ArgumentError)

With my observation, this is raised by the incompatibility of keyword arguments in Ruby 3.0.

https://www.ruby-lang.org/en/news/2019/12/12/separation-of-positional-and-keyword-arguments-in-ruby-3-0/

Expected Results:

Can add user to Custom Audience

Related Cases:

https://github.com/facebook/facebook-ruby-business-sdk/issues/136