ব্যবহার না থাকা অবস্থায় হোয়াটসঅ্যাপ কীভাবে বার্তা পেতে সক্ষম?


23

আমি কৌতূহল করছি কীভাবে ব্যবহারের সময় হোয়াটসঅ্যাপ বার্তা পেতে সক্ষম হয়।

মানে, আমি বুঝতে পারি যে হোয়াটসঅ্যাপ সেলফোন নেটওয়ার্কের চেয়ে ইন্টারনেট সংযোগ ব্যবহার করে কাজ করে। কল্পনা করুন যে আমি কয়েক ঘন্টার মধ্যে আমার ফোন স্পর্শ করিনি। এই মুহুর্তে, একটি বন্ধু আমাকে হোয়াটসঅ্যাপে একটি বার্তা পাঠায়। আমি সঙ্গে সঙ্গে এটি পেতে। তার মানে কি এই যে হোয়াটসঅ্যাপ সর্বদা সংযোগ স্থাপন করে চলেছে? তার মানে কি এই যে হোয়াটসঅ্যাপ একটি সার্ভার হিসাবে কাজ করে, ফোনে পোর্ট খুলছে? অথবা একটি দীর্ঘ-চলমান এইচটিটিপি অনুরোধ?



উত্তর:


18

প্রথমে, আমি ভেবেছিলাম এটি সম্ভবত ডিভাইস বার্তাপ্রেরণের জন্য অ্যান্ড্রয়েড মেঘের উদাহরণ , তবে এটি হতে পারে না: হোয়াটসঅ্যাপ প্রয়োজনীয় অনুমতিগুলি ঘোষণা করে না এবং এটি ক্লার টু ডিভাইস মেসেজিংয়ের সময় (এক্রয়েড ২.১) কাজ করে ( এবং এর প্রতিস্থাপন, গুগল ক্লাউড মেসেজিংয়ের জন্য কমপক্ষে ফ্রয়েও (অ্যান্ড্রয়েড ২.২) প্রয়োজন।

তবে এটি বেশিরভাগ ধরণের বিজ্ঞপ্তি পরিষেবা । হোয়াটসঅ্যাপের সোর্স কোড অ্যাক্সেস না করে ঠিক কীভাবে এটি প্রয়োগ করা যায় তা বলা অসম্ভব।

এটি ব্যবহার না করা অবস্থায় বার্তা প্রাপ্ত করতে সক্ষম হওয়া অংশটি যদিও তুলনামূলকভাবে ব্যাখ্যা করা সহজ। অ্যাপ্লিকেশনটির প্রায়শই একটি পরিষেবা রয়েছে যা পর্যায়ক্রমে সার্ভারের সাথে চেক ইন করতে (বা সার্ভার পুশ, বা এটি যা কিছু করে তা গ্রহণ করে) পটভূমিতে চলে। আপনি যখন কোনও বার্তা পান, পরিষেবাটি একটি বিজ্ঞপ্তি পপ আপ করে।

সার্ভারটি কীভাবে একটি ধাক্কা দিতে পারে এমন প্রশ্নের জন্য এখানে একটি সম্ভাবনা রয়েছে (আবার, উত্স কোড ছাড়া আমি যাচাই করতে পারি না):

  1. হোয়াটসঅ্যাপ দুটি সকেট শুরু করে এবং খোলা: একটি শোনার জন্য এবং একটিতে সার্ভারে একটি বার্তা প্রেরণ।
  2. হোয়াটসঅ্যাপ প্রথম সকেটে শোনা শুরু করে।
  3. হোয়াটসঅ্যাপ সার্ভারে আপনার ফোন নম্বর এবং শ্রবণকারী সকেটের বন্দর সম্বলিত একটি বার্তা প্রেরণ করে এবং স্বীকৃতির জন্য অপেক্ষা করে।
  4. সার্ভারটি বার্তাটিতে ফোন এবং পোর্ট নম্বর এবং বার্তাটি এসেছে এমন আইপি ঠিকানা রেকর্ড করে।
  5. সার্ভারটি অ্যাপটিতে একটি স্বীকৃতি প্রেরণ করে।
  6. অ্যাপ্লিকেশনটি স্বীকৃতি গ্রহণ করে এবং বার্তা সকেটটি বন্ধ করে দেয়।
  7. গন্তব্যটি সার্ভারে আসার সাথে সাথে আপনার ফোন নম্বর সহ একটি বার্তা।
  8. সার্ভারটি আপনার ফোন নম্বরটির সাথে সম্পর্কিত আইপি ঠিকানা এবং পোর্ট নম্বর ব্যবহার করে এবং সেই তথ্যটি আপনার ফোনে বার্তাটি এগিয়ে নিতে ব্যবহার করে।

এটি কাজ করার জন্য, অ্যাপ্লিকেশনটিকে নেটওয়ার্ক সংযোগের অবস্থা পর্যবেক্ষণ করতে হবে এবং প্রয়োজনের সময় শোনার সকেটটি পুনরায় পাঠানো / নিবন্ধকরণ বার্তাটি পুনরায় পাঠাতে হবে (উদাহরণস্বরূপ আইপি ঠিকানা পরিবর্তন হলে)।


2
হোয়াটসঅ্যাপ কি প্লেস্টোর অ্যাপের উপর নির্ভর করে? উইকিপিডিয়া লিংক থেকে উদ্ধৃতি: এর জন্য অ্যান্ড্রয়েড ২.২ বা তার বেশি বর্ধমান ডিভাইসগুলির প্রয়োজন রয়েছে যা বাজার অ্যাপ্লিকেশন ইনস্টল করা আছে। সুতরাং এটি ঠিক তেমন নাও হতে পারে তবে অবশ্যই একই নীতিগুলির উপর ভিত্তি করে। ; আপনি যদিও, আপনার উত্তর আরো মূল্যবান করে তুলতে (এবং আরও অনেক কিছু upvotes গ্রহণ), নিবন্ধ এর 2nd অনুচ্ছেদ থেকে কিছু উদ্ধৃতাংশ অন্তর্ভুক্ত করতে চাইতে পারেন
Izzy

আপনি ঠিক বলেছেন, @ আইজি, আমার আরও বিশদ যুক্ত করা উচিত ছিল। যদিও আমি আমার এসজিএস 3-তে সাবওয়েতে লিখতে বসেছি তা করা কঠিন ছিল। আমি এখনই উত্তর আপডেট করেছি। :-)
ট্রেবার রুড

3
মোবাইল স্থির আইপি-তে থাকা সত্ত্বেও নাট 8 ধাপের অনুমতি দেবে না, যা কখনই হবে না। সম্ভাব্য উপায়গুলি হয় হয় এক্সএমপি বা দীর্ঘ ভোটের

1
এটির প্রয়োজনীয় অনুমতি আছে। এটি প্লে স্টোরটিতে "ইন্টারনেট থেকে ডেটা গ্রহণ করুন" হিসাবে তালিকাভুক্ত। দেখুন android.stackexchange.com/a/61794
nyuszika7h

2
দুর্ভাগ্যক্রমে, আগত টিসিপি সংযোগগুলি মোবাইল ডিভাইসে অসম্ভবের পরে রয়েছে। তাদের মধ্যে অপ্রতিরোধ্য বেশিরভাগের সার্বজনীন আইপি অ্যাড্রেস নেই এবং তারা (যেমন আইপিভি 6 সক্ষম অপারেটরগুলির জন্য) থাকলেও আগত সংযোগগুলি সাধারণত ফিল্টার করা হয়। বেশিরভাগ অ্যাপ্লিকেশন আজ হয় গুগলের পুশ পরিষেবাগুলি ব্যবহার করে বা তাদের নিজস্ব ক্রমাগত ক্লায়েন্টকে সার্ভার সকেট সংযোগে রোল করে (বিশেষত ফেসবুক)। হোয়াটসঅ্যাপ মনে হচ্ছে একটি হাইব্রিড পদ্ধতি গ্রহণ করেছে, আমার অভিজ্ঞতায়: জিসিএম পাওয়া গেলে, কয়েক মিনিটের জন্য অলস থাকার পরে অবিচলিত সকেটটি বন্ধ হয়ে যায়।
lxgr

8

আমি অবশ্যই নিশ্চিত যে হোয়াটসঅ্যাপ কোনও শ্রবণ পোর্ট খুলবে না। বেশিরভাগ আইএসপিগুলি আগত অনুরোধগুলি অবরুদ্ধ করে, এটি কাজ করবে না।

হোয়াটসঅ্যাপের একটি পরিষেবা রয়েছে। মূলত এর অর্থ হ'ল প্রযুক্তিগতভাবে আপনি কখনও হোয়াটসঅ্যাপ ছাড়েন না। সুতরাং, আপনি "চালাচ্ছেন না" হোয়াটসঅ্যাপ চলাকালীন আপনি যেভাবে বার্তাগুলি গ্রহণ করেন তা হ'ল আপনি যখন চালাচ্ছেন তখন ঠিক সেভাবেই পাবেন।

ক্লায়েন্ট, এই ক্ষেত্রে হোয়াটসঅ্যাপ সার্ভারের সাথে সংযোগ স্থাপন করে। ক্লায়েন্ট সেই সংযোগটি বজায় রাখে। যখন সার্ভারের কাছে নতুন কিছু বলার আছে, এটি এটি সেই সংযোগের মাধ্যমে ক্লায়েন্টকে প্রেরণ করে, এবং এগুলিই।

আপনার প্রথম অনুমানটি সঠিক।

হোয়াটসঅ্যাপের আসল লগ আউট প্রক্রিয়া নেই, এটি দেখুন

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


2
আপনার লিঙ্কটি নোকিয়ার জন্য - আমি তাদের সাইটে অ্যান্ড্রয়েডের জন্য অনুরূপ প্রশ্নটি খুঁজে পেতে পারিনি। আপনি কি নিশ্চিত যে অ্যান্ড্রয়েডের ক্ষেত্রেও এটি একই প্রযোজ্য? তাদের অ্যান্ড্রয়েড এফএকিউ থেকে এই প্রশ্নটি ইঙ্গিত করে যে এটি একটি পুশ আর্কিটেকচারটি ব্যবহার করে ("বার্তাগুলি কি এখনও আপনার ফোনে পৌঁছাতে খুব বেশি সময় নিচ্ছে?") বিভাগের অধীনে - ক্রমাগত সংযুক্ত সার্ভার / ক্লায়েন্টের চেয়ে।
ডিলান ইয়াগা

2
@ ডিলানাইগা সঠিক is উদাহরণস্বরূপ দেখুন এই উত্তরের শেষ অনুচ্ছেদ এবং ট্রেবরস উত্তরগুলি এখানে
ইজি

এটি সবচেয়ে যুক্তিসঙ্গত বলে মনে হয়। অনেক সময় এই পরিষেবাগুলিকে পুশ পরিষেবা বলা হয়, তবে আমি কল্পনাও করতে পারি না যে ক্লায়েন্ট একটি বন্দর খুলবে এবং বাস্তবে স্থানীয় সার্ভার হিসাবে কাজ করবে। এটি অবশ্যই সুরক্ষার সমস্যা সৃষ্টি করবে।
এসপিআরবিএনএন

1

তাদের প্রায়শই জিজ্ঞাসিত প্রশ্নাবলীর সাহায্যে তারা GCM ব্যবহার করে। "বার্তাগুলি কি এখনও আপনার ফোনে পৌঁছাতে খুব বেশি সময় নিচ্ছে?" এর উত্তরটি পরীক্ষা করে দেখুন?


আপনি ঠিক বলেছেন যে এফএইউএর পরামর্শ দেয়, কিন্তু ট্রেবর রুড উল্লেখ করেছেন যে অ্যাপ্লিকেশনটির প্রয়োজনীয় অনুমতি নেই, তাই তারা নিজেও জিসিএম ব্যবহার করতে পারবেন না।
ড্যান হাল্মে

2
এটির প্রয়োজনীয় অনুমতি আছে। এটি প্লে স্টোরটিতে "ইন্টারনেট থেকে ডেটা গ্রহণ করুন" হিসাবে তালিকাভুক্ত। দেখুন android.stackexchange.com/a/61794
nyuszika7h

2
আমি যা দেখেছি তা থেকে, তারা যদি জিসিএম উপলব্ধ থাকে তবে তা ব্যবহার করে। যদি এটি কোনও কারণে অনুপলব্ধ থাকে (যেমন প্লে পরিষেবাদি ব্যতীত কোনও ডিভাইসে বা নেটওয়ার্ক দ্বারা ফিল্টার করা হয়), সকেটটি অনির্দিষ্টকালের জন্য রাখা হয়।
lxgr

0

অন্যান্য অ্যাপ্লিকেশনগুলির মতো হোয়াটসঅ্যাপ পরিষেবা হিসাবে চালিত হয় always (আপনি সর্বদা সংযুক্ত থাকবেন) আপনাকে প্রেরিত বার্তাগুলি 30 দিনের জন্য হোয়াটসঅ্যাপ সার্ভারে সঞ্চিত থাকে, সেই সময়ের মধ্যে আপনার হোয়াটসঅ্যাপটি বার্তাটি প্রাপ্তি এবং স্বীকৃতি জানাতে সক্রিয় থাকতে হবে। পৃথক অ্যাকাউন্টগুলি ব্যবহারকারীর ফোন নম্বর @ হোয়াটসঅ্যাপটনে সংরক্ষণ করা হয়


1
30 দিনের । দয়া করে সেই
সত্যটির

0

আমি মনে করি এটি এর মতো হওয়া উচিত:

যখন হোয়াটসঅ্যাপ নতুন ছিল, এটি পিএনএস ভিত্তিক সমাধান ব্যবহার করত, এই পিএনএসটি কেবল ডিভাইসটি জাগিয়ে তুলবে এবং একবার এটি জেগে উঠলে, এটি হোয়াটসঅ্যাপ সার্ভারের সাথে সকেট সংযোগ তৈরি করতে পারে।

হোয়াটসঅ্যাপ জনপ্রিয় হওয়ার পরে এখন বেশিরভাগ ডিভাইসগুলি এর নেটিভ অ্যাপ্লিকেশন এবং নেটিভ অ্যাপ্লিকেশন হিসাবে আসে killed আমার স্যামসং এস 8 এ আমি হোয়াটসঅ্যাপ আনইনস্টল করতে পারি না, পাওয়ার সেভিং মোড এটি মারতে পারে না

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.