Receiver reloads when connecting from Chrome on Android - google-cast

I'm trying to make a custom receiver, a multi-player, Cast game. I'm also writing the sender app to run in the browser.
The problem I'm running into is that I can't connect to an already running receiver via chrome on Android. If I launch the receiver from an android device, I can connect to that receiver session from a desktop browser. However, if I launch the receiver from a desktop browser and try to connect from an android browser, the receiver is restarted. The same happens if I launch the receiver from one android browser and attempt to connect to it from a different android device.
Both sender and receiver are written with Angular, using the CAF framework.
--Edit--
Here's some logs, I stripped off the "cast_receiver_framework.js:77" from the beginning of every line.
This first one shows launching the receiver from Chrome on Android, then connecting from a desktop browser.
[ 0.043s] [cast.receiver.CastReceiverManager] Version: 2.0.0.0060
vendor.js:45467 Angular is running in the development mode. Call enableProdMode() to enable the production mode.
[ 9.301s] [cast.framework.common.libraryloader] library(//www.gstatic.com/cast/sdk/libs/mediaplayer/1.0.0/media_player.js) is loaded
[ 9.426s] [cast.framework.common.libraryloader] library(//ajax.googleapis.com/ajax/libs/shaka-player/2.3.5/shaka-player.compiled.js) is loaded
[ 9.527s] [cast.receiver.IpcChannel] Received message: {"data":"{\"applicationId\":\"880C031C\",\"applicationName\":\"The Game\",\"closedCaption\":{},\"deviceCapabilities\":{\"bluetooth_supported\":false,\"display_supported\":true,\"focus_state_supported\":true,\"hi_res_audio_supported\":false},\"launchingSenderId\":\"68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839\",\"messagesVersion\":\"1.0\",\"sessionId\":\"b2258c08-bada-4b4e-adc0-275a7b338e70\",\"type\":\"ready\",\"version\":\"1.29.104827\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 9.540s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 9.546s] [cast.receiver.CastReceiverManager] Dispatching CastReceiverManager system ready event
[ 9.555s] [cast.framework.Application] onReady
[ 9.577s] [cast.receiver.IpcChannel] Received message: {"data":"{\"level\":1.0,\"muted\":false,\"type\":\"volumechanged\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 9.581s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 9.585s] [cast.receiver.CastReceiverManager] Dispatching system volume changed event [1, false]
[ 9.589s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"visibilitychanged\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 9.590s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 9.595s] [cast.receiver.CastReceiverManager] Ignoring visibility changed event, state is already null
[ 9.597s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"standbychanged\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 9.601s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 9.604s] [cast.receiver.IpcChannel] Received message: {"data":"{\"hdrType\":\"sdr\",\"type\":\"hdroutputtypechanged\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 9.606s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 9.613s] [cast.receiver.MediaManager] Sending broadcast status message
[ 9.629s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"*:*","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[],\"requestId\":0}"}
[ 9.637s] [cast.receiver.IpcChannel] Received message: {"data":"{\"state\":\"IN_FOCUS\",\"type\":\"FOCUS_STATE\"}","namespace":"urn:x-cast:com.google.cast.cac","senderId":"SystemSender"}
[ 9.644s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 9.662s] [cast.framework.common.EventHandler] onEvent for FOCUS_STATE
[ 9.667s] [cast.receiver.IpcChannel] Received message: {"data":"{\"senderId\":\"68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839\",\"type\":\"senderconnected\",\"userAgent\":\"Android CastSDK,12529050,Pixel 2,walleye,8.1.0\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 9.673s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 9.679s] [cast.receiver.CastReceiverManager] Dispatching CastReceiverManager sender connected event [68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839]
[ 9.685s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.debugoverlay, 68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839]
[ 9.687s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.cac, 68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839]
[ 9.688s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.broadcast, 68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839]
[ 9.692s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.media, 68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839]
[ 9.693s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.inject, 68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839]
[ 9.695s] [cast.receiver.IpcChannel] Received message: {"data":"{\"requestId\":1,\"type\":\"GET_STATUS\"}","namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839"}
[ 9.700s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 9.718s] [cast.receiver.MediaManager] MediaManager message received
[ 9.724s] [cast.receiver.MediaManager] Dispatching MediaManager getStatus event
[ 9.726s] [cast.framework.common.EventHandler] onEvent for getstatus
[ 9.731s] [cast.receiver.MediaManager] onGetStatus
[ 9.740s] [cast.receiver.MediaManager] onGetStatus: {"requestId":1}
[ 9.742s] [cast.receiver.MediaManager] Sending status message to 68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839
[ 9.745s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.14:com.android.chrome-7839","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[],\"requestId\":1}"}
[ 27.436s] [cast.receiver.IpcChannel] Received message: {"data":"{\"requestId\":1,\"type\":\"GET_STATUS\"}","namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.16:com.google.android.gms-7840"}
[ 27.437s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 27.438s] [cast.receiver.MediaManager] MediaManager message received
[ 27.439s] [cast.receiver.MediaManager] Dispatching MediaManager getStatus event
[ 27.439s] [cast.framework.common.EventHandler] onEvent for getstatus
[ 27.440s] [cast.receiver.MediaManager] onGetStatus
[ 27.441s] [cast.receiver.MediaManager] onGetStatus: {"requestId":1}
[ 27.441s] [cast.receiver.MediaManager] Sending status message to 68137637-265f-7e53-098b-043b5891b89e.16:com.google.android.gms-7840
[ 27.442s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.16:com.google.android.gms-7840","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[],\"requestId\":1}"}
[ 49.809s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"GET_STATUS\",\"requestId\":401804041}","namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty"}
[ 49.814s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 49.820s] [cast.receiver.MediaManager] MediaManager message received
[ 49.825s] [cast.receiver.MediaManager] Dispatching MediaManager getStatus event
[ 49.830s] [cast.framework.common.EventHandler] onEvent for getstatus
[ 49.837s] [cast.receiver.MediaManager] onGetStatus
[ 49.842s] [cast.receiver.MediaManager] onGetStatus: {"requestId":401804041}
[ 49.847s] [cast.receiver.MediaManager] Sending status message to 68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty
[ 49.852s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[],\"requestId\":401804041}"}
[ 51.151s] [cast.receiver.IpcChannel] Received message: {"data":"{\"senderId\":\"68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545\",\"type\":\"senderconnected\",\"userAgent\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 51.157s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 51.162s] [cast.receiver.CastReceiverManager] Dispatching CastReceiverManager sender connected event [68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 51.167s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.debugoverlay, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 51.174s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.cac, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 51.179s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.broadcast, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 51.184s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.media, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 51.189s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.inject, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 51.194s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"GET_STATUS\",\"requestId\":401804042}","namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty"}
[ 51.199s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 51.204s] [cast.receiver.MediaManager] MediaManager message received
[ 51.209s] [cast.receiver.MediaManager] Dispatching MediaManager getStatus event
[ 51.214s] [cast.framework.common.EventHandler] onEvent for getstatus
[ 51.219s] [cast.receiver.MediaManager] onGetStatus
[ 51.225s] [cast.receiver.MediaManager] onGetStatus: {"requestId":401804042}
[ 51.229s] [cast.receiver.MediaManager] Sending status message to 68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty
[ 51.234s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[],\"requestId\":401804042}"}
And this log shows launching the receiver from desktop first, then trying to connect to if with an android browser. There's no error when the android browser attempts to connect, just "Dispatching shutdown event".
[ 0.049s] [cast.receiver.CastReceiverManager] Version: 2.0.0.0060
vendor.js:45467 Angular is running in the development mode. Call enableProdMode() to enable the production mode.
[ 11.726s] [cast.framework.common.libraryloader] library(//www.gstatic.com/cast/sdk/libs/mediaplayer/1.0.0/media_player.js) is loaded
[ 11.861s] [cast.framework.common.libraryloader] library(//ajax.googleapis.com/ajax/libs/shaka-player/2.3.5/shaka-player.compiled.js) is loaded
[ 11.921s] [cast.receiver.IpcChannel] Received message: {"data":"{\"applicationId\":\"880C031C\",\"applicationName\":\"The Game\",\"closedCaption\":{},\"deviceCapabilities\":{\"bluetooth_supported\":false,\"display_supported\":true,\"focus_state_supported\":true,\"hi_res_audio_supported\":false},\"launchingSenderId\":\"68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty\",\"messagesVersion\":\"1.0\",\"sessionId\":\"a3b50537-b0d1-413f-9638-aab10b105253\",\"type\":\"ready\",\"version\":\"1.29.104827\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 11.936s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 11.949s] [cast.receiver.CastReceiverManager] Dispatching CastReceiverManager system ready event
[ 11.955s] [cast.framework.Application] onReady
[ 11.974s] [cast.receiver.IpcChannel] Received message: {"data":"{\"level\":1.0,\"muted\":false,\"type\":\"volumechanged\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 11.978s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 11.984s] [cast.receiver.CastReceiverManager] Dispatching system volume changed event [1, false]
[ 11.990s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"visibilitychanged\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 11.994s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 12.000s] [cast.receiver.CastReceiverManager] Ignoring visibility changed event, state is already null
[ 12.005s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"standbychanged\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 12.010s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 12.015s] [cast.receiver.IpcChannel] Received message: {"data":"{\"hdrType\":\"sdr\",\"type\":\"hdroutputtypechanged\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 12.019s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 12.026s] [cast.receiver.MediaManager] Sending broadcast status message
[ 12.037s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"*:*","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[],\"requestId\":0}"}
[ 12.048s] [cast.receiver.IpcChannel] Received message: {"data":"{\"state\":\"IN_FOCUS\",\"type\":\"FOCUS_STATE\"}","namespace":"urn:x-cast:com.google.cast.cac","senderId":"SystemSender"}
[ 12.053s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 12.059s] [cast.framework.common.EventHandler] onEvent for FOCUS_STATE
[ 12.068s] [cast.receiver.IpcChannel] Received message: {"data":"{\"senderId\":\"68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545\",\"type\":\"senderconnected\",\"userAgent\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
[ 12.073s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 12.080s] [cast.receiver.CastReceiverManager] Dispatching CastReceiverManager sender connected event [68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 12.086s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.debugoverlay, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 12.092s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.cac, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 12.097s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.broadcast, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 12.102s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.media, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 12.107s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.inject, 68137637-265f-7e53-098b-043b5891b89e.10:152574013695890545]
[ 12.114s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"GET_STATUS\",\"requestId\":401804049}","namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty"}
[ 12.118s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message
[ 12.130s] [cast.receiver.MediaManager] MediaManager message received
[ 12.135s] [cast.receiver.MediaManager] Dispatching MediaManager getStatus event
[ 12.141s] [cast.framework.common.EventHandler] onEvent for getstatus
[ 12.148s] [cast.receiver.MediaManager] onGetStatus
[ 12.153s] [cast.receiver.MediaManager] onGetStatus: {"requestId":401804049}
[ 12.158s] [cast.receiver.MediaManager] Sending status message to 68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty
[ 12.165s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"68137637-265f-7e53-098b-043b5891b89e.10:sender-h2j2ft55n4ty","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[],\"requestId\":401804049}"}
[ 16.458s] [cast.receiver.CastReceiverManager] Dispatching shutdown event

Related

How to send record to Kinesis in fire-and-forget mode with AWS SDK v3 for NodeJS

today I'm able to put a record in Kinesis, but this operation takes 30 ms (which is too much for my use case), and I would like to not wait for the kinesis response (= fire-and-forget)
Today I use the PutRecordCommand solution:
const putRecordCommand = new PutRecordCommand({
Data: Buffer.from(JSON.stringify(report)),
PartitionKey: requestId,
StreamName: STREAM_NAME,
});
await kinesisClient.send(putRecordCommand);
If I remove the await key word, and the lambda ends before the kinesis client retrieves a response, I get the following error:
{
"errorType": "Runtime.UnhandledPromiseRejection",
"errorMessage": "Error [ERR_HTTP2_STREAM_CANCEL]: The pending stream has been canceled (caused by: Client network socket disconnected before secure TLS connection was established)",
"reason": {
"errorType": "Error",
"errorMessage": "The pending stream has been canceled (caused by: Client network socket disconnected before secure TLS connection was established)",
"code": "ERR_HTTP2_STREAM_CANCEL",
"cause": {
"errorType": "Error",
"errorMessage": "Client network socket disconnected before secure TLS connection was established",
"code": "ECONNRESET",
"host": "kinesis.eu-west-1.amazonaws.com",
"port": "443",
"stack": [
"Error: Client network socket disconnected before secure TLS connection was established",
" at connResetException (node:internal/errors:692:14)",
" at TLSSocket.onConnectEnd (node:_tls_wrap:1587:19)",
" at TLSSocket.emit (node:events:539:35)",
" at endReadableNT (node:internal/streams/readable:1345:12)",
" at processTicksAndRejections (node:internal/process/task_queues:83:21)"
]
},
"$metadata": {
"attempts": 1,
"totalRetryDelay": 0
},
"stack": [
"Error [ERR_HTTP2_STREAM_CANCEL]: The pending stream has been canceled (caused by: Client network socket disconnected before secure TLS connection was established)",
" at new NodeError (node:internal/errors:372:5)",
" at closeSession (node:internal/http2/core:1136:20)",
" at ClientHttp2Session.destroy (node:internal/http2/core:1530:5)",
" at TLSSocket.socketOnError (node:internal/http2/core:2981:13)",
" at TLSSocket.emit (node:events:527:28)",
" at emitErrorNT (node:internal/streams/destroy:157:8)",
" at emitErrorCloseNT (node:internal/streams/destroy:122:3)",
" at processTicksAndRejections (node:internal/process/task_queues:83:21)"
]
},
"promise": {},
"stack": [
"Runtime.UnhandledPromiseRejection: Error [ERR_HTTP2_STREAM_CANCEL]: The pending stream has been canceled (caused by: Client network socket disconnected before secure TLS connection was established)",
" at process.<anonymous> (file:///var/runtime/index.mjs:775:15)",
" at process.emit (node:events:527:28)",
" at emit (node:internal/process/promises:140:20)",
" at processPromiseRejections (node:internal/process/promises:274:27)",
" at processTicksAndRejections (node:internal/process/task_queues:97:32)"
]
}
Questions:
Is there another Kinesis "command" from AWS SDK v3 that allows me to fire-and-forget?
Or an option to use on the kinesis client in order to make it work without await?
Notes:
Env: AWS Lambda with NodeJS v16
Dependency: AWS SDK v3 v3.154
async/await programming style

Node usb, no data received

I use the following code to receive data from an ANT+ dongle I used other software (Zwift, which shows that the dongle actually received data) (Using OS X):
/* Require the config */
require('dotenv').config()
/* require the usb class */
var usb = require('usb');
/* find the device */
var device = usb.findByIds(process.env.VENDOR_ID, process.env.PRODUCT_ID);
/* open the device */
device.open(true);
/* claim interface WHERE IS THIS FOR */
const [interface] = device.interfaces;
interface.claim();
/* Start Polling */
const [inEndpoint, outEndpoint] = interface.endpoints;
inEndpoint.startPoll();
// inEndpoint.transferType = 2;
inEndpoint.on('data', (d) => {
console.log("usb data:", d, " len:", d.length)
});
inEndpoint.on('error', function (error) {
console.log("on error", error);
});
Do I do something wrong?
Underneath you find some loggin, I think I do everything right but it has to do something with node.
[timestamp] [threadID] facility level [function call] <message>
--------------------------------------------------------------------------------
[ 0.003821] [00000307] libusb: debug [libusb_get_device_list]
[ 0.003925] [00000307] libusb: debug [libusb_get_device_descriptor]
[ 0.004005] [00000307] libusb: debug [libusb_get_device_descriptor]
[ 0.004021] [00000307] libusb: debug [libusb_get_device_descriptor]
[ 0.004033] [00000307] libusb: debug [libusb_get_device_descriptor]
[ 0.004125] [00000307] libusb: debug [libusb_open] open 20.9
[ 0.004269] [00000307] libusb: debug [usbi_add_pollfd] add fd 26 events 1
[ 0.004275] [00000307] libusb: debug [darwin_open] device open for access
[ 0.004301] [00004903] libusb: debug [handle_events] poll() returned 1
[ 0.004306] [00004903] libusb: debug [handle_events] caught a fish on the control pipe
[ 0.004319] [00004903] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
[ 0.004322] [00004903] libusb: debug [libusb_try_lock_events] someone else is modifying poll fds
[ 0.004324] [00004903] libusb: debug [libusb_event_handler_active] someone else is modifying poll fds
[ 0.004327] [00004903] libusb: debug [libusb_handle_events_timeout_completed] another thread is doing event handling
[ 0.004368] [00004903] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
[ 0.004380] [00004903] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 0.004384] [00004903] libusb: debug [handle_events] poll fds modified, reallocating
[ 0.004389] [00004903] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
[ 0.004736] [00000307] libusb: debug [libusb_claim_interface] interface 0
[ 0.005084] [00000307] libusb: debug [get_endpoints] building table of endpoints.
[ 0.005100] [00000307] libusb: debug [get_endpoints] interface: 0 pipe 1: dir: 1 number: 1
[ 0.005107] [00000307] libusb: debug [get_endpoints] interface: 0 pipe 2: dir: 0 number: 1
[ 0.005133] [00000307] libusb: debug [darwin_claim_interface] interface opened
[ 0.005445] [00000307] libusb: debug [ep_to_pipeRef] converting ep address 0x81 to pipeRef and interface
[ 0.005454] [00000307] libusb: debug [ep_to_pipeRef] pipe 1 on interface 0 matches
[ 0.005540] [00000307] libusb: debug [ep_to_pipeRef] converting ep address 0x81 to pipeRef and interface
[ 0.005547] [00000307] libusb: debug [ep_to_pipeRef] pipe 1 on interface 0 matches
[ 0.005572] [00000307] libusb: debug [ep_to_pipeRef] converting ep address 0x81 to pipeRef and interface
[ 0.005576] [00000307] libusb: debug [ep_to_pipeRef] pipe 1 on interface 0 matches
[60.006611] [00004903] libusb: debug [handle_events] poll() returned 0
[60.006708] [00004903] libusb: debug [libusb_get_next_timeout] no URB with timeout or all handled by OS; no timeout!
[60.006727] [00004903] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[60.006742] [00004903] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
[120.011876] [00004903] libusb: debug [handle_events] poll() returned 0
[120.011973] [00004903] libusb: debug [libusb_get_next_timeout] no URB with timeout or all handled by OS; no timeout!
[120.011994] [00004903] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[120.012007] [00004903] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
[180.012077] [00004903] libusb: debug [handle_events] poll() returned 0
[180.012106] [00004903] libusb: debug [libusb_get_next_timeout] no URB with timeout or all handled by OS; no timeout!
[180.012112] [00004903] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[180.012116] [00004903] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms

Cant connect to scassandra (stubbed cassandra) using datastax-driver

I have troubles connecting to cassandra.
Im trying to connect to s-cassandra (which is a stubbed cassandra as can be reviewed here), with a datastax node.js cassandra driver.
For some reason passing "127.0.0.1:8042" as a contact point to the driver
results in a DriverInternalError:( tough sometimes it does work randomly and I havent still figured out why sometimes it does and sometime i doesnt..)
The DriverInternalError I get:
{"name": "DriverInternalError",
"stack": "...",
"message": "Local datacenter could not be
determined",
"info": "Represents a bug inside the driver or in a
Cassandra host." }
That is what I see from Cassandra Driver's log:
log event: info -- Adding host 127.0.0.1:8042
log event: info -- Getting first connection
log event: info -- Connecting to 127.0.0.1:8042
log event: verbose -- Socket connected to 127.0.0.1:8042
log event: info -- Trying to use protocol version 4
log event: verbose -- Sending stream #0
log event: verbose -- Sent stream #0 to 127.0.0.1:8042
{"name":"application-storage","hostname":"Yuris-MacBook-Pro.local","pid":1338,"level":30,"msg":"Kafka producer is initialized","time":"2016-08-05T12:53:53.124Z","v":0}
log event: verbose -- Received frame #0 from 127.0.0.1:8042
log event: info -- Protocol v4 not supported, using v2
log event: verbose -- Done receiving frame #0
log event: verbose -- disconnecting
log event: info -- Connection to 127.0.0.1:8042 closed
log event: info -- Connecting to 127.0.0.1:8042
log event: verbose -- Socket connected to 127.0.0.1:8042
log event: info -- Trying to use protocol version 2
log event: verbose -- Sending stream #0
log event: verbose -- Sent stream #0 to 127.0.0.1:8042
log event: verbose -- Received frame #0 from 127.0.0.1:8042
log event: info -- Connection to 127.0.0.1:8042 opened successfully
log event: info -- Connection pool to host 127.0.0.1:8042 created with 1 connection(s)
log event: info -- Control connection using protocol version 2
log event: info -- Connection acquired to 127.0.0.1:8042, refreshing nodes list
log event: info -- Refreshing local and peers info
log event: verbose -- Sending stream #1
log event: verbose -- Done receiving frame #0
log event: verbose -- Sent stream #1 to 127.0.0.1:8042
log event: verbose -- Received frame #1 from 127.0.0.1:8042
log event: warning -- No local info provided
log event: verbose -- Sending stream #0
log event: verbose -- Done receiving frame #1
log event: verbose -- Sent stream #0 to 127.0.0.1:8042
log event: verbose -- Received frame #0 from 127.0.0.1:8042
log event: info -- Peers info retrieved
log event: error -- Tokenizer could not be determined
log event: info -- Retrieving keyspaces metadata
log event: verbose -- Sending stream #1
log event: verbose -- Done receiving frame #0
log event: verbose -- Sent stream #1 to 127.0.0.1:8042
log event: verbose -- Received frame #1 from 127.0.0.1:8042
log event: verbose -- Sending stream #0
log event: verbose -- Done receiving frame #1
log event: verbose -- Sent stream #0 to 127.0.0.1:8042
log event: verbose -- Received frame #0 from 127.0.0.1:8042
log event: info -- ControlConnection connected to 127.0.0.1:8042 and is up to date
Ive tried playing with the firewall and open application but help is not there.. tough sometimes it does work randomly and I havent still figured out why..
I have a mac OS X El Capitan
The Solution that helped me:
I needed to prime the system.local table as a prime-query-single
{
query: 'prime-query-single',
header: {'Content-Type': 'application/json'},
body: {
"when": {
"query": "SELECT * FROM system.local WHERE key='local'"
},
"then": {
"rows": [
{
"cluster_name": "custom cluster name",
"partitioner": "org.apache.cassandra.dht.Murmur3Partitioner",
"data_center": "dc1",
"rack": "rc1",
"tokens": [
"1743244960790844724"
],
"release_version": "2.0.1"
}
],
"result": "success",
"column_types": {
"tokens": "set<text>"
}
}
}
}

Chromecast Custom Receiver JPG loading

I am not able to cast a simple JPG or PNG file to chromecast device.
I keep getting the error message
[cast.receiver.MediaManager] Load metadata error
I even tried it with Google's examples "sample_media_receiver.html" and "web_sender_tool.html", but without success.
Video files like MP4 or even HLS work fine, but not an simple image. Altough in the default receiver the images are working, but not in the custom receiver.
I tried with different values of metadata and without any metadata - nothing helps.
Here is the log of the chromecast console (with working MP4 and not working JPG):
### Application Loaded. Starting system. sample_media_receiver.html:605
[ 0.285s] [cast.receiver.IpcChannel] Opening message bus websocket
cast_receiver.js:19
[ 0.297s] [goog.net.WebSocket] Opening the WebSocket on ws://localhost:8008/v2/ipc
cast_receiver.js:19
[ 0.369s] [goog.net.WebSocket] WebSocket opened on ws://localhost:8008/v2/ipc
cast_receiver.js:19
[ 0.380s] [cast.receiver.IpcChannel] IpcChannel opened
cast_receiver.js:19
[ 0.393s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message [urn:x-cast:com.google.cast.system, SystemSender]: {"type":"opened"}
cast_receiver.js:19
[ 0.408s] [cast.receiver.CastReceiverManager] CastReceiverManager message received: [object Object]
cast_receiver.js:19
[ 0.410s] [cast.receiver.CastReceiverManager] Underlying message bus is open
cast_receiver.js:19
[ 0.413s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender","data":"{\"type\":\"ready\",\"statusText\":\"Ready to play\",\"activeNamespaces\":[\"urn:x-cast:com.google.devrel.custom\",\"urn:x-cast:com.google.cast.media\"],\"version\":\"2.0.0\",\"messagesVersion\":\"1.0\"}"}
cast_receiver.js:19
[ 0.421s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender","data":"{\"type\":\"startheartbeat\",\"maxInactivity\":6000}"}
cast_receiver.js:19
[ 0.440s] [cast.receiver.IpcChannel] Received message: {"data":"{\"applicationId\":\"XXXXXXX\",\"applicationName\":\"MDTest\",\"launchingSenderId\":\"8:client-68103\",\"messagesVersion\":\"1.0\",\"sessionId\":\"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69\",\"type\":\"ready\",\"version\":\"1.0\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
cast_receiver.js:19
[ 0.443s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message [urn:x-cast:com.google.cast.system, SystemSender]: {"applicationId":"XXXXXXXX","applicationName":"MDTest","launchingSenderId":"8:client-68103","messagesVersion":"1.0","sessionId":"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69","type":"ready","version":"1.0"}
cast_receiver.js:19
[ 0.446s] [cast.receiver.CastReceiverManager] CastReceiverManager message received: [object Object]
cast_receiver.js:19
[ 0.448s] [cast.receiver.CastReceiverManager] Dispatching CastReceiverManager system ready event [[object Object]]
cast_receiver.js:19
### Cast Receiver Manager is READY: sample_media_receiver.html:204
[ 0.567s] [cast.receiver.IpcChannel] Received message: {"data":"{\"senderId\":\"8:client-68103\",\"type\":\"senderconnected\",\"userAgent\":\"\"}","namespace":"urn:x-cast:com.google.cast.system","senderId":"SystemSender"}
cast_receiver.js:19
[ 0.570s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message [urn:x-cast:com.google.cast.system, SystemSender]: {"senderId":"8:client-68103","type":"senderconnected","userAgent":""}
cast_receiver.js:19
[ 0.572s] [cast.receiver.CastReceiverManager] CastReceiverManager message received: [object Object]
cast_receiver.js:19
[ 0.574s] [cast.receiver.CastReceiverManager] Dispatching CastReceiverManager sender connected event [8:client-68103]
cast_receiver.js:19
[ 0.576s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.devrel.custom, 8:client-68103]
cast_receiver.js:19
[ 0.578s] [cast.receiver.CastMessageBus] Registering sender [urn:x-cast:com.google.cast.media, 8:client-68103]
cast_receiver.js:19
### Cast Receiver Manager - Sender Connected : sample_media_receiver.html:217
[ 17.252s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"LOAD\",\"requestId\":28532030,\"sessionId\":\"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69\",\"media\":{\"contentId\":\"http://192.168.0.103/~marco/cast/video0.mp4\",\"streamType\":\"buffered\",\"contentType\":\"video/mp4\",\"metadata\":null,\"duration\":null,\"customData\":null},\"autoplay\":true,\"currentTime\":null,\"customData\":null}","namespace":"urn:x-cast:com.google.cast.media","senderId":"8:client-68103"}
cast_receiver.js:19
[ 17.255s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message [urn:x-cast:com.google.cast.media, 8:client-68103]: {"type":"LOAD","requestId":28532030,"sessionId":"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69","media":{"contentId":"http://192.168.0.103/~marco/cast/video0.mp4","streamType":"buffered","contentType":"video/mp4","metadata":null,"duration":null,"customData":null},"autoplay":true,"currentTime":null,"customData":null}
cast_receiver.js:19
[ 17.258s] [cast.receiver.MediaManager] MediaManager message received [8:client-68103] {"type":"LOAD","requestId":28532030,"sessionId":"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69","media":{"contentId":"http://192.168.0.103/~marco/cast/video0.mp4","streamType":"buffered","contentType":"video/mp4","metadata":null,"duration":null,"customData":null},"autoplay":true,"currentTime":null,"customData":null}
cast_receiver.js:19
[ 17.259s] [cast.receiver.MediaManager] Dispatching MediaManager load event
cast_receiver.js:19
### Media Manager - LOAD: {"type":"load","B":false,"defaultPrevented":false,"Qa":true,"data":{"requestId":28532030,"sessionId":"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69","media":{"contentId":"http://192.168.0.103/~marco/cast/video0.mp4","streamType":"buffered","contentType":"video/mp4","metadata":null,"duration":null,"customData":null},"autoplay":true,"currentTime":null,"customData":null},"senderId":"8:client-68103"} sample_media_receiver.html:549
### Media Protocol Identified as mp4 sample_media_receiver.html:588
######### MEDIA ELEMENT LOAD START sample_media_receiver.html:121
[ 18.270s] [cast.receiver.MediaManager] Metadata loaded
cast_receiver.js:19
[ 18.286s] [cast.receiver.MediaManager] Sending broadcast status message
cast_receiver.js:19
[ 18.300s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"*:*","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[{\"mediaSessionId\":1,\"playbackRate\":1,\"playerState\":\"BUFFERING\",\"currentTime\":0,\"supportedMediaCommands\":15,\"volume\":{\"level\":1,\"muted\":false},\"media\":{\"contentId\":\"http://192.168.0.103/~marco/cast/video0.mp4\",\"streamType\":\"buffered\",\"contentType\":\"video/mp4\",\"metadata\":null,\"duration\":8.057324,\"customData\":null}}],\"requestId\":28532030}"}
cast_receiver.js:19
######### MEDIA ELEMENT DATA LOADED sample_media_receiver.html:125
######### MEDIA ELEMENT CAN PLAY sample_media_receiver.html:129
######### MEDIA ELEMENT PLAYING sample_media_receiver.html:137
[ 20.625s] [cast.receiver.MediaManager] Buffering state changed, isPlayerBuffering: false old time: 0.083322 current time: 1.125
cast_receiver.js:19
[ 20.627s] [cast.receiver.MediaManager] Sending broadcast status message
cast_receiver.js:19
[ 20.630s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"*:*","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[{\"mediaSessionId\":1,\"playbackRate\":1,\"playerState\":\"PLAYING\",\"currentTime\":1.125,\"supportedMediaCommands\":15,\"volume\":{\"level\":1,\"muted\":false}}],\"requestId\":0}"}
cast_receiver.js:19
######### MEDIA ELEMENT ENDED sample_media_receiver.html:133
### Media Manager - ENDED: sample_media_receiver.html:347
[ 27.445s] [cast.receiver.MediaManager] Resetting media element
cast_receiver.js:19
[ 27.579s] [cast.receiver.MediaManager] Sending broadcast status message
cast_receiver.js:19
[ 27.581s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"*:*","data":"{\"type\":\"MEDIA_STATUS\",\"status\":[{\"mediaSessionId\":1,\"playbackRate\":1,\"playerState\":\"IDLE\",\"currentTime\":0,\"supportedMediaCommands\":15,\"volume\":{\"level\":1,\"muted\":false},\"idleReason\":\"FINISHED\"}],\"requestId\":0}"}
cast_receiver.js:19
######### MEDIA ELEMENT ABORT [object Event] sample_media_receiver.html:153
[ 31.019s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"LOAD\",\"requestId\":28532031,\"sessionId\":\"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69\",\"media\":{\"contentId\":\"http://192.168.0.103/~marco/cast/myimage.jpg\",\"streamType\":\"buffered\",\"contentType\":\"image/jpg\",\"metadata\":null,\"duration\":null,\"customData\":null},\"autoplay\":true,\"currentTime\":null,\"customData\":null}","namespace":"urn:x-cast:com.google.cast.media","senderId":"8:client-68103"}
cast_receiver.js:19
[ 31.028s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message [urn:x-cast:com.google.cast.media, 8:client-68103]: {"type":"LOAD","requestId":28532031,"sessionId":"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69","media":{"contentId":"http://192.168.0.103/~marco/cast/myimage.jpg","streamType":"buffered","contentType":"image/jpg","metadata":null,"duration":null,"customData":null},"autoplay":true,"currentTime":null,"customData":null}
cast_receiver.js:19
[ 31.031s] [cast.receiver.MediaManager] MediaManager message received [8:client-68103] {"type":"LOAD","requestId":28532031,"sessionId":"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69","media":{"contentId":"http://192.168.0.103/~marco/cast/myimage.jpg","streamType":"buffered","contentType":"image/jpg","metadata":null,"duration":null,"customData":null},"autoplay":true,"currentTime":null,"customData":null}
cast_receiver.js:19
[ 31.033s] [cast.receiver.MediaManager] Dispatching MediaManager load event
cast_receiver.js:19
### Media Manager - LOAD: {"type":"load","B":false,"defaultPrevented":false,"Qa":true,"data":{"requestId":28532031,"sessionId":"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69","media":{"contentId":"http://192.168.0.103/~marco/cast/myimage.jpg","streamType":"buffered","contentType":"image/jpg","metadata":null,"duration":null,"customData":null},"autoplay":true,"currentTime":null,"customData":null},"senderId":"8:client-68103"} sample_media_receiver.html:549
### Media Protocol Identified as jpg sample_media_receiver.html:588
######### MEDIA ELEMENT LOAD START sample_media_receiver.html:121
######### MEDIA ELEMENT ERROR [object Event] sample_media_receiver.html:149
[ 31.293s] [cast.receiver.MediaManager] Load metadata error
cast_receiver.js:19
### Media Manager - LOAD METADATA ERROR: {"senderId":"8:client-68103","message":{"requestId":28532031,"sessionId":"2A80FF6F-F9B2-4D78-D99A-997CF6FC2F69","media":{"contentId":"http://192.168.0.103/~marco/cast/myimage.jpg","streamType":"buffered","contentType":"image/jpg","metadata":null,"duration":null,"customData":null},"autoplay":true,"currentTime":null,"customData":null}} sample_media_receiver.html:399
[ 31.297s] [cast.receiver.MediaManager] Resetting media element
cast_receiver.js:19
[ 31.303s] [cast.receiver.MediaManager] Sending error message to 8:client-68103
cast_receiver.js:19
[ 31.305s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"8:client-68103","data":"{\"requestId\":28532031,\"type\":\"LOAD_FAILED\"}"}
What is wrong?
When you say "custom receiver", it means that you have written your own receiver. When doing that, did you add any <img/> tag for images and the associated logic to use that element for images? Sounds like you have not. The Styled and Default receivers do that so that is why you can see images when using those receivers.

Cant make sample sender and receiver work

I get this while running cast-sender-tool-chrome ( web_sender_tool.html )
API Status: "Initialized"
Receivers Available: "Yes"
Session Established: "ERROR: {\"code\":\"session_error\",\"description\":\"NOT_FOUND\",\"details\":null}"
Last Message Received: N/A
Trying to understand what happen, in the receiver
https://googledrive.com/host/0B-Xkvxnj_z2JblZXSXFiZ2hfMlE/sample_media_receiver.html
i get this:
[ 0.032s] [cast.receiver.IpcChannel] Opening message bus websocket
cast_receiver.js:19
[ 0.033s] [goog.net.WebSocket] Opening the WebSocket on ws://localhost:8008/v2/ipc
cast_receiver.js:19
[ 0.035s] [goog.net.WebSocket] An error occurred: undefined
cast_receiver.js:19
[ 0.036s] [cast.receiver.IpcChannel] IpcChannel error
cast_receiver.js:19
[ 0.036s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message [urn:x-cast:com.google.cast.system, SystemSender]: {"type":"error"}
cast_receiver.js:19
[ 0.037s] [cast.receiver.CastReceiverManager] CastReceiverManager message received: [object Object]
cast_receiver.js:19
[ 0.038s] [goog.net.WebSocket] The WebSocket on ws://localhost:8008/v2/ipc closed.
cast_receiver.js:19
[ 0.038s] [cast.receiver.IpcChannel] IpcChannel closed
cast_receiver.js:19
[ 0.039s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message [urn:x-cast:com.google.cast.system, SystemSender]: {"type":"closed"}
cast_receiver.js:19
[ 0.039s] [cast.receiver.CastReceiverManager] CastReceiverManager message received: [object Object]
I'm using fedora 19 with google-chrome-beta ( 33 ).
Thanks in advance.

Resources