Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 22d08ee

Browse files
committed
Merge branch 'release'
2 parents 3206e79 + 6b3a7aa commit 22d08ee

File tree

4 files changed

+69
-2
lines changed

4 files changed

+69
-2
lines changed

‎MultiCommentViewer/Properties/AssemblyInfo.cs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33

44
[assembly: InternalsVisibleTo("MultiCommentViewerTests")]
55

6-
[assembly: AssemblyVersion("0.6.30")]
6+
[assembly: AssemblyVersion("0.6.31")]

‎TwitchSitePlugin/CommentProvider.cs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ protected virtual CookieContainer GetCookieContainer(IBrowserProfile browserProf
108108
}
109109
protected virtual IMessageProvider CreateMessageProvider()
110110
{
111-
return new MessageProvider();
111+
return new MessageProvider2();
112112
}
113113
protected virtual IMetadataProvider CreateMetadataProvider(string channelName)
114114
{

‎TwitchSitePlugin/MessageProvider.cs‎

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,69 @@
77
using System.Diagnostics;
88
namespace TwitchSitePlugin
99
{
10+
public class MessageProvider2 : IMessageProvider
11+
{
12+
public event EventHandler Opened;
13+
14+
public event EventHandler<string> Received;
15+
Common.IWebsocket _ws;
16+
TaskCompletionSource<object> _tcs;
17+
public Task ReceiveAsync()
18+
{
19+
_tcs = new TaskCompletionSource<object>();
20+
var cookies = new List<KeyValuePair<string, string>>();
21+
if (_ws != null)
22+
{
23+
_ws.Received -= _ws_MessageReceived;
24+
_ws.Opened -= _ws_Opened;
25+
}
26+
_ws = new Common.Websocket();
27+
_ws.Received += _ws_MessageReceived;
28+
_ws.Opened += _ws_Opened;
29+
return _ws.ReceiveAsync("wss://irc-ws.chat.twitch.tv/");
30+
}
31+
32+
private void _ws_Closed(object sender, EventArgs e)
33+
{
34+
_tcs.TrySetResult(null);
35+
}
36+
37+
private void _ws_Error(object sender, SuperSocket.ClientEngine.ErrorEventArgs e)
38+
{
39+
_tcs.TrySetException(e.Exception);
40+
}
41+
42+
private void _ws_Opened(object sender, EventArgs e)
43+
{
44+
Opened?.Invoke(this, e);
45+
}
46+
47+
public async Task SendAsync(string s)
48+
{
49+
Debug.WriteLine("send: " + s);
50+
await Task.Yield();
51+
await _ws.SendAsync(s + "\r\n");
52+
}
53+
54+
private void _ws_MessageReceived(object sender, string e)
55+
{
56+
var arr = e.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
57+
foreach (var message in arr)
58+
{
59+
Received?.Invoke(this, message);
60+
}
61+
}
62+
63+
public void Disconnect()
64+
{
65+
_ws?.Disconnect();
66+
_ws = null;
67+
}
68+
public MessageProvider2()
69+
{
70+
71+
}
72+
}
1073
/// <summary>
1174
///
1275
/// </summary>

‎YouTubeLiveSitePlugin/Test2/IMetadataProvider.cs‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ protected void SendInfo(string message, InfoType type)
3636
protected Metadata ActionsToMetadata(dynamic actions)
3737
{
3838
var metadata = new Metadata();
39+
if (actions == null)
40+
{
41+
return metadata;
42+
}
3943
string like = null;
4044
string dislike = null;
4145
foreach (var action in actions)

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /