This document discusses push notifications for Android applications. It describes how polling frequently to check for updates can drain a device's battery. The Android Cloud to Device Messaging (C2DM) API makes it easy for applications to use push notifications instead of polling. With C2DM, servers can send lightweight messages to Android apps through Google's infrastructure. When a message is received, the app is notified through a broadcast intent and can update from the cloud without polling. The document provides an overview of registering apps for C2DM, sending messages from servers, and receiving them on Android devices.
REST is not enough: Using Push Notifications to better support your mobile cl...Juan Gomez
This talk will introduce you to Push Notifications, a very powerful way for your Python service to communicate information to mobile devices. You will learn how Push Notifications work, their advantages and disadvantages and how you can implement them on your Python projects.
Mobile: for push and sync. Goes through implementing push notifications with PHP on the various 4 major players: Android (C2DM), Apple (APNS), Windows Phone (MPNS), BlackBerry (maybe works?).
Presentation on sending push notifications with Zend Framework based on work to create Zend_Mobile_Push. Currently handles APNs (iPhone/iPad/iTouch), C2DM (Android) and MPNS (Windows Mobile). Additionally mentions of sending push notifications with WAP PAP (BlackBerry).
Amazon Lumberyard: end-to-end solutions for game developersDevGAMM Conference
Mike Hines is an evangelist for Amazon's game services. Amazon Lumberyard is a free game engine that provides tools for building connected games using Amazon Web Services. It offers features like live multiplayer, cloud integration, and Twitch streaming support. Amazon aims to be the most game developer-centric company by providing end-to-end solutions across tools, platforms, and services.
Your Guide to Push Notifications - Comparing GCM & APNS Sparkbit
Learn more about the basic concept of push notification and its current implementations. See the difference between Apple Push Notifications and Google Cloud Messaging.
Addressing the scalability challenge of server sent events presentationcdmalord
This document discusses scaling server-sent events (SSE), also known as long polling. It describes how long polling works but can be challenging to scale at the origin server. The document proposes offloading long polling connections to a content delivery network (CDN) using a publish-subscribe model with tokens to emulate server push at scale. This allows the CDN to handle the long-lived connections instead of the origin server. The document provides examples of how a CDN could implement this using common CDN features like request routing and caching.
Let's Get Real (time): Server-Sent Events, WebSockets and WebRTC for the soulSwanand Pagnis
A guided tour of modern browser networking. We'll look at SSEs, WebSockets and WebRTC and see how to integrate them in your Ruby based app.
( This slides accompanied my talk at RubyConf India, 2014 0
REST is not enough: Using Push Notifications to better support your mobile cl...Juan Gomez
This talk will introduce you to Push Notifications, a very powerful way for your Python service to communicate information to mobile devices. You will learn how Push Notifications work, their advantages and disadvantages and how you can implement them on your Python projects.
Mobile: for push and sync. Goes through implementing push notifications with PHP on the various 4 major players: Android (C2DM), Apple (APNS), Windows Phone (MPNS), BlackBerry (maybe works?).
Presentation on sending push notifications with Zend Framework based on work to create Zend_Mobile_Push. Currently handles APNs (iPhone/iPad/iTouch), C2DM (Android) and MPNS (Windows Mobile). Additionally mentions of sending push notifications with WAP PAP (BlackBerry).
Amazon Lumberyard: end-to-end solutions for game developersDevGAMM Conference
Mike Hines is an evangelist for Amazon's game services. Amazon Lumberyard is a free game engine that provides tools for building connected games using Amazon Web Services. It offers features like live multiplayer, cloud integration, and Twitch streaming support. Amazon aims to be the most game developer-centric company by providing end-to-end solutions across tools, platforms, and services.
Your Guide to Push Notifications - Comparing GCM & APNS Sparkbit
Learn more about the basic concept of push notification and its current implementations. See the difference between Apple Push Notifications and Google Cloud Messaging.
Addressing the scalability challenge of server sent events presentationcdmalord
This document discusses scaling server-sent events (SSE), also known as long polling. It describes how long polling works but can be challenging to scale at the origin server. The document proposes offloading long polling connections to a content delivery network (CDN) using a publish-subscribe model with tokens to emulate server push at scale. This allows the CDN to handle the long-lived connections instead of the origin server. The document provides examples of how a CDN could implement this using common CDN features like request routing and caching.
Let's Get Real (time): Server-Sent Events, WebSockets and WebRTC for the soulSwanand Pagnis
A guided tour of modern browser networking. We'll look at SSEs, WebSockets and WebRTC and see how to integrate them in your Ruby based app.
( This slides accompanied my talk at RubyConf India, 2014 0
This document provides an overview of Google Cloud Messaging (GCM), a service that allows servers to send messages to Android applications. It discusses how GCM works and its advantages over previous notification methods like C2DM and polling. GCM uses an existing connection to Google services to deliver lightweight messages from application servers to Android devices even if the application is not active. This reduces network usage and improves battery life compared to periodic polling. The document outlines the three components of GCM - the mobile device, application server, and GCM servers - and how a message is sent from the server and delivered by GCM to the target application.
Accelerrate your PaaS to the Mobile WorldRyan Campbell
Ryan Campbell presented on accelerating PaaS to the mobile world. He discussed what a PaaS is and how CloudBees provides a PaaS with managed infrastructure and a Jenkins CI environment. He demonstrated mobile push notifications for Android using CloudBees, WEAVE, and Google Cloud Messaging. He also showed iOS builds in the cloud using CloudBees and Xcode plugins.
This document describes the system architecture and modules of a smart home system called MyHome. The key modules are:
1. Hardware sensors and actuators that communicate wirelessly with the Central Unit and can turn lights on/off, detect motion, etc.
2. A Central Unit (Raspberry Pi) that communicates with the sensors/actuators via XBee, stores data in the cloud database, and receives commands from the mobile app.
3. A cloud database implemented with Google App Engine that stores home/device data and allows communication between the Central Unit and mobile app.
4. An Android mobile app that users can use to monitor cameras, control lights, and view the state of
Google Cloud Messaging (GCM) is a service that allows sending of push notifications from servers to Android devices. It uses an ID received during registration to send notifications even if the app is not active. Notifications are delivered near real-time with low battery usage. GCM requires Android 2.2+, Google Play Services, and a Google account on older devices. Developers must register their app project, get an API key, and handle registration and receiving of notifications within their app.
This document discusses push notifications and Android Cloud to Device Messaging (C2DM). It explains that C2DM allows servers to send lightweight messages to Android apps even when the apps are not actively running. The document provides steps for apps to register with C2DM, receive registration IDs, get messages, and handle the messages within the app. Code snippets demonstrate integrating C2DM into the Android manifest and implementing a C2DM receiver.
This document discusses push notifications and Android Cloud to Device Messaging (C2DM). It provides an overview of push technology, how C2DM works on Android including the registration process, receiving messages, and implementing C2DM in an Android app. Code snippets are provided showing how to register a device, receive messages and IDs, and configure the Android manifest for C2DM.
Leveraging Zend Framework for Sending Push NotificationsMike Willbanks
Mike Willbanks gave a presentation on leveraging Zend Framework for push notifications. He discussed the benefits of push notifications over polling for mobile apps and provided overviews of push notification services for Android (C2DM), Apple (APNS), and Microsoft (MPNS). He demonstrated how to implement push notifications in mobile apps and servers using the Zend_Mobile_Push component of Zend Framework. BlackBerry push was also briefly discussed though support is not fully implemented. The presentation concluded with questions.
Android C2DM Presentation at O'Reilly AndroidOpen ConferenceLars Vogel
This document discusses push notifications on Android using Google Cloud to Device Messaging (C2DM). It explains that polling for updates consumes more battery life than push notifications, which allow a server to push new data to a device. The key components needed for C2DM are an Android app, Google's C2DM server, and an application server. It also discusses using Google App Engine to build the application server.
This document discusses push notifications and cloud-to-device messaging on Android. It explains that push technology allows a server to initiate requests to send lightweight messages to Android apps even when the app is not active. The document outlines the steps to implement push notifications in an Android app using Google Cloud Messaging (GCM), including registering the app to receive messages, receiving and handling messages in a BroadcastReceiver, and sending messages from a server. It provides code samples and discusses considerations like reducing data usage and battery consumption.
Powering your Apps via Google Cloud PlatformRomin Irani
Presentation at Google DevFest Ahmedabad, December 2014. This talk gives an overview of Google Cloud Platform and then goes into Cloud Endpoints and building out a simple IoT Project
Prepare and Manage Remote Applications through Virtualization Rubal Sagwal
Prepare and manage remote applications:
-Configuring application sharing
-Package applications for deployment by using RemoteApp
-Installing and configuring the RD Session Host Role Service on the server
Introduction to google cloud messaging in androidRIA RUI Society
Google Cloud Messaging (GCM) allows developers to send data from servers to Android apps without needing the app to be running. It handles queuing messages and delivery to devices. The key benefits are ease of use, no sign-up forms, battery efficiency, and rich APIs. Implementing GCM involves adding required libraries, modifying the app manifest, writing an IntentService to handle messages, adding a broadcast receiver, and registering from the main activity. The server sends messages to GCM servers which queue and store messages, then delivering them to devices when online.
This document discusses Android security and hacking techniques. It covers the Android architecture including its use of Linux kernels and Java libraries. It describes Android's permission model and how apps are sandboxed. It discusses techniques for hacking Android like rooting devices, decompiling apps, intercepting network traffic, and exploiting intents. It also covers ways attackers can leak information and how to mitigate security risks.
Google Cloud Messaging (GCM) is a service that allows servers to send messages to Android applications. It is a replacement for an older service called C2DM that had limitations. GCM handles message delivery more efficiently by using existing Google services and allows for features like message multicasting to multiple devices, multiple senders, messages with payloads, and setting time to live for messages. Developers can use GCM to more easily send various types of messages and updates to Android applications from their servers without frequent syncing.
4Developers 2018: Zero-Downtime deployments with Kubernetes (Mateusz Dymiński)PROIDEA
W prezentacji postaram się pokazać kilka technik, dzięki którym końcowy użytkownik naszej aplikacji nie zorientuje się, że właśnie wykonaliśmy deployment, a wersja, której używa właśnie się zmieniła. Niektóre z nich będą dotyczyły stricte aplikacji(przykłady w Go i Javie), a część będzie związana z platformą Kubernetes.
A presentation on client server application that can send free message between the users. We used GCM (Google Cloud Messaging) API for sending message.
Google Cloud Messaging (GCM) is a service that allows servers to send messages to Android devices. It handles message delivery and requires minimal battery consumption compared to regular polling. To use GCM, an Android app registers with the GCM server to receive a registration ID and the server sends messages addressed to that ID. When a device receives a message, the GCM service passes the data to the Android app via a intent. GCM supports unlimited messaging at no cost.
A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)Chinnayya Math
A simple solution for the cloud application. A solution which address many real life problems. Easy to adopt,use and maintain. A cost effective solution for everyone.
FOSS STHLM Android Cloud to Device MessagingJohan Nilsson
The Android Cloud to Device Messaging framework allows third-party servers to send lightweight messages to Android applications. It uses existing Google services connections to deliver messages even if the app is not active. Developers must integrate intent receivers and services, register apps with Google, and implement messaging on the server side using registration IDs and authorization tokens.
This presentation provides valuable insights into effective cost-saving techniques on AWS. Learn how to optimize your AWS resources by rightsizing, increasing elasticity, picking the right storage class, and choosing the best pricing model. Additionally, discover essential governance mechanisms to ensure continuous cost efficiency. Whether you are new to AWS or an experienced user, this presentation provides clear and practical tips to help you reduce your cloud costs and get the most out of your budget.
This document provides an overview of Google Cloud Messaging (GCM), a service that allows servers to send messages to Android applications. It discusses how GCM works and its advantages over previous notification methods like C2DM and polling. GCM uses an existing connection to Google services to deliver lightweight messages from application servers to Android devices even if the application is not active. This reduces network usage and improves battery life compared to periodic polling. The document outlines the three components of GCM - the mobile device, application server, and GCM servers - and how a message is sent from the server and delivered by GCM to the target application.
Accelerrate your PaaS to the Mobile WorldRyan Campbell
Ryan Campbell presented on accelerating PaaS to the mobile world. He discussed what a PaaS is and how CloudBees provides a PaaS with managed infrastructure and a Jenkins CI environment. He demonstrated mobile push notifications for Android using CloudBees, WEAVE, and Google Cloud Messaging. He also showed iOS builds in the cloud using CloudBees and Xcode plugins.
This document describes the system architecture and modules of a smart home system called MyHome. The key modules are:
1. Hardware sensors and actuators that communicate wirelessly with the Central Unit and can turn lights on/off, detect motion, etc.
2. A Central Unit (Raspberry Pi) that communicates with the sensors/actuators via XBee, stores data in the cloud database, and receives commands from the mobile app.
3. A cloud database implemented with Google App Engine that stores home/device data and allows communication between the Central Unit and mobile app.
4. An Android mobile app that users can use to monitor cameras, control lights, and view the state of
Google Cloud Messaging (GCM) is a service that allows sending of push notifications from servers to Android devices. It uses an ID received during registration to send notifications even if the app is not active. Notifications are delivered near real-time with low battery usage. GCM requires Android 2.2+, Google Play Services, and a Google account on older devices. Developers must register their app project, get an API key, and handle registration and receiving of notifications within their app.
This document discusses push notifications and Android Cloud to Device Messaging (C2DM). It explains that C2DM allows servers to send lightweight messages to Android apps even when the apps are not actively running. The document provides steps for apps to register with C2DM, receive registration IDs, get messages, and handle the messages within the app. Code snippets demonstrate integrating C2DM into the Android manifest and implementing a C2DM receiver.
This document discusses push notifications and Android Cloud to Device Messaging (C2DM). It provides an overview of push technology, how C2DM works on Android including the registration process, receiving messages, and implementing C2DM in an Android app. Code snippets are provided showing how to register a device, receive messages and IDs, and configure the Android manifest for C2DM.
Leveraging Zend Framework for Sending Push NotificationsMike Willbanks
Mike Willbanks gave a presentation on leveraging Zend Framework for push notifications. He discussed the benefits of push notifications over polling for mobile apps and provided overviews of push notification services for Android (C2DM), Apple (APNS), and Microsoft (MPNS). He demonstrated how to implement push notifications in mobile apps and servers using the Zend_Mobile_Push component of Zend Framework. BlackBerry push was also briefly discussed though support is not fully implemented. The presentation concluded with questions.
Android C2DM Presentation at O'Reilly AndroidOpen ConferenceLars Vogel
This document discusses push notifications on Android using Google Cloud to Device Messaging (C2DM). It explains that polling for updates consumes more battery life than push notifications, which allow a server to push new data to a device. The key components needed for C2DM are an Android app, Google's C2DM server, and an application server. It also discusses using Google App Engine to build the application server.
This document discusses push notifications and cloud-to-device messaging on Android. It explains that push technology allows a server to initiate requests to send lightweight messages to Android apps even when the app is not active. The document outlines the steps to implement push notifications in an Android app using Google Cloud Messaging (GCM), including registering the app to receive messages, receiving and handling messages in a BroadcastReceiver, and sending messages from a server. It provides code samples and discusses considerations like reducing data usage and battery consumption.
Powering your Apps via Google Cloud PlatformRomin Irani
Presentation at Google DevFest Ahmedabad, December 2014. This talk gives an overview of Google Cloud Platform and then goes into Cloud Endpoints and building out a simple IoT Project
Prepare and Manage Remote Applications through Virtualization Rubal Sagwal
Prepare and manage remote applications:
-Configuring application sharing
-Package applications for deployment by using RemoteApp
-Installing and configuring the RD Session Host Role Service on the server
Introduction to google cloud messaging in androidRIA RUI Society
Google Cloud Messaging (GCM) allows developers to send data from servers to Android apps without needing the app to be running. It handles queuing messages and delivery to devices. The key benefits are ease of use, no sign-up forms, battery efficiency, and rich APIs. Implementing GCM involves adding required libraries, modifying the app manifest, writing an IntentService to handle messages, adding a broadcast receiver, and registering from the main activity. The server sends messages to GCM servers which queue and store messages, then delivering them to devices when online.
This document discusses Android security and hacking techniques. It covers the Android architecture including its use of Linux kernels and Java libraries. It describes Android's permission model and how apps are sandboxed. It discusses techniques for hacking Android like rooting devices, decompiling apps, intercepting network traffic, and exploiting intents. It also covers ways attackers can leak information and how to mitigate security risks.
Google Cloud Messaging (GCM) is a service that allows servers to send messages to Android applications. It is a replacement for an older service called C2DM that had limitations. GCM handles message delivery more efficiently by using existing Google services and allows for features like message multicasting to multiple devices, multiple senders, messages with payloads, and setting time to live for messages. Developers can use GCM to more easily send various types of messages and updates to Android applications from their servers without frequent syncing.
4Developers 2018: Zero-Downtime deployments with Kubernetes (Mateusz Dymiński)PROIDEA
W prezentacji postaram się pokazać kilka technik, dzięki którym końcowy użytkownik naszej aplikacji nie zorientuje się, że właśnie wykonaliśmy deployment, a wersja, której używa właśnie się zmieniła. Niektóre z nich będą dotyczyły stricte aplikacji(przykłady w Go i Javie), a część będzie związana z platformą Kubernetes.
A presentation on client server application that can send free message between the users. We used GCM (Google Cloud Messaging) API for sending message.
Google Cloud Messaging (GCM) is a service that allows servers to send messages to Android devices. It handles message delivery and requires minimal battery consumption compared to regular polling. To use GCM, an Android app registers with the GCM server to receive a registration ID and the server sends messages addressed to that ID. When a device receives a message, the GCM service passes the data to the Android app via a intent. GCM supports unlimited messaging at no cost.
A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)Chinnayya Math
A simple solution for the cloud application. A solution which address many real life problems. Easy to adopt,use and maintain. A cost effective solution for everyone.
FOSS STHLM Android Cloud to Device MessagingJohan Nilsson
The Android Cloud to Device Messaging framework allows third-party servers to send lightweight messages to Android applications. It uses existing Google services connections to deliver messages even if the app is not active. Developers must integrate intent receivers and services, register apps with Google, and implement messaging on the server side using registration IDs and authorization tokens.
This presentation provides valuable insights into effective cost-saving techniques on AWS. Learn how to optimize your AWS resources by rightsizing, increasing elasticity, picking the right storage class, and choosing the best pricing model. Additionally, discover essential governance mechanisms to ensure continuous cost efficiency. Whether you are new to AWS or an experienced user, this presentation provides clear and practical tips to help you reduce your cloud costs and get the most out of your budget.
Trusted Execution Environment for Decentralized Process MiningLucaBarbaro3
Presentation of the paper "Trusted Execution Environment for Decentralized Process Mining" given during the CAiSE 2024 Conference in Cyprus on June 7, 2024.
Ivanti’s Patch Tuesday breakdown goes beyond patching your applications and brings you the intelligence and guidance needed to prioritize where to focus your attention first. Catch early analysis on our Ivanti blog, then join industry expert Chris Goettl for the Patch Tuesday Webinar Event. There we’ll do a deep dive into each of the bulletins and give guidance on the risks associated with the newly-identified vulnerabilities.
A Comprehensive Guide to DeFi Development Services in 2024Intelisync
DeFi represents a paradigm shift in the financial industry. Instead of relying on traditional, centralized institutions like banks, DeFi leverages blockchain technology to create a decentralized network of financial services. This means that financial transactions can occur directly between parties, without intermediaries, using smart contracts on platforms like Ethereum.
In 2024, we are witnessing an explosion of new DeFi projects and protocols, each pushing the boundaries of what’s possible in finance.
In summary, DeFi in 2024 is not just a trend; it’s a revolution that democratizes finance, enhances security and transparency, and fosters continuous innovation. As we proceed through this presentation, we'll explore the various components and services of DeFi in detail, shedding light on how they are transforming the financial landscape.
At Intelisync, we specialize in providing comprehensive DeFi development services tailored to meet the unique needs of our clients. From smart contract development to dApp creation and security audits, we ensure that your DeFi project is built with innovation, security, and scalability in mind. Trust Intelisync to guide you through the intricate landscape of decentralized finance and unlock the full potential of blockchain technology.
Ready to take your DeFi project to the next level? Partner with Intelisync for expert DeFi development services today!
Generating privacy-protected synthetic data using Secludy and MilvusZilliz
During this demo, the founders of Secludy will demonstrate how their system utilizes Milvus to store and manipulate embeddings for generating privacy-protected synthetic data. Their approach not only maintains the confidentiality of the original data but also enhances the utility and scalability of LLMs under privacy constraints. Attendees, including machine learning engineers, data scientists, and data managers, will witness first-hand how Secludy's integration with Milvus empowers organizations to harness the power of LLMs securely and efficiently.
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on integration of Salesforce with Bonterra Impact Management.
Interested in deploying an integration with Salesforce for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Skybuffer SAM4U tool for SAP license adoptionTatiana Kojar
Manage and optimize your license adoption and consumption with SAM4U, an SAP free customer software asset management tool.
SAM4U, an SAP complimentary software asset management tool for customers, delivers a detailed and well-structured overview of license inventory and usage with a user-friendly interface. We offer a hosted, cost-effective, and performance-optimized SAM4U setup in the Skybuffer Cloud environment. You retain ownership of the system and data, while we manage the ABAP 7.58 infrastructure, ensuring fixed Total Cost of Ownership (TCO) and exceptional services through the SAP Fiori interface.
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Tatiana Kojar
Skybuffer AI, built on the robust SAP Business Technology Platform (SAP BTP), is the latest and most advanced version of our AI development, reaffirming our commitment to delivering top-tier AI solutions. Skybuffer AI harnesses all the innovative capabilities of the SAP BTP in the AI domain, from Conversational AI to cutting-edge Generative AI and Retrieval-Augmented Generation (RAG). It also helps SAP customers safeguard their investments into SAP Conversational AI and ensure a seamless, one-click transition to SAP Business AI.
With Skybuffer AI, various AI models can be integrated into a single communication channel such as Microsoft Teams. This integration empowers business users with insights drawn from SAP backend systems, enterprise documents, and the expansive knowledge of Generative AI. And the best part of it is that it is all managed through our intuitive no-code Action Server interface, requiring no extensive coding knowledge and making the advanced AI accessible to more users.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
Fueling AI with Great Data with Airbyte WebinarZilliz
This talk will focus on how to collect data from a variety of sources, leveraging this data for RAG and other GenAI use cases, and finally charting your course to productionalization.
FREE A4 Cyber Security Awareness Posters-Social Engineering part 3Data Hops
Free A4 downloadable and printable Cyber Security, Social Engineering Safety and security Training Posters . Promote security awareness in the home or workplace. Lock them Out From training providers datahops.com
Taking AI to the Next Level in Manufacturing.pdfssuserfac0301
Read Taking AI to the Next Level in Manufacturing to gain insights on AI adoption in the manufacturing industry, such as:
1. How quickly AI is being implemented in manufacturing.
2. Which barriers stand in the way of AI adoption.
3. How data quality and governance form the backbone of AI.
4. Organizational processes and structures that may inhibit effective AI adoption.
6. Ideas and approaches to help build your organization's AI strategy.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
3. View live notes and ask questions
about this session on Google Wave
http://bit.ly/ac2dmwave
4. Outline
• Accessing Data in the Cloud
• Polling and Pushing
• Android Cloud to Device Messaging
• Demos
• Summary
4
5. Accessing Data in the Cloud
• Apps provide seamless access to data in the cloud
– Mobile Alerts
– Send to Phone
– Background Sync
• Challenge: How do you keep data on a device fresh?
5
6. Polling
• Simple to implement
• Device periodically asks server for new data
– Radio draws a lot of power, stays on for several seconds
– Ideally, use If-Modified-Since, If-None-Match, etc.
• Make no-ops as cheap as possible
• Appropriate for content that changes constantly
– Stock Quotes, News Headlines
– Poll infrequently, update on demand
6
7. Impact of Polling on Battery
• Baseline: ~5-8 mA
• Network: ~180-200 mA
– Tx more expensive than Rx
• Radio stays on for few secs
• ~0.50 mAh for a short poll
– 5m frequency: ~144 mAh / day
– 15m frequency: ~48 mAh / day
Source: Android development team at Google
7
8. When to Poll?
• Tradeoff between freshness and efficiency
– Poll frequently – more fresh, less efficient
• Desire: Push, don’t poll
– Only fetch data when useful
8
9. Pushing
• Enables freshness with less impact on battery
– Only use network when necessary
– Constant overhead of persistent connection
• Google Contacts, Calendar, Gmail, etc., use push sync
• Can be tricky to implement
• Android Cloud to Device Messaging makes push easy
9
10. Android Cloud to Device Messaging
• Simple Google API
– Android 2.2 devices with Market
– Will be open to all developers
• Uses existing connection for Google services
• Allows servers to send lightweight “data” messages to apps
– Tell app new data available
– Intent broadcast wakes up app
– App supplies UI, e.g., Notification, if/as necessary
• Best effort delivery
10
11. Peeking Under the Hood
• Background service
– Honor background data setting
– Start when network available
• Maintain connection with server
– Use heartbeats to keep alive, detect dead connections
• Efficient
– Minimize per connect overhead
– Minimize heartbeat frequency
– Minimize concurrent connections
11
12. Heartbeats
X
✓
PING
ACK
SERVER
• Use Alarms • Can also initiate ping
• (Re)schedule pings • May be half open
• Wait for acks • Clean up state when dead
• Reconnect when dead
12
13. Overview of Lifecycle
• Enabling cloud to device messaging
– App (on device) registers with Google, gets registration ID
– App sends registration ID to its App Server
• Per message
– App Server sends (authenticated) message to Google
– Google sends message to device
• Disabling cloud to device messaging
– App can unregister ID, e.g., when user no longer wants push
13
14. Life of a Message
CONN
SERVER
WAKE
UP! GOOGLE
APP
C2D MSG
FRONTEND
APP
SERVER
14
15. Registration – Requesting a Registration ID
// Use the Intent API to get a registration ID
// Registration ID is compartmentalized per app/device
Intent regIntent = new
Intent(“com.google.android.c2dm.intent.REGISTER”);
// Identify your app
regIntent.putExtra(“app”,
PendingIntent.getBroadcast(this, 0, new Intent(), 0);
// Identify role account server will use to send
regIntent.putExtra(“sender”, emailOfSender);
// Start the registration process
startService(regIntent);
15
16. Registration – Receiving the Registration ID
• App receives the ID as an Intent
– com.google.android.c2dm.intent.REGISTRATION
• App should send this ID to its server
• Service may issue new registration ID at any time
– App will receive REGISTRATION Intent broadcast
– App must update server with new ID
16
17. Registration – Receiving the Registration ID
// Registration ID received via an Intent
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (“…REGISTRATION”.equals(action)) {
handleRegistration(context, intent);
} }
private void handleRegistration(Context context, Intent intent){
String id = intent.getExtra(“registration_id”);
if ((intent.getExtra(“error”) != null) {
// Registration failed. Try again later, with backoff.
} else if (id != null) {
// Send the registration ID to the app’s server.
// Be sure to do this in a separate thread.
} }
17
18. Sending Messages
• Get “ac2dm” auth token, install on server
– http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html
• Send authenticated POST
– https://android.apis.google.com/c2dm/send
– Authorization: GoogleLogin auth=<auth token>
– URL Encoded parameters
• registration_id
• collapse_key
• (optional) delay_while_idle
• (optional) data.<key>*
18
19. Sending Messages – Response Codes
• 200 OK
– With “id” – request succeeded, message enqueued
– With “Error” – request failed
• QuotaExceeded, DeviceQuotaExceeded: Retry after a while
• InvalidRegistration, NotRegistered: Stop sending messages
• MessageTooBig: Reduce size of message
• MissingCollapseKey: Include collapse key in request
• 401 Not Authorized: Get new auth token
• 503 Service Unavailable: Retry with backoff
19
20. Receiving Messages
• Device receives message, converts to Intent
• App woken up/started by Intent broadcast
– com.google.android.c2dm.intent.RECEIVE
– data.<key>* set as Intent extras
– App needs com.example.app.permission.C2D_MESSAGE
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (“…RECEIVE”.equals(action)) {
// Grab a wakelock, use IntentService to do work
}
}
20
21. Collapse Keys
• Latest message replaces older ones with same key
• Avoids message explosion for offline device
• App may use multiple collapse keys
– Correspond to “feed” app will fetch
– Max of four in flight (per device)
• State should be in app server, not in message
– Tell app when it should fetch data
21
22. Collapse Keys
CONN
SERVER
GOOGLE
C2D MSG
FRONTEND
APP
SERVER
22
23. Attenuation
• Messages may not be delivered to device immediately
• Protects devices that are receiving many messages
– Avoid constant radio wakeup
• Attenuation per app/collapse key
23
24. Attenuation
CONN
SERVER
GOOGLE
C2D MSG
FRONTEND
APP
SERVER
24
25. Delay While Idle
• Device tells Connection Server when screen is on, off
– Screen off == device is idle
• Apps can request message only be delivered when active
– Avoid waking up device with info that will not be seen/used
– e.g., chat presence, friend location updates
25
26. Delay While Idle
CONN
SERVER
GOOGLE
Zzzz
C2D MSG
FRONTEND
APP
SERVER
26
27. Demo: Google Chrome to Phone Extension
• Send any web page to Android device
– Special handling for Maps, YouTube
• Chrome Extension
• App Engine backend
APP
ENGINE
AC2DM
ORIGIN
SERVER
27
28. Demo: JumpNote
• Notes, with two way push sync
– App Engine backend, GWT UI
• Uses Sync Framework
• Uses Android Cloud to Device Messaging
– Register, Unregister based on auto-sync selection
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (“…RECEIVE”.equals(action)) {
// Determine account, feed that changed …
context.getContentResolver.requestSync(account, “…jumpnote”, extras);
}
}
28
29. Android Cloud to Device Messaging Signup
• Launching in Labs, accepting signups
• Visit http://code.google.com/android/c2dm for details
29
30. Summary
• Many Android apps access data in cloud
• Push keeps apps up to date, efficiently
• Android Cloud to Device Messaging makes push simple
• Sign up now
– http://code.google.com/android/c2dm
30
31. View live notes and ask questions
about this session on Google Wave
http://bit.ly/ac2dmwave