Difference between revisions of "Phonegap Healthcare Adapter Design"
Cwdesautels (talk | contribs) (→Android) |
Cwdesautels (talk | contribs) (→Bluetooth) |
||
Line 50: | Line 50: | ||
** Query addresses | ** Query addresses | ||
** Get remote [http://developer.android.com/reference/android/bluetooth/BluetoothDevice.html BluetoothDevice] objects | ** Get remote [http://developer.android.com/reference/android/bluetooth/BluetoothDevice.html BluetoothDevice] objects | ||
+ | ** Control [http://developer.android.com/reference/android/bluetooth/BluetoothProfile.html BluetoothProfile]'s | ||
** Create listening sockets to addresses | ** Create listening sockets to addresses | ||
* Classes Implementing [http://developer.android.com/reference/android/bluetooth/BluetoothProfile.html BluetoothProfile] can be queried for [http://developer.android.com/reference/android/bluetooth/BluetoothDevice.html BluetoothDevice] Objects, implementing classes: | * Classes Implementing [http://developer.android.com/reference/android/bluetooth/BluetoothProfile.html BluetoothProfile] can be queried for [http://developer.android.com/reference/android/bluetooth/BluetoothDevice.html BluetoothDevice] Objects, implementing classes: |
Revision as of 14:04, 17 August 2012
NexJ Medical Peripheral Mobile Adapter Will be designed to enable NexJ's Mobile Healthcare solutions to interact with Bluetooth peripherals.
- Main article: Phonegap Healthcare Adapter
Contents
Class Diagram
Classes
phonegapMedicalDeviceInterface
- Interface to a medical device for use by the NexJ mobile health solution
- Implemented in Javascript
medicalDevice
- Representation of a medical device
- Delegates to a native medical device interface
- Implemented in Javascript
nativeMedicalDeviceInterface
- Private interface to physical medical devices
- Implemented in native code (Objective C on iOS, java on Android)
bluetoothAdapter
- Adapter to allow medical device objects to interact with communication libraries on the device
- In the future a Wifi adapter will also be needed to fulfill the same role of communication over another protocol
- Implemented in native code
bloodPressureBluetoothAdapter
- Adapter to allow medical device objects to interact with specific medical peripherals
- These will be needed for each type of medical peripheral
- Implemented in native code
Native Bluetooth API
- Libraries on the mobile devices SDK that allows programmable interaction with Bluetooth devices
Blood Pressure Device
- Physical medical device peripheral
Flaws
- Should we be concerned about managing the instances of medicalDevice or will the rest of the solution
- Rest of the application: It becomes more of a Medical device factory
- This Project: Another layer should be added to represent a device manager
- bloodPressureBluetoothAdapter should know about specific device communication without relying on any specific communication protocol, otherwise it will need be reimplemented per communication adapter(eg. BluetoothAdapter, WifiAdapter)
Mobile Device Libraries
iOS
Wifi
Bluetooth
Android
Wifi
Bluetooth
- BluetoothAdapter is the starting point for all Bluetooth communication
- This gives the us the ability to control Bluetooth profiles
- Discover devices
- Query addresses
- Get remote BluetoothDevice objects
- Control BluetoothProfile's
- Create listening sockets to addresses
- Classes Implementing BluetoothProfile can be queried for BluetoothDevice Objects, implementing classes:
- BluetoothDevice objects allow the creation secure and insecure Bluetooth socket's
- These all data transfer between physical devices
- Bluetooth protocols are transparent