signalR JavaScriptがスリープした後にJavaScriptクライアントが再接続したように見えますが、メッセージを受信していません。signalR iPadを再接続した後にJavaScriptクライアントがメッセージを受信できない
次のNugetパッケージ/バージョンのsignalRがサーバーにインストールされています。また、WebクライアントでsignalR JSクライアントの同じバージョンを使用して:
<package id="Microsoft.AspNet.SignalR" version="2.2.1" targetFramework="net45" />
<package id="Microsoft.AspNet.SignalR.Core" version="2.2.1" targetFramework="net45" />
<package id="Microsoft.AspNet.SignalR.JS" version="2.2.1" targetFramework="net45" />
<package id="Microsoft.AspNet.SignalR.SystemWeb" version="2.2.1" targetFramework="net45" />
これらは再現する手順は、次のとおりです
1)当社は、ユーザーのログイン時にWebクライアントでsignalR接続を開始します。
2)iPadは通知を受け取ります。
3)Webクライアントをアイドル状態のままにして、iPadをスリープ状態にします。
4)約5分後にWebクライアントを使用してください。私たちのアプリケーションサーバーログとsignalRサーバートレースログによると、signalRは再接続しますが、Webクライアントはメッセージを受信しません。 http://www.asp.net/signalr/overview/testing-and-debugging/enabling-signalr-tracing
以下は全体の交通ログは次のとおりです:
fa47e685-528b-46fc-ae56-4dc647065905はintial接続です
は、我々はsignalRサーバーのトレースを有効にするためにここにある手順を使用していました。a102e5ec-7bfd-449a-93d5-671cfd2bb19eは新しい接続です。
詳細情報が必要な場合はお知らせください。クライアントがスリープ状態になると、あなたが同じconnectionIDを使用しているクライアントへの接続を継続することができません切断すると
SignalR.Transports.TransportHeartBeat Information: 0 : Connection 3ebca988-ef0b-49a1-b9f1-7934ea64f176 is New.
SignalR.Transports.ServerSentEventsTransport Verbose: 0 : DrainWrites(3ebca988-ef0b-49a1-b9f1-7934ea64f176)
SignalR.Transports.ServerSentEventsTransport Information: 0 : CompleteRequest (3ebca988-ef0b-49a1-b9f1-7934ea64f176)
SignalR.Transports.TransportHeartBeat Information: 0 : Connection 5b1d35aa-0d65-45f1-b681-1d7b04569162 is New.
SignalR.Transports.TransportHeartBeat Verbose: 0 : 3ebca988-ef0b-49a1-b9f1-7934ea64f176 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : 3ebca988-ef0b-49a1-b9f1-7934ea64f176 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.TransportHeartBeat Verbose: 0 : 3ebca988-ef0b-49a1-b9f1-7934ea64f176 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : 3ebca988-ef0b-49a1-b9f1-7934ea64f176 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.TransportHeartBeat Verbose: 0 : 3ebca988-ef0b-49a1-b9f1-7934ea64f176 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : 3ebca988-ef0b-49a1-b9f1-7934ea64f176 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.TransportHeartBeat Verbose: 0 : 3ebca988-ef0b-49a1-b9f1-7934ea64f176 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : 3ebca988-ef0b-49a1-b9f1-7934ea64f176 is dead
SignalR.Transports.TransportHeartBeat Information: 0 : Removing connection 3ebca988-ef0b-49a1-b9f1-7934ea64f176
SignalR.Transports.ServerSentEventsTransport Information: 0 : Abort(3ebca988-ef0b-49a1-b9f1-7934ea64f176)
SignalR.Transports.ServerSentEventsTransport Information: 0 : End(3ebca988-ef0b-49a1-b9f1-7934ea64f176)
SignalR.Transports.ServerSentEventsTransport Verbose: 0 : Cancel(3ebca988-ef0b-49a1-b9f1-7934ea64f176)
SignalR.Transports.ServerSentEventsTransport Verbose: 0 : DrainWrites(3ebca988-ef0b-49a1-b9f1-7934ea64f176)
SignalR.Transports.ServerSentEventsTransport Information: 0 : CompleteRequest (3ebca988-ef0b-49a1-b9f1-7934ea64f176)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.TransportHeartBeat Information: 0 : Connection fa47e685-528b-46fc-ae56-4dc647065905 is New.
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.ServerSentEventsTransport Verbose: 0 : DrainWrites(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.ServerSentEventsTransport Information: 0 : CompleteRequest (5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.ServerSentEventsTransport Information: 0 : Abort(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.TransportHeartBeat Information: 0 : Removing connection 5b1d35aa-0d65-45f1-b681-1d7b04569162
SignalR.Transports.ServerSentEventsTransport Information: 0 : End(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.ServerSentEventsTransport Verbose: 0 : DrainWrites(5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.ServerSentEventsTransport Information: 0 : CompleteRequest (5b1d35aa-0d65-45f1-b681-1d7b04569162)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.ServerSentEventsTransport Verbose: 0 : DrainWrites(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.ServerSentEventsTransport Information: 0 : CompleteRequest (fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Verbose: 0 : fa47e685-528b-46fc-ae56-4dc647065905 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : fa47e685-528b-46fc-ae56-4dc647065905 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : fa47e685-528b-46fc-ae56-4dc647065905 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : fa47e685-528b-46fc-ae56-4dc647065905 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : fa47e685-528b-46fc-ae56-4dc647065905 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : fa47e685-528b-46fc-ae56-4dc647065905 is dead
SignalR.Transports.TransportHeartBeat Verbose: 0 : fa47e685-528b-46fc-ae56-4dc647065905 is dead
SignalR.Transports.TransportHeartBeat Information: 0 : Removing connection fa47e685-528b-46fc-ae56-4dc647065905
SignalR.Transports.ServerSentEventsTransport Information: 0 : Abort(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.ServerSentEventsTransport Information: 0 : End(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.ServerSentEventsTransport Verbose: 0 : Cancel(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.ServerSentEventsTransport Verbose: 0 : DrainWrites(fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.ServerSentEventsTransport Information: 0 : CompleteRequest (fa47e685-528b-46fc-ae56-4dc647065905)
SignalR.Transports.TransportHeartBeat Information: 0 : Connection a102e5ec-7bfd-449a-93d5-671cfd2bb19e is New.
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)
SignalR.Transports.TransportHeartBeat Verbose: 0 : KeepAlive(a102e5ec-7bfd-449a-93d5-671cfd2bb19e)