International Journal of Innovative and Emerging Research in Engineering Volume 3, Issue 2, 2016 Available online at www.ijiere.com International Journal of Innovative and Emerging Research in Engineering e-ISSN: 2394 – 3343 p-ISSN: 2394 – 5494

Google Cloud Messaging (GCM) I. Miss. Sana Ismail Khan, II.Prof. Y. S. Patil I. Third Year of Engineering, Student, II. Asstt. Professor. I, II Department of Computer Science & Engineering, Hindi Seva Mandal’s, Shri Sant Gadge Baba College of Engineering & Technology, Bhusawal - 425203, Dist. – Jalgaon, Maharashtra, India

ABSTRACT: Today Android is widely used for smart phones; it is used as personal computer also. It contains a touch screen , camera and network monitoring. The entire feature provides ability to cell phone to become a . Basically, most of chat application allow user to send instant and provide a way to sharing image also. The main purpose of this paper is to proposed a methodology to provide instant messaging over Google Cloud Messaging (GCM) and also we presents a survey on timing performance of GCM, our findings that the message delivery is uncertain , it does not guarantee to timely message arrival. Therefore is not applicable for time sensitive, but it may be good for application scenarios where random multicasting is sufficient. Keywords: Instant messaging, GCM, Timing performance of GCM

I. INTRODUCTION A. Instant messaging: The instant messaging application allows users to register to the system in order to use the application. After users has log in into the system, then the user can add another registered users to be their friends. The user can then sends or receive a message while the friend is on-line [1],[2],[3]. A MySQL is used as a backbone to store the information about users. The Instant Messaging Application uses Client/Server architecture. The database and web server are on the same machine or it can also be hosted on different machines. The client can run the application in any other computer, communicate with the server via the network. This paper will help to learn Android device to device messaging (Instant Messaging) using Google Cloud Messaging (GCM). Communication flow arises from an Android device and the message to be communicated will be sent to GCM application server. From that server the message will be transfer to the Google Cloud Messaging server with the RegId of the device to send the notification. Then this message will be sent to another Android device by the Google Cloud Messaging server as a notification.

Fig.1. Android to Android instant messaging [2]. 64

International Journal of Innovative and Emerging Research in Engineering Volume 3, Issue 2, 2016 B. Google Cloud Messaging GCM is a service that facilitates messaging between mobile apps and server applications. It allows developers to send push messages to android device from the server. Google Cloud Messaging is a popular service as a client/server communication solution for android platform [8],[9]. Nowadays most of the smart phones run Android operation system; Android extended its domain to wearable device. Both the platforms use GCM for central notifications.

Fig.2. GCM [4] GCM control the queuing of the messages also delivering those messages to the target applications. The GCM is a free service developed by Google. It is a default push messaging solution for android system. In this paper, we represent a survey on GCM message arrival times in order to investigate the real-time properties of GCM. Our target is to provide a better understanding of this widely used service. It is also essential to understand the real- time properties of GCM for researchers working on mobile systems such as crowd sourcing, question answering and other real-time systems. GCM does not indicate any time guarantee in its documentation. However there is a need to reveal the GCM message delivery performance to caution developers and researchers from over-relying on GCM (by assuming it is fast and reliable for all cases). We evaluate GCM in real world experiments, and at a reasonable scale involving thousands of real users. Our authors evaluate GCM in real life experiment, and at a reasonable scale involving thousands of real users [1],[2],[3],[11]. Their contributions in this work are as follows:

. To the best of their knowledge, they provide the first comprehensive GCM evaluation for a variety of real _world experiment, as like offline and online experiments which are elaborated based on the type of connection (WIFI, or Cellular data) and the data service providers. . Their experiment involves thousands of real users, and the results let researchers make supervised decision on GCM is suitable for their intended use case. . They show that GCM delivers the push notification to a large portion of the subscribers (more than 40% in experiment) in a reasonable timeframe (in sec). They conclude that GCM is not suitable for Time sensitive.

The GCM falls short for delivering push notification to all users in a timeframe. However the GCM message arrival latency is unpredictable even when the device is connected to server of GCM. This indicates that GCM is not suitable time _sensitive app such as instant messaging etc. On the other side GCM delivers the message to a large portion of the users (80%in online and 40% offline experiment). But it may be good for application scenario where random multicasting is sufficient.

II. Related Work Nowadays, all android mobiles supports push message notification services. There is still ongoing work to optimize subscribe model for developing mobile technology. For example, Mobius [11] from Yahoo! Research uses caching and makes more efficient use of ad hoc hardware for that purpose. Mobile Push [9] represents a design for an internet-scale system that supports mobile devices connected to wireless LAN as well as GPRS network, and in [7], authors present an evaluation of their mobile publish/subscribe setting. To the best of our knowledge, only one retrospective study evaluates the performance of the push notification services for popular mobile operating systems [11]. In this work, the performance of Android Cloud to Device Messaging (C2DM) is compared to some other push notification services which are configurable to work with Android clients. Their findings reveal that, cloud to device C2DM gets around 4 to 6 seconds response time given that the device which receives the push notification initiates the message, i.e. the push notification bounces back to the same device. Therefore, their results are limited to periodic notifications to a single device, and lacks comparative performance analysis of mass push notifications.

III. CrowdReply In this part we represent the architecture of Crowdreplay. It enables the audience to watching a Show on the TV to play along on their Android smart phones in real-time. We targeted that the audience due to the high popularity of the TV show there. Their app has been installed more than 311,000 times [12]. The game enables us to build a large-scale crowdsourcing data set. Using this data, we test several crowdsourcing algorithms in real life, and we also evaluate the GCM performance in real world experiments. The architecture of the CrowdReply is shown in Figure 3. CrowdReply consists of two important

65

International Journal of Innovative and Emerging Research in Engineering Volume 3, Issue 2, 2016 components, a mobile side for presenting the questions to the users and letting them answer the questions which is ask in a TV show.

Fig.3. CrowdReplay System Architecture [11].

In this a server side for typing and dispatching the questions, collecting the answers, and providing useful statistics. In This paper, we evaluate the timing performance of GCM. a. GCM Messages in CrowdReplay In TV game show, the questions appear on the TV in random moments. Because of this, CrowdReply uses push messages to send the questions, alternatively the client device polling the questions from the server. This design lets CrowdReply use the connection only when there is a new question, and it delegates the data pushing job to GCM in order to resolve any scalability issues CrowdReply might conflict.

Table 1.GCM Message types [11]

Message type Action Target B Begin the game All users E End the game All users Q Send question Online users S Send statics/Answers Online users T Time synchronization All users

This Table 1 shows the types of the GCM messages which CrowdReply defines and uses. At the start of the TV show, CrowdReply sends a GCM message of type B which lets all the registered devices know that the game is started. When a game is started and a participant decided to play, the app notifies the server to receive the questions. If a participant is not online then CrowdReply does not send the questions to her/him device in order to reduce both the workload on the server side and to save energy on the offline devices. During the game, CrowdReply sends message of type Q, which includes the question, whenever the question appears on the TV screen and our project members type it. The client app passes the message upon arrival and updates the user interface. Type S message is sent when a question is answered on the TV, and it exist the correct answer. Type E message define the participant devices that the TV show and thus the game is ended. Finally, type T message is designed to synchronize the local time of the client devices with the server side in order to have precise timestamps in CrowdReply system. b. GCM Data Collection Here we explain how we collected the time data in our experiments. We leverage our time synchronization mechanism (i.e. GCM message type T) to collect our data on the GCM message arrival times. To calculate precise times, we use network time protocol (NTP) 1 [13]. The GCM message arrival time is defined as the difference between the time the GCM message is initiated from our servers, and the time the client device receives that message. Therefore, in our type GCM message flow, the difference between the server NTP time of the message initiation, and the client NTP time of the message arrival gives us precise GCM message arrival time for each device. The client devices bounce-back to our type T message with message arrival NTP timestamp, and we calculate per device GCM message arrival times in our server. We evaluate these arrival times to elaborate how GCM performs. We also record the network connection type (Wi-Fi or cellular data) of the client devices as well as the cellular service provider in order to test the effects of the connection type and the data service provider.

66

International Journal of Innovative and Emerging Research in Engineering Volume 3, Issue 2, 2016 IV. Future Scope In Future, if the GCM increases its properties also give the guarantee that timely arrival message, then its scope will be too high. Most of the run Android os and over all Android system uses GCM for send a push message one Android system to another, but the GCM not sure about to timely arrival messages so that it is not suitable for Time Short- lived messages. It also has an ability to work with GPS system to Track any Vehicles by using Google Map. For example, nowadays lots of people travels through travel agency vehicles and access their services. The problem that appear is the user as well as the owner of travel agency don’t have the exact information of the vehicle that mean the exact position of vehicle. It uses GPS to track any vehicles and GCM used to transfer of location information and third person App Server to temporary store the location. In future the system will be developed that will show the current location of the vehicles to the user on the basis of the location information sent by the GPS device through GCM.

V. Advantages of GCM  Developers can develop more productive Apps with the help of GCM.  GCM is connected with Cloud so that Developer can get benefits of cloud computing in their Apps.  GCM is also connected with GAE ().  GCM for Android increases battery efficiency.  Also can send a message of up to 4Kb to an application on an Android device.

VI. Conclusion We analyses the timing performance of Google Cloud Messaging (GCM). Our results indicate that GCM is not suitable for short-lived application scenarios. Moreover, the GCM message arrival latency is uncertain, namely having a stable connection to Google’s GCM servers on the device of client does not sure to a timely message arrival. While GCM performs relatively well in our online experiment scenario, not all the devices receive the GCM messages in a timely fashion. Hence, GCM may be a good for the application scenarios where random multicasting is necessary, However, GCM is not a good fit for the applications where the broadcasting is mission critical, i.e. the message arrival to all client devices is essential, such as emergency alert system, fire alert systems, instant messaging apps, disaster alert system etc.

ACKNOWLEDGMENT I would like to thank our honorable Principal, Dr. R. P. Singh, our Head of Department, Prof. D. D. Patil, my special thanks to my guide, Prof. Y. S. Patil & sincere thanks to all the respected teaching faculties of Department of Computer Science & Engineering of Hindi Seva Mandal’s, Shri Sant Gadge Baba College of Engineering & Technology, Bhusawal. My special thanks to all the writers of reference paper that are referred by us.

REFERENCES [1] Qi Lai, Mao Zheng and Tom Gendreau, “An Android based instant message Application”, 2012. Available: www.micsymposium.org [2] http://javapapers.com/android/android-device-to-device-messaging-using-google-cloud-messaging-gcm-via- http/ [3] https://cloud.google.com/tools/android-studio/messaging/ [4] www.google.com [5] “Google Cloud Messaging for Android— Android Developers.”[Online]. Available: http://developer.android.com/google/gcm/index.html [6] B. I. Aydin, Y. S. Yilmaz, M. F. Bulut, and M. Demirbas, “Crowdreply: A crowdsourced multiple choice question answering system,” ACM/IEEE IPSN ’13 3rd International Workshop on Mobile Sensing: The Future, brought to you by Big Sensor Data, 2013. [7] “Local and Push Notification Programming Guide: Apple Push Notification Service.” [Online]. Available:http://developer.apple.com/library/mac/n#documentation/NetworkingInternet/Conceptul/ RemoteNotificationsPG/ApplePushService/ApplePushService.html [8] “Push Notifications for Windows Phone.” [Online]. Available: http://msdn.microsoft.com/en- us/library/ff402537(v=VS.92).aspx [9] “Push Service_ BlackBerry Developer.” [Online]. Available: https: //developer.blackberry.com/services/push/?CPID=PUSHAPI00 [10] “Avea,” http://www.avea.com.tr, [Online]. [11] M. F. Bulut, Y. S. Yilmaz, and M. Demirbas, “Crowdsourcing locationbased queries,” in PerCom Workshops, 2011, pp. 513–518. [12] Xmpp standards foundation,” http://xmpp.org, [Online]. [13] “Mqtt: Message queue telemetry transport,” http://www.mqtt.org. [14] M. F. Bulut, Y. S. Yilmaz, and M. Demirbas, “Crowdsourcing location based queries,” in PerCom Workshops, 2011, pp. 513–518. [15] M. F. Bulut, Y. S. Yilmaz, M. Demirbas, N. Ferhatosmanoglu, and H. Ferhatosmanoglu, “Lineking: Crowdsourced line wait-time estimation using smartphones,” in MobiCASE, 2012, pp. 205–224.

67