Telephony and SMS Objective • Telephony ➤ Initiating phone calls

Slides:



Advertisements
Similar presentations
Aspire Vertical Markets Law Office. Law Office Solutions.
Advertisements

Aspire Vertical Markets Banking, Finance and Insurance.
Android Application Development Tutorial. Topics Lecture 6 Overview Programming Tutorial 3: Sending/Receiving SMS Messages.
1 Semester 2 Module 4 Learning about Other Devices Yuda college of business James Chen
Hosted Voice Product Training
MESSAGING. Overview  SMS sends short text messages between mobile phones.  Supports sending both text messages and data messages  MMS (multimedia messaging.
Android 101 Application Fundamentals January 29, 2010.
THE MOBILE UNDERGROUND ACTIVITIES IN CHINA Lion Gu, Trend Micro RUXCON /10/2014.
SMS. Short Message Service – Primarily text messages between mobile phones – First one sent December 3, 1982 “Merry Christmas” – In 2008 Approximately.
Responding to an Everbridge Notification
LeadDesk Oy I I ARCHITECTURE September, 2014.
Location based social networking product. Overview  Mobile Tracking System was first released in Romania in February  Currently MTS works with.
Responding to an Everbridge Notification. Internet based notification system available 24/7/365 Multijurisdictional emergency and non-emergency notifications.
Bypassing the Android Permission Model Georgia Weidman Founder and CEO, Bulb Security LLC.
CS378 - Mobile Computing Speech to Text, Text to Speech, Telephony.
Android Declassification Infrastructure Matan David Yuval Evron Project Advisor: Roei Schuster 1.
Methods of communication
© Keren Kalif Intro to Android Development Written by Keren Kalif, Edited by Liron Blecher Contains slides from Google I/O presentation.
Android Programming By Mohsen Biglari Android Programming, Part1: Introduction 1 Part1: Introduction By Mohsen Biglari.
CSS216 MOBILE PROGRAMMING Android, Chapter 13 Book: “Professional Android™ 2 Application Development” by Reto Meier, 2010 by: Andrey Bogdanchikov (
Appendix A Implementing Unified Messaging. Appendix Overview Overview of Telephony Introducing Unified Messaging Configuring Unified Messaging.
Google Cloud Messaging for Android (GCM) is a free service that helps developers send data from servers to their Android.
Mobile Technologies Introduction Basics of GSM Value Added Services SMS Short Codes Asterisk * LBS.
Monitoring Malware at Runtime. From Last Lecture Malware authors use advanced coding for avoiding detection AnserverBot is a very sophisticate piece of.
Using Intents to Broadcast Events Intents Can be used to broadcast messages anonymously Between components via the sendBroadcast method As a result Broadcast.
DUE Hello World on the Android Platform.
GSM Network Structure Lance Westberg.
Integrating VoiceXML with SIP services
BY N.SUDHEER KUMAR E.C.E BY N.SUDHEER KUMAR E.C.E.
Paradox Communication Solution GPRS / GSM
Telephony and sms API’S. Objective Telephony ➤ Initiating phone calls ➤ Reading the phone, network, data connectivity, and SIM states ➤ Monitoring changes.
Appendix A Implementing Unified Messaging. Appendix Overview Overview of Telephony Introducing Unified Messaging Configuring Unified Messaging.
Bluetooth Techniques Chapter 15. Overview of Bluetooth Initially developed by Swedish mobile phone maker in 1994 to let laptop computers make calls over.
Android System Security Xinming Ou. Android System Basics An open-source operating system for mobile devices (AOSP, led by Google) – Consists of a base.
HDL-MGSM.431. Description MGSM.431 is an automation module based on GSM monitoring and controlling. Being at a great distance you can operate a target.
Telephone Call Interception System with GPS / IP based Monitoring with GPS / IP based Monitoring “TCIS”
Jia Uddin Embedded System Lab.  MPLS  IMANET  IMANET network model  Proposed model of IMANET with MPLS  Conclusion.
David Sutton SMS TELEPHONY IN ANDROID. OUTLINE  This week’s exercise, an SMS Pub Quiz  Simulating telephony on an emulator  Broadcast Intents and broadcast.
سمینار تخصصی What is PSTN ? (public switched telephone network) تیرماه 1395.
What does LinkConnect do?
Threat, Analysis and Mitigation
TEXT MARKETING | TEXT MESSAGE MARKETING
Android Mobile Application Development
5G WIRELESS Technology.
Windows Calls Applications (windows.applicationmodel.calls)
SMS module HDL-MGSM.431.
NETWORK Unit 1 Module: 2 Objective: 7.
CS408/533 Computer Networks Text: William Stallings Data and Computer Communications, 6th edition Chapter 1 - Introduction.
Lab 3: More Phone-Based Techniques
Android System Security
Architecture of Android
Telecom Services.
Multimedia Messaging Service
AUTOMATED security system
Mobile Operating System
Messaging Unit-4.
Bulk SMS, Voice Call SMS Campaign For Mission Election
CMPE419 Mobile Application Development
Mobile Device Development
Web Development & Design Chapter 1, Sections 4, 5 & 6
DIFFERENT TYPES OF INTERNET CONNECTIONS.
Android.Adware.Plankton.A % Android.Adware.Wapsx.A – 4.73%
Product Overview.
Add to the Coffee Ordering App
Understanding Android Security
Bonrix Software Systems
Dept. of Business Administration
CMPE419 Mobile Application Development
Product Overview.
Presentation transcript:

Telephony and SMS Objective • Telephony ➤ Initiating phone calls ➤ Reading the phone, network, data connectivity, and SIM states ➤ Monitoring changes to the phone, network, data connectivity, and • SMS ➤ Using Intents to send SMS and MMS messages ➤ Using the SMS Manager to send SMS Messages ➤ Handling incoming SMS messages

Telephony Overview The Android telephony APIs allows: ➤ Access the underlying telephone hardware stack ➤ Create your own dialer ➤ Integrate call handling and phone state monitoring

Telephony Manager Access to the telephony APIs is managed by the Telephony Manager String srvcName = Context.TELEPHONY_SERVICE; TelephonyManager telephonyManager = (TelephonyManager)getSystemService(srvcName)Thru Telephony Manager you can obtain: ➤ the phone type (GSM or CDMA), ➤ unique ID (IMEI or MEID), ➤ software version, ➤ number. Requires the READ_PHONE_STATE uses permission be included in the application manifest.

Reading Phone Details // Read the phone’s type int phoneType = telephonyManager.getPhoneType(); switch (phoneType) { case (TelephonyManager.PHONE_TYPE_CDMA): //do something break; case (TelephonyManager.PHONE_TYPE_GSM) : //do something break; case (TelephonyManager.PHONE_TYPE_NONE): //do something default: } // -- These require READ_PHONE_STATE uses-permission – // Read the IMEI for GSM or MEID for CDMA String deviceId = telephonyManager.getDeviceId(); // Read the software version on the phone (note -- not the SDK version) String softwareVersion = telephonyManager.getDeviceSoftwareVersion(); / /Get the phone’s number String phoneNumber = telephonyManager.getLine1Number();

Reading Data Connection Status int dataActivity = telephonyManager.getDataActivity(); int dataState = telephonyManager.getDataState(); switch (dataActivity) { case TelephonyManager.DATA_ACTIVITY_IN: //Currently receiving IP PPP traffic. break; case TelephonyManager.DATA_ACTIVITY_OUT: //Currently sending IP PPP traffic. case TelephonyManager.DATA_ACTIVITY_INOUT: //Currently both IN & OUT case TelephonyManager.DATA_ACTIVITY_NONE: //No traffic. break; } switch (dataState) { case TelephonyManager.DATA_CONNECTED: //Connected. case TelephonyManager.DATA_CONNECTING: //Currently setting up data connection break; case TelephonyManager.DATA_DISCONNECTED: //Disconnected case TelephonyManager.DATA_SUSPENDED: //Suspended }

Reading SIM Details // Get the SIM country ISO code int simState = telephonyManager.getSimState(); switch (simState) { case (TelephonyManager.SIM_STATE_ABSENT): break; case (TelephonyManager.SIM_STATE_NETWORK_LOCKED): break; case (TelephonyManager.SIM_STATE_PIN_REQUIRED): break; case (TelephonyManager.SIM_STATE_PUK_REQUIRED): break; case (TelephonyManager.SIM_STATE_UNKNOWN): break; case (TelephonyManager.SIM_STATE_READY): { // Get the SIM country ISO code String simCountry = telephonyManager.getSimCountryIso(); // Get the operator code of the active SIM (MCC + MNC) String simOperatorCode = telephonyManager.getSimOperator(); // Get the name of the SIM operator String simOperatorName = telephonyManager.getSimOperatorName(); // -- Requires READ_PHONE_STATE uses-permission -- // Get the SIM’s serial number String simSerial = telephonyManager.getSimSerialNumber(); break; } default: break; }

Monitoring Phone Status Android lets you: ➤ monitor phone state, ➤ retrieve incoming phone numbers, ➤ observe changes to data connections, signal strength, and network connectivity. • Must specify the READ_PHONE_STATE usespermission in its manifest Extend PhoneStateListener class to listen and respond to: ➤ Phone state change events including call state (ringing, off hook, etc.), ➤ Cell location changes, ➤ Voice-mail and call-forwarding status, ➤ Phone service changes, ➤ Changes in mobile signal strength.

SMS and MMS SMS sends short text messages between mobile phones. ➤ Supports sending both text messages and data messages MMS (multimedia messaging service) messages have allowed users to send and receive messages that include multimedia attachments such as photos, videos, and audio. •Using the SMSManager, you can replace the native SMS application to send text messages, react to incoming texts, or use SMS as a data transport layer. •Use the SEND and SEND_TO actions in Intents to send both SMS and MMS messages using a messaging application installed on the device.

Sending SMS/MMS thru Native App Use Intent with Intent.ACTION_SENDTO action: ➤ Specify a target number using sms: schema notation as the Intent data. ➤ Include the message you want to send within the Intent payload using an sms_body extra. Intent smsIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse("sms:55512345")); smsIntent.putExtra("sms_body", "Press send to send me"); startActivity(smsIntent);