Skip to content

Commit

Permalink
v0.9.3 - Merge branch 'development' of https://github.com/frankvHoof9…
Browse files Browse the repository at this point in the history
  • Loading branch information
frankvHoof93 committed Apr 29, 2023
2 parents 3e44e0b + cac84df commit 38c8059
Show file tree
Hide file tree
Showing 16 changed files with 204 additions and 59 deletions.
16 changes: 16 additions & 0 deletions CHANGELOG.MD
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,22 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.9.3] - 2023-04-29

### Added

- Added newly found Message-Data (recently added by ByteDance)

### Fixed

### Changed

- Changed Message-Data in (Hourly)RankMessages (recently changed by ByteDance)

### Removed

- Disabled downloading of Textures/Sprites in Example-Code for TikTokLiveUnity, as it seems to be leading to random crashes somehow.

## [0.9.2] - 2023-04-25

### Added
Expand Down
66 changes: 33 additions & 33 deletions TikTokLiveSharp/Client/TikTokLiveClient.cs

Large diffs are not rendered by default.

5 changes: 3 additions & 2 deletions TikTokLiveSharp/Events/Messages/RankUpdate.cs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
using System.Linq;
using TikTokLiveSharp.Models.Protobuf.Messages;

namespace TikTokLiveSharp.Events.MessageData.Messages
Expand All @@ -18,7 +19,7 @@ internal RankUpdate(WebcastHourlyRankMessage msg)
var rankData = msg?.Data?.Rankings;
EventType = rankData?.Type;
Label = rankData?.Label;
Rank = rankData?.Details?.Label;
Rank = rankData?.Details?.FirstOrDefault()?.Label;
Color = rankData?.Color?.Color;
}

Expand All @@ -28,7 +29,7 @@ internal RankUpdate(WebcastRankUpdateMessage msg)
var rankData = msg?.Data?.RankData;
EventType = rankData?.Type;
Label = rankData?.Label;
Rank = rankData?.Details?.Label;
Rank = rankData?.Details?.FirstOrDefault()?.Label;
Color = rankData?.Color?.Color;
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using ProtoBuf;
using System.Collections.Generic;
using System.ComponentModel;
using TikTokLiveSharp.Models.Protobuf.Objects;
using TikTokLiveSharp.Models.Protobuf.Objects.DataObjects;
Expand Down Expand Up @@ -83,6 +84,10 @@ public partial class HeaderData : AProtoBase

[ProtoMember(3)]
public TikTokColor Color { get; set; }

// Not exactly the same data as user (e.g. the Picture in #25 is encased in another object, and stored at pos 1 in that object).
// [ProtoMember(4)]
// public List<User> AdditionalData { get; set; } = new List<User>();
}

[ProtoContract]
Expand Down
27 changes: 27 additions & 0 deletions TikTokLiveSharp/Models/Protobuf/Messages/WebcastEnvelopeMessage.cs
Original file line number Diff line number Diff line change
Expand Up @@ -41,5 +41,32 @@ public partial class EnvelopeUser : AProtoBase
[ProtoMember(4)]
[DefaultValue("")]
public string Id2 { get; set; } = "";

[ProtoMember(5)]
public uint Data2 { get; set; }

[ProtoMember(6)]
public uint Data3 { get; set; }

[ProtoMember(7)]
public ulong Timestamp1 { get; set; }

[ProtoMember(8)]
[DefaultValue("")]
public string Id1String { get; set; } = "";

[ProtoMember(9)]
public Picture Picture { get; set; }

[ProtoMember(10)]
[DefaultValue("")]
public string Timestamp2String { get; set; } = "";

[ProtoMember(11)]
[DefaultValue("")]
public string Id2String { get; set; } = "";

[ProtoMember(12)]
public uint Data4 { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@ public partial class WebcastGiftMessage : AProtoBase

[ProtoMember(32)]
public DataContainer Data10 { get; set; }

[ProtoMember(34)]
public uint Data11 { get; set; }
}

[ProtoContract]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using ProtoBuf;
using System.ComponentModel;
using TikTokLiveSharp.Models.Protobuf.Messages.Headers;
using TikTokLiveSharp.Models.Protobuf.Objects;

Expand All @@ -24,15 +25,58 @@ public partial class RankContainer : AProtoBase
public uint Data1 { get; set; }

[ProtoMember(2)]
public RankingData RankingData { get; set; }

[ProtoMember(3)]
public uint Data2 { get; set; }

[ProtoMember(4)]
public Ranking Rankings { get; set; }

[ProtoMember(5)]
public RankingData2 RankingData2 { get; set; }

[ProtoMember(6)]
public uint Data3 { get; set; }

[ProtoMember(7)]
public uint Data4 { get; set; }
}

[ProtoContract]
public partial class RankingData : AProtoBase
{
[ProtoMember(1)]
public uint Data1 { get; set; }

[ProtoMember(2)]
public Ranking RankData { get; set; }

[ProtoMember(3)]
[DefaultValue("")]
public string Data2 { get; set; } = "";
}

[ProtoContract]
public partial class RankingData2 : AProtoBase
{
[ProtoMember(1)]
public uint Data1 { get; set; }

[ProtoMember(2)]
public uint Data2 { get; set; }

[ProtoMember(3)]
public Ranking RankData { get; set; }

[ProtoMember(4)]
[DefaultValue("")]
public string Data3 { get; set; } = "";

[ProtoMember(5)]
public uint Data4 { get; set; }

[ProtoMember(6)]
public uint Data5 { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@ public partial class WebcastLikeMessage : AProtoBase
/// </summary>
[ProtoMember(8)]
public LikeDataContainer LikeData { get; set; }

[ProtoMember(9)]
public uint Data1 { get; set; }
}

[ProtoContract]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,17 @@ public partial class RankUpdateData : AProtoBase
public ulong Data3 { get; set; }

[ProtoMember(7)]
public RankColor2 Color2 { get; set; }
[DefaultValue("")]
public string Data4 { get; set; } = "";

[ProtoMember(8)]
public uint Data4 { get; set; }
public uint Data5 { get; set; }

[ProtoMember(9)]
public uint Data5 { get; set; }
public uint Data6 { get; set; }

[ProtoMember(10)]
public ulong Data7 { get; set; }
}

[ProtoContract]
Expand Down
3 changes: 2 additions & 1 deletion TikTokLiveSharp/Models/Protobuf/Objects/Ranking.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using ProtoBuf;
using System.Collections.Generic;
using System.ComponentModel;

namespace TikTokLiveSharp.Models.Protobuf.Objects
Expand All @@ -18,6 +19,6 @@ public partial class Ranking : AProtoBase
public TikTokColor Color { get; set; }

[ProtoMember(4)]
public ValueLabel Details { get; set; }
public List<ValueLabel> Details { get; set; } = new List<ValueLabel>();
}
}
2 changes: 1 addition & 1 deletion TikTokLiveSharp/TikTokLiveSharp.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<Version>0.9.1</Version>
<Version>0.9.3</Version>
<Authors>Frank van Hoof</Authors>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<PackageProjectUrl>https://github.com/sebheron/tiktoklivesharp</PackageProjectUrl>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<Version>0.9.1</Version>
<Version>0.9.3</Version>
</PropertyGroup>

<ItemGroup>
Expand Down
16 changes: 10 additions & 6 deletions TikTokLiveUnity/Samples~/Example/Scripts/GiftRow.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using TikTokLiveSharp.Events.MessageData.Objects;
using TikTokLiveUnity.Utils;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
Expand Down Expand Up @@ -94,12 +95,15 @@ private void StreakFinished(TikTokGift gift, uint finalAmount)
/// <param name="picture">Data for Image</param>
private void RequestImage(Image img, Picture picture)
{
if (TikTokLiveManager.Exists)
TikTokLiveManager.Instance.RequestSprite(picture, spr =>
{
if (img != null)
img.sprite = spr;
});
// Dispatcher.RunOnMainThread(() =>
// {
// if (TikTokLiveManager.Exists)
// TikTokLiveManager.Instance.RequestSprite(picture, spr =>
// {
// if (img != null)
// img.sprite = spr;
// });
// });
}
#endregion
}
Expand Down
14 changes: 9 additions & 5 deletions TikTokLiveUnity/Samples~/Example/Scripts/TikTokLiveExample.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using TikTokLiveSharp.Client;
using TikTokLiveSharp.Events.MessageData.Messages;
using TikTokLiveSharp.Events.MessageData.Objects;
using TikTokLiveUnity.Utils;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
Expand Down Expand Up @@ -203,11 +204,14 @@ private void OnComment(TikTokLiveClient sender, Comment comment)
/// <param name="picture">Data for Image</param>
private void RequestImage(Image img, Picture picture)
{
mgr.RequestSprite(picture, spr =>
{
if (img != null)
img.sprite = spr;
});
// Dispatcher.RunOnMainThread(() =>
// {
// mgr.RequestSprite(picture, spr =>
// {
// if (img != null)
// img.sprite = spr;
// });
// });
}
/// <summary>
/// Updates Status-Panel based on ConnectionState
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "dev.vanhoof.tiktokliveunity",
"displayName": "TikTokLive Unity",
"description": "TikTokLive-Client for Unity",
"version": "0.9.2",
"version": "0.9.3",
"author": {
"name": "Frank van Hoof",
"email": "frank_van_hoof@hotmail.com",
Expand Down
45 changes: 39 additions & 6 deletions tiktok_schema.proto
Original file line number Diff line number Diff line change
Expand Up @@ -388,7 +388,7 @@ message Ranking {
string type = 1;
string label = 2;
TikTokColor color = 3;
ValueLabel details = 4;
repeated ValueLabel details = 4;
}

message TikTokColor {
Expand Down Expand Up @@ -609,6 +609,14 @@ message WebcastEnvelopeMessage {
uint32 data1 = 2;
string username = 3;
string id2 = 4;
uint32 data2 = 5;
uint32 data3 = 6;
uint64 timestamp1 = 7;
string id1string = 8;
Picture picture = 9;
string timestamp2string = 10;
string id2string = 11;
uint32 data4 = 12;
}
}

Expand Down Expand Up @@ -668,6 +676,7 @@ message WebcastGiftMessage {
GiftDetails1 firstGift2 = 27;
GiftDetails2 data9 = 31;
DataContainer data10 = 32;
uint32 data11 = 34;

message GiftData1 {
string data1 = 1;
Expand Down Expand Up @@ -711,10 +720,27 @@ message WebcastHourlyRankMessage {

message RankContainer {
uint32 data1 = 1;
uint32 data2 = 2;
RankingData rankingdata = 2;
uint32 data2 = 3;
Ranking rankings = 4;
RankingData2 rankingdata2 = 5;
uint32 data3 = 6;
uint32 data4 = 7;

message RankingData {
uint32 data1 = 1;
Ranking rankdata = 2;
string data2 = 3;
}

message RankingData2 {
uint32 data1 = 1;
uint32 data2 = 2;
Ranking rankdata = 3;
string data3 = 4;
uint32 data4 = 5;
uint32 data5 = 6;
}
}
}

Expand All @@ -737,7 +763,8 @@ message WebcastLikeMessage {
uint64 totalLikes = 3;
User sender = 5; // Sender of Like(s)
LikeDataContainer likeData = 8; // Not always filled. The one in Header IS filled.

uint32 data1 = 9;

message LikeDataContainer {
uint64 data1 = 1;
LikeData likeData = 2;
Expand Down Expand Up @@ -1041,9 +1068,10 @@ message WebcastRankUpdateMessage {
Ranking rankData = 3;
RankColor color = 4;
uint64 data3 = 6;
RankColor2 color2 = 7;
uint32 data4 = 8;
uint32 data5 = 9;
string data4 = 7;
uint32 data5 = 8;
uint32 data6 = 9;
uint64 data7 = 10;

message RankColor {
string color = 4;
Expand Down Expand Up @@ -1171,6 +1199,11 @@ message HeaderData {
string messageType = 1;
string details = 2;
TikTokColor color = 3;

// Not entirely parsed yet.
// Not exactly the same data as user (e.g. the Picture in #25 is encased in another object, and stored at pos 1 in that object).
// Some objects only hold images, some only hold other data. These aren't exactly users, but their format is fairly close.
// repeated User additionaldata = 4;
}

message ControlData {
Expand Down

0 comments on commit 38c8059

Please sign in to comment.