অ্যান্ড্রয়েড: অনলাইনে টেস্ট পুশ বিজ্ঞপ্তি (গুগল ক্লাউড মেসেজিং) [বন্ধ]


97

আপডেট: জিসিএম অবমানিত, এফসিএম ব্যবহার করুন

আমি আমার অ্যাপ্লিকেশনটিতে গুগল ক্লাউড মেসেজিং বাস্তবায়ন করছি। সার্ভার কোডটি এখনও প্রস্তুত নয় এবং আমার পরিবেশে কিছু ফায়ারওয়াল বিধিনিষেধের কারণে আমি পুশ নোটিফিকেশনের জন্য একটি পরীক্ষা সেভার স্থাপন করতে পারি না। আমি যা খুঁজছি তা হ'ল একটি অনলাইন সার্ভার যা আমার ক্লায়েন্টের বাস্তবায়ন পরীক্ষা করার জন্য আমার ডিভাইসে কিছু পরীক্ষার বিজ্ঞপ্তি প্রেরণ করবে।


আপনি এখানে অন্যান্য পোস্ট মুছে ফেললেন কেন আমি এখানে লিখছি :-) নোটিফিকেশনলিস্টার সার্ভিস এপিআই 18-এ যুক্ত করা হয়েছে ... কেবলমাত্র আইডি যোগ করার পরে শ্যার্ডপ্রিফারেন্সে আইডি সংরক্ষণ করুন এবং নতুন আইডি যুক্ত করার পরে যদি আপনার প্রয়োজনের চেয়ে বড় হয় তবে অ্যারের আকার চেক করার জন্য কিছু যুক্তি যুক্ত করুন প্রথম উপাদান এবং বাতিল করুন ...
সেলভিন

উত্তর:


167

এটি করার একটি খুব সহজ উপায় খুঁজে পেয়েছি।

Http://phpfiddle.org/ খুলুন

বাক্সে নিম্নলিখিত পিএইচপি স্ক্রিপ্ট আটকান। পিএইচপি স্ক্রিপ্ট সেট API_ACCESS_KEY এ, ডিভাইস আইডিকে কোমা দ্বারা পৃথক করে সেট করুন।

F9 টিপুন বা রান ক্লিক করুন।

আনন্দ কর ;)

<?php


// API access key from Google API's Console
define( 'API_ACCESS_KEY', 'YOUR-API-ACCESS-KEY-GOES-HERE' );


$registrationIds = array("YOUR DEVICE IDS WILL GO HERE" );

// prep the bundle
$msg = array
(
    'message'       => 'here is a message. message',
    'title'         => 'This is a title. title',
    'subtitle'      => 'This is a subtitle. subtitle',
    'tickerText'    => 'Ticker text here...Ticker text here...Ticker text here',
    'vibrate'   => 1,
    'sound'     => 1
);

$fields = array
(
    'registration_ids'  => $registrationIds,
    'data'              => $msg
);

$headers = array
(
    'Authorization: key=' . API_ACCESS_KEY,
    'Content-Type: application/json'
);

$ch = curl_init();
curl_setopt( $ch,CURLOPT_URL, 'https://android.googleapis.com/gcm/send' );
curl_setopt( $ch,CURLOPT_POST, true );
curl_setopt( $ch,CURLOPT_HTTPHEADER, $headers );
curl_setopt( $ch,CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch,CURLOPT_SSL_VERIFYPEER, false );
curl_setopt( $ch,CURLOPT_POSTFIELDS, json_encode( $fields ) );
$result = curl_exec($ch );
curl_close( $ch );

echo $result;
?>

এফসিএম এর জন্য গুগল ইউআরএল হ'ল: https://fcm.googleapis.com/fcm/send

এফসিএম ভি 1 এর জন্য গুগল ইউআরএল হ'ল: https://fcm.googleapis.com/v1/projects/YOUR_GOOGLE_CONSOLE_PROJECT_ID/messages:send

দ্রষ্টব্য: গুগল বিকাশকারী কনসোলে এপিআই অ্যাক্সেস কী তৈরি করার সময় আপনাকে 0.0.0.0/0 আইপি ঠিকানা হিসাবে ব্যবহার করতে হবে। (পরীক্ষার উদ্দেশ্যে)

জিসিএম সার্ভার থেকে অবৈধ নিবন্ধকরণ প্রতিক্রিয়া প্রাপ্তির ক্ষেত্রে, দয়া করে আপনার ডিভাইস টোকেনের বৈধতা পরীক্ষা করুন। আপনি নিম্নলিখিত url ব্যবহার করে আপনার ডিভাইস টোকেনের বৈধতা পরীক্ষা করতে পারেন:

https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=YOUR_DEVICE_TOKEN

কিছু প্রতিক্রিয়া কোড:

নীচে সার্ভারের কাছ থেকে প্রাপ্ত কিছু প্রতিক্রিয়ার কোডের বর্ণনা দেওয়া হল।

{ "message_id": "XXXX" } - success
{ "message_id": "XXXX", "registration_id": "XXXX" } - success, device registration id has been changed mainly due to app re-install
{ "error": "Unavailable" } - Server not available, resend the message
{ "error": "InvalidRegistration" } - Invalid device registration Id 
{ "error": "NotRegistered"} - Application was uninstalled from the device

4
সত্যই নয় :) পরীক্ষার উদ্দেশ্যে, আপনি 0.0.0.0/0 আইপি ব্যবহার করতে পারেন। এটা কাজ করবে।
আদনান

4
InvalidRegistration আমি API কী এবং ডিভাইস আইডি সহ (প্রতি সময় পান: ত্রুটি ""
লিয়ান্দ্রো

4
দয়া করে API KEYপরে পুনরায় জেনারেট করুন , কারণ এগুলি আপনার চাবি দেওয়া খুব নিরাপদ নয়।
ফ্ল্যাশ থান্ডার

6
আমি অননুমোদিত ত্রুটি 401 পেয়ে যাচ্ছি any কোনও ধারণা কেন?
রাজেল সোসো

4
। "ত্রুটি": "অবৈধ_ টোকেন", "ত্রুটি_ বিবরণ": "অবৈধ মান"} আমি এটি পেয়েছি। এবং অবৈধ রেজি আইডি পাচ্ছেন।
আনন্দ

159

পোস্টম্যান: একটি গুগল ক্রোম এক্সটেনশন

সার্ভারের পরিবর্তে বার্তা প্রেরণে পোস্টম্যান ব্যবহার করুন। পোস্টম্যান সেটিংস নিম্নরূপ:

Request Type: POST

URL: https://android.googleapis.com/gcm/send

Header
  Authorization  : key=your key //Google API KEY
  Content-Type : application/json

JSON (raw) :
{       
  "registration_ids":["yours"],
  "data": {
    "Hello" : "World"
  } 
}

সাফল্যে আপনি পাবেন

Response :
{
  "multicast_id": 6506103988515583000,
  "success": 1,
  "failure": 0,
  "canonical_ids": 0,
  "results": [
    {
      "message_id": "0:1432811719975865%54f79db3f9fd7ecd"
    }
  ]
}

4
আমি মনে করি এটি জিসিএম পরীক্ষার জন্য সবচেয়ে পরিষ্কার এবং নিরাপদ সমাধান। ধন্যবাদ!
বিয়ানকা ড্যানিসিক

12
আমার জন্য পোষ্ট নিয়ে কাজ করেছেন! এছাড়াও অনুমোদনের শিরোনামে "কী =" রাখতে ভুলবেন না এবং কেবল এপিআই_কেই নয়
রাফেল

4
@ রাফেল রয়ের-রিভার্ড আপনার জীবন রক্ষাকারী, আমি অনুমোদনের শিরোনামে "কী =" অনুপস্থিত ছিলাম
খুররাম শেহজাদ

4
গুগল বিকাশকারী কনসোল দিয়ে আপনি তৈরি করতে পারেন এমন কয়েকটি কী রয়েছে। আপনি যদি স্পষ্ট না হন তবে পোস্টম্যানের সাথে ব্যবহার করার জন্য আপনাকে একটি "সার্ভার কী" তৈরি করতে হবে।
লিয়াংজুন

4
এখানে "রেজিস্ট্রেশন_আইডস" কী? তাদের কোথায় পাবেন?
হিমেল নাগ রানা

19

জ্যাঙ্গো / পাইথনে আমার নিজের দ্বারা বিকাশিত অনলাইন জিসিএম এবং এপিএনএস পুশ বিজ্ঞপ্তি পরীক্ষককে পশওয়াচ বিনামূল্যে ব্যবহার করতে পারেন কারণ একাধিক প্রকল্পে কাজ করার সময় আমি নিজেকে একই পরিস্থিতিতে পেয়েছি। এটি উভয় GCMএবং APNSবিজ্ঞপ্তি প্রেরণ করতে পারে এবং অতিরিক্ত যুক্তির জন্য JSON বার্তা সমর্থন করে। নিম্নলিখিত পরীক্ষার্থীদের লিঙ্কগুলি।

আপনার যদি কোন প্রশ্ন থাকে বা এটি ব্যবহার করে সমস্যার মুখোমুখি হয় তবে আমাকে জানান know


4
আপনার ডাউনটোটটি দয়া করে ব্যাখ্যা করুন।
অ্যামিথ

4
আমার যা প্রয়োজন তা ঠিকঠাকভাবে কাজ করে (পোস্টম্যানটি চেষ্টা করে দেখল, কোন ধরণের কাজ করেছে, তবে আমার অ্যাপ্লিকেশনটি খোলার সময় আমার ডিভাইসে বার্তাটি উপস্থিত হওয়ার কারণ
ঘটেনি

হাই অ্যামিথ আমি আপনার সাইটে এই ত্রুটিটি পেয়েছি: "HTTP ত্রুটি 401: অবৈধ (উত্তরাধিকার) সার্ভার-কী সরবরাহ বা প্রেরক অনুরোধ সম্পাদনের জন্য অনুমোদিত নয়।" কি করতে হবে তা নিশ্চিত না? আমি সবেমাত্র একটি গুগল প্রকল্প তৈরি করেছি এবং প্রেরক ID এর জন্য প্রকল্প আইডি এবং প্রকল্প নম্বরটি ব্যবহার করার চেষ্টা করেছি এবং আপনার সাইটটিকে গুগল এপিআই সেটিংসে "এই এইচটিটিপি রেফারারদের (ওয়েবসাইটগুলি) থেকে অনুরোধ গ্রহণ করুন" এ যুক্ত করেছি। শুভেচ্ছা
রসমাস

নোট করুন যে এই URL টি আর সমর্থন করে না: 10 এপ্রিল, 2018 পর্যন্ত, গুগল GCM অবমূল্যায়ন করেছে re GCM সার্ভার এবং ক্লায়েন্ট API গুলি অবচিত এবং 11 এপ্রিল, 2019. যত শীঘ্রই অপসারণ করা হবে জিসিএম তথ্য
Stinky তোয়ালে রাখার জন্য কাঠের

7

পোস্টম্যান একটি ভাল সমাধান এবং পিএইচপি ফিডল। তবে প্রতিবার GCM ইউআরএল এবং শিরোনামের তথ্য এড়াতে এড়াতে আপনি এই নিফটি জিসিএম বিজ্ঞপ্তি পরীক্ষার সরঞ্জামটিও ব্যবহার করতে পারেন


4
আপনি এই অনলাইন পরীক্ষকটি ব্যবহার করতে পারেন যা অ্যান্ড্রয়েড এবং আইওএস উভয় সমর্থন করে। সরল ওয়েবসাইট পুষ্ট্রি.কম ব্যবহার করা সহজ 1. আপনার .p12 ফাইলটি নির্বাচন করুন 2. ডিভাইস টোকেন 3 প্রবেশ করুন 3. পরিবেশ স্যান্ডবক্স বা উত্পাদন নির্বাচন করুন 4. বার্তা প্রবেশ করুন 5. প্রেরণ করুন
অরবিন্দ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.