Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- _handleMachinePress = async machine => {
- try {
- this.setState({ loading: true });
- await ble.connectionManager.connectToMachine(machine);
- const passProps = { ...props };
- navigateToScreen(ConnectedToMachineScreen, passProps);
- } catch (error) {
- console.warn(error);
- } finally {
- this.setState({ loading: false });
- }
- }
- export const connectToMachine = async machine => {
- return new Promise(async (resolve, reject) => {
- let connectedDevice;
- try {
- connectedDevice = await ble.connectToDevice(machine.id, { timeout: 10000, autoConnect: true });
- } catch (error) {
- try {
- await timeout(5000);
- connectedDevice = await ble.connectToDevice(machine.id, { timeout: 10000 });
- } catch (error) {
- reject(error);
- return;
- }
- }
- try {
- const exploredDevice = await connectedDevice.discoverAllServicesAndCharacteristics();
- await exploredDevice.services();
- resolve();
- } catch (error) {
- reject(error);
- }
- });
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement