@@ -8,11 +8,12 @@ class BT extends JSONRPCWebSocket {
88 * A BT peripheral socket object. It handles connecting, over web sockets, to
99 * BT peripherals, and reading and writing data to them.
1010 * @param {Runtime } runtime - the Runtime for sending/receiving GUI update events.
11+ * @param {string } extensionId - the id of the extension using this socket.
1112 * @param {object } peripheralOptions - the list of options for peripheral discovery.
1213 * @param {object } connectCallback - a callback for connection.
1314 * @param {object } messageCallback - a callback for message sending.
1415 */
15- constructor ( runtime , peripheralOptions , connectCallback , messageCallback ) {
16+ constructor ( runtime , extensionId , peripheralOptions , connectCallback , messageCallback ) {
1617 const ws = new WebSocket ( ScratchLinkWebSocket ) ;
1718 super ( ws ) ;
1819
@@ -25,6 +26,7 @@ class BT extends JSONRPCWebSocket {
2526 this . _connectCallback = connectCallback ;
2627 this . _connected = false ;
2728 this . _characteristicDidChangeCallback = null ;
29+ this . _extensionId = extensionId ;
2830 this . _peripheralOptions = peripheralOptions ;
2931 this . _discoverTimeoutID = null ;
3032 this . _messageCallback = messageCallback ;
@@ -115,7 +117,10 @@ class BT extends JSONRPCWebSocket {
115117 _sendError ( /* e */ ) {
116118 this . disconnect ( ) ;
117119 // log.error(`BT error: ${JSON.stringify(e)}`);
118- this . _runtime . emit ( this . _runtime . constructor . PERIPHERAL_ERROR ) ;
120+ this . _runtime . emit ( this . _runtime . constructor . PERIPHERAL_ERROR , {
121+ message : `Scratch lost connection to` ,
122+ extensionId : this . _extensionId
123+ } ) ;
119124 }
120125
121126 _sendDiscoverTimeout ( ) {
0 commit comments