Google Ads API PHP ক্লায়েন্ট লাইব্রেরি বেশ কিছু কনফিগারেশন সেটিংস প্রদান করে যা আপনি লাইব্রেরির আচরণ কাস্টমাইজ করতে ব্যবহার করতে পারেন।
কনফিগারেশন ফাইল
আপনি এই কনফিগারেশন সেটিংসের বেশিরভাগ ini
ফাইলে সংরক্ষণ করতে পারেন এবং ক্লায়েন্টদের ইনস্ট্যান্ট করার সময় সেগুলি ব্যবহার করতে পারেন, উদাহরণস্বরূপ, google_ads_php.ini
।
শংসাপত্র এবং ক্লায়েন্ট নির্মাতা উভয়ই এই ধরনের ফাইল থেকে সেটিংস লোড করার জন্য fromFile
পদ্ধতিগুলি প্রদান করে:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
যদি আর্গুমেন্ট হিসাবে কোন কনফিগারেশন পাথ দেওয়া না থাকে, তাহলে fromFile
পদ্ধতিগুলি ডিফল্ট কনফিগারেশন পাথ থেকে লোড হয় যা হল:
-
GOOGLE_ADS_CONFIGURATION_FILE_PATH
নামের পরিবেশ ভেরিয়েবলের মান সেট করা থাকলে। - অন্যথায়, আপনার
HOME
ডিরেক্টরিতেgoogle_ads_php.ini
ফাইলটি।
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
গতিশীল কনফিগারেশন
ক্লায়েন্টদের তাত্ক্ষণিক করার সময় আপনি এই কনফিগারেশন সেটিংস গতিশীলভাবে সেট করতে পারেন।
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->build();
কনফিগারেশন এনভায়রনমেন্ট ভেরিয়েবল
ক্লায়েন্টদের ইনস্ট্যান্টিয়েট করার সময় আপনি পরিবেশ ভেরিয়েবল থেকে কিছু কনফিগারেশন সেটিংস সেট করতে পারেন ( বিস্তৃত তালিকা দেখুন)।
শংসাপত্র এবং ক্লায়েন্ট নির্মাতা উভয়ই পরিবেশ ভেরিয়েবল থেকে সেটিংস লোড করার জন্য fromEnvironmentVariables
পদ্ধতি থেকে প্রদান করে:
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
কনফিগারেশন ক্ষেত্র
কনফিগারেশন সেটিংস বিভাগগুলিতে সংগঠিত বেশ কয়েকটি ক্ষেত্র সমর্থন করে।
-
OAuth2TokenBuilder
দ্বারা ব্যবহৃত ক্ষেত্রগুলি:- অ্যাপ্লিকেশন মোড
-
[OAUTH2] clientId
: আপনার OAuth2 ক্লায়েন্ট আইডি। -
[OAUTH2] clientSecret
: আপনার OAuth2 ক্লায়েন্ট সিক্রেট। -
[OAUTH2] refreshToken
: আপনার OAuth2 রিফ্রেশ টোকেন।
-
- পরিষেবা অ্যাকাউন্ট মোড
-
[OAUTH2] jsonKeyFilePath
: Json কী ফাইল পাথ। -
[OAUTH2] scopes
: স্কোপ। -
[OAUTH2] impersonatedEmail
: ছদ্মবেশী করার ইমেল।
-
- অ্যাপ্লিকেশন মোড
-
GoogleAdsClientBuilder
দ্বারা ব্যবহৃত ক্ষেত্রগুলি:-
[GOOGLE_ADS] developerToken
: API অ্যাক্সেস করার জন্য আপনার ডেভেলপার টোকেন। -
[GOOGLE_ADS] loginCustomerId
: অনুরোধে ব্যবহার করার জন্য অনুমোদিত গ্রাহকের আইডি । -
[GOOGLE_ADS] linkedCustomerId
: লিঙ্ক করা গ্রাহক আইডি। -
[LOGGING] logFilePath
: লগিং করার জন্য ফাইল পাথ। -
[LOGGING] logLevel
: লগিং লেভেল। -
[CONNECTION] proxy
: ইন্টারনেট সংযোগের জন্য ব্যবহৃত প্রক্সি সার্ভার URL। -
[CONNECTION] transport
: পরিবহন. -
[CONNECTION] grpcChannelIsSecure
: gRPC চ্যানেল সুরক্ষিত কিনা। -
[CONNECTION] grpcChannelCredential
: gRPC চ্যানেলের শংসাপত্র। -
[CONNECTION] unaryMiddlewares
: unary Middlewares. -
[CONNECTION] streamingMiddlewares
: স্ট্রিমিং মিডলওয়্যারস৷ -
[CONNECTION] grpcInterceptors
: gRPC ইন্টারসেপ্টর।
-
কনফিগারেশন বৈধতা
ক্লায়েন্ট ইনস্ট্যান্টিয়েটিং করার সময় কনফিগারেশন সেটিংস চেক করা হয় এবং অবৈধ হলে ব্যতিক্রমগুলি নিক্ষেপ করা হয়। এখানে নিয়ম আছে:
-
[OAUTH2]
ক্ষেত্রগুলি একই সময়ে অ্যাপ্লিকেশন মোড এবং পরিষেবা অ্যাকাউন্ট মোড উভয়ের জন্য সেট করা উচিত নয়৷ - পরিষেবা অ্যাকাউন্ট মোড ব্যবহার করার সময়
[OAUTH2] jsonKeyFilePath
এবং[OAUTH2] scopes
সেট করা আবশ্যক। - অ্যাপ্লিকেশন মোড ব্যবহার করার সময়
[OAUTH2] clientId
,[OAUTH2] clientSecret
এবং[OAUTH2] refreshToken
অবশ্যই সেট করতে হবে। -
[GOOGLE_ADS] developerToken
সবসময় সেট করা আবশ্যক। - সেট করা হলে,
[GOOGLE_ADS] loginCustomerId
এবং[GOOGLE_ADS] linkedCustomerId
অবশ্যই ধনাত্মক সংখ্যা হতে হবে। - সেট করা থাকলে,
[CONNECTION] proxy
একটি বৈধ URL হতে হবে (ফিল্টার FILTER_VALIDATE_URL দেখুন)। - যদি সেট করা থাকে,
[LOGGING] logLevel
অবশ্যই বড়-অক্ষরে একটি বৈধ PSR লগ লেভেল হতে হবে, যেমনINFO
। - সেট করা হলে,
[CONNECTION] transport
অবশ্যইgrpc
বাrest
হতে হবে। - যদি
[CONNECTION] transport
grpc
এ সেট করা থাকে, তাহলে gRPC পরিবহন অবশ্যই পরিবেশ দ্বারা সমর্থিত হবে (গাইড ট্রান্সপোর্ট দেখুন)। -
[CONNECTION] grpcChannelIsSecure
অবশ্যইtrue
হতে হবে যখন[CONNECTION] transport
grpc
এ সেট করা না থাকে। -
[CONNECTION] grpcChannelCredential
শুধুমাত্র তখনই সেট করা যাবে যখন[CONNECTION] transport
grpc
এ সেট করা থাকে। -
[CONNECTION] grpcChannelCredential
শুধুমাত্র তখনই সেট করা যাবে যখন[CONNECTION] grpcChannelIsSecure
true
।