Go to Page... |
INITIALIZED()
HISTORY_RESCAN_STARTED(integer guildId, integer category)
HISTORY_RESCAN_ENDED(integer guildId, integer category, integer numEventsBefore, integer numEventsInside, integer numEventsAfter, boolean foundInvalidEvents)
RegisterCallback(LibHistoire.callback type, function callback)
UnregisterCallback(LibHistoire.callback type, function callback)
LibHistoire.GuildHistoryEventListener listener = CreateGuildHistoryListener(integer guildId, integer category)
string key = GetKey()
integer guildId = GetGuildId()
integer category = GetCategory()
integer eventCount, number processingSpeed, number timeLeft = GetPendingEventMetrics()
boolean success = SetAfterEventId(id64 eventId)
boolean success = SetAfterEventTime(integer eventTime)
boolean success = SetBeforeEventId(id64 eventId)
boolean success = SetBeforeEventTime(integer eventTime)
boolean success = SetIterationCompletedCallback(function callback)
boolean success = SetTimeFrame(integer startTime, integer endTime)
boolean success = SetNextEventCallback(function callback)
function(GuildEventType eventType, id64 eventId, integer eventTime, variable param1, variable param2, variable param3, variable param4, variable param5, variable param6)
boolean success = SetMissedEventCallback(function callback)
boolean success = SetEventCallback(function callback)
boolean success = Start()
boolean success = Stop()
boolean success = IsRunning()
LibHistoire:RegisterCallback(LibHistoire.callback.INITIALIZED, function() local listener = LibHistoire:CreateGuildHistoryListener(guildId, category) listener:SetEventCallback(function(eventType, eventId, eventTime, param1, param2, param3, param4, param5, param6) -- do something with the event data end) listener:Start() end)
LibHistoire:RegisterCallback(LibHistoire.callback.INITIALIZED, function() local listener = LibHistoire:CreateGuildHistoryListener(guildId, category) listener:SetTimeFrame(startTime, endTime) listener:SetNextEventCallback(function(eventType, eventId, eventTime, param1, param2, param3, param4, param5, param6) -- do something with the event data end) listener:Start() end)
LibHistoire:RegisterCallback(LibHistoire.callback.INITIALIZED, function() local function SetUpListener(guildId, category) local listener = LibHistoire:CreateGuildHistoryListener(guildId, category) local key = listener:GetKey() listener:SetAfterEventId(StringToId64(saveData.lastEventId[key])) listener:SetNextEventCallback(function(eventType, eventId, eventTime, param1, param2, param3, param4, param5, param6) -- the events received by this callback are in the correct historic order saveData.lastEventId[key] = Id64ToString(eventId) end) listener:SetMissedEventCallback(function(eventType, eventId, eventTime, param1, param2, param3, param4, param5, param6) -- events in this callback are out of order compared to what has been received by the next event callback and can even have an eventId smaller than what has been specified via SetAfterEventId. end) listener:Start() end for i = 1, GetNumGuilds() do SetUpListener(GetGuildId(i), category) end end)
NOTE: No data was lost and I believe I've found and fixed all incorrect cases and added unit tests to guard against regressions. As an additional measure the lib will now also throw an assertion error if it encounters links that cannot be decoded. Please make sure to report these so I can add them to the test cases and fix them!
- GetKey - returns an identifier which can be used to store the last seen eventId for a listenerv1.0.2
- GetGuildId - returns the guildId of a listener
- GetCategory - returns the category of a listener
- GetPendingEventMetrics - returnsthe amount of stored or unlinked events that are currently waiting to be processed by the listener- SetBeforeEventId, SetBeforeEventTime
the average processing speed in events per second or -1 if not enough data is yet available
the estimated time in seconds it takes to process the remaining events or -1 if no estimate is possiblethese can be used to limit the iteration range and automatically stop the listener when they are passed- SetIterationCompletedCallback
they will also ensure the correct data is returned by the GetPendingEventMetrics function when only a subset of the data is requested (otherwise it will consider all available events)when an end criteria is set, this callback will fire when the listener has stopped automatically- SetTimeFrame(startTime, endTime)a convenience method to specify a range which includes the startTime and excludes the endTime
File Name |
Version |
Size |
Uploader |
Date |
1.1.2 |
118kB |
sirinsidiator |
12/05/20 02:33 PM |
|
1.1.1 |
118kB |
sirinsidiator |
12/05/20 09:47 AM |
|
1.1.0 |
118kB |
sirinsidiator |
12/04/20 07:01 AM |
|
1.0.2 |
115kB |
sirinsidiator |
10/31/20 05:32 AM |
|
1.0.1 |
115kB |
sirinsidiator |
10/25/20 04:32 PM |
![]() |
Comment Options |
![]() |
||||
Btw I only used it because I noticed these 2 guilds had hardly any updates for some time and the bar on the left for these 2 were partially filled orange for the 2 days I was checking. I played about 8 hours during each of the 2 days. But you are right I would not expect to use it and that was the only time since installing the Lib a long time ago. Just thought I should try and see how the manual link worked ![]()
__________________
Addons: Currency Manager: https://www.esoui.com/downloads/info...ager.html#info InCombat: https://www.esoui.com/downloads/file...p?id=2268#info |
||||
![]() |
![]() |
Onigar |
View Public Profile |
Send a private message to Onigar |
Send email to Onigar |
Find More Posts by Onigar |
Add Onigar to Your Buddy List |
![]() |
||||
__________________
https://www.imperialtradingcompany.eu/ - My Addons - The Vault (Early updates and experimental projects) - My patreon - My blog
|
||||
![]() |
![]() |
sirinsidiator |
View Public Profile |
Send a private message to sirinsidiator |
Send email to sirinsidiator |
Find More Posts by sirinsidiator |
Add sirinsidiator to Your Buddy List |
![]() |
||
![]() Just to fully understand. After a manual link there wil be a "hole" in the stored data and this is not visibly indicated anywhere but pressing the rescan button 1 time will be enough to fix the hole?
__________________
Addons: Currency Manager: https://www.esoui.com/downloads/info...ager.html#info InCombat: https://www.esoui.com/downloads/file...p?id=2268#info |
||
![]() |
![]() |
Onigar |
View Public Profile |
Send a private message to Onigar |
Send email to Onigar |
Find More Posts by Onigar |
Add Onigar to Your Buddy List |
![]() |
|||
When everything is blue, it means you got all guilds and categories stored inside LibHistoire. However when you press the force link button, it means it will simply take the currently available data and mark that category as up to date, even when you do not have all the potentially available data loaded. For example when you did not log in for a week and then press force link immediately after logging in, it will mark the category as up to date and no longer try to automatically load the missing data for that week. That's what it means with there will be a hole in the history. You can however manually request the history data and then press the rescan button afterwards and it will check for missing events and store them as needed.
__________________
https://www.imperialtradingcompany.eu/ - My Addons - The Vault (Early updates and experimental projects) - My patreon - My blog
|
|||
![]() |
![]() |
sirinsidiator |
View Public Profile |
Send a private message to sirinsidiator |
Send email to sirinsidiator |
Find More Posts by sirinsidiator |
Add sirinsidiator to Your Buddy List |
![]() |
|
Sorry for this simple question but;
I had partial orange bars for 2 guilds and the sales history bars for both of them were empty. I clicked on the icon to link history and now everything is blue but the note says there will be a hole in the history so, In the LibHistiore window when all the bars for each guild (left) and all the bars for each individual guild history group (right) are fully filled light blue then is everything up to date?
__________________
Addons: Currency Manager: https://www.esoui.com/downloads/info...ager.html#info InCombat: https://www.esoui.com/downloads/file...p?id=2268#info
Last edited by Onigar : 01/17/21 at 04:10 AM.
|
|
![]() |
![]() |
Onigar |
View Public Profile |
Send a private message to Onigar |
Send email to Onigar |
Find More Posts by Onigar |
Add Onigar to Your Buddy List |
kevin36 |
View Public Profile |
Send a private message to kevin36 |
Send email to kevin36 |
Find More Posts by kevin36 |
Add kevin36 to Your Buddy List |
![]() |
|||
That aside, I've been using the rescan feature weekly ever since I wrote the library and haven't found a single missed event so far. At this point it's pretty safe to say that rescanning is not necessary except for two cases: 1) when you install LibHistoire for the first time and want to get it to store more than the initial 100 events 2) when you force linked a category and want it to pick up the missing events later There's also a third case when your rank or permissions in a guild change, but that's detected by the lib and the rescan is triggered automatically.
__________________
https://www.imperialtradingcompany.eu/ - My Addons - The Vault (Early updates and experimental projects) - My patreon - My blog
|
|||
![]() |
![]() |
sirinsidiator |
View Public Profile |
Send a private message to sirinsidiator |
Send email to sirinsidiator |
Find More Posts by sirinsidiator |
Add sirinsidiator to Your Buddy List |
![]() |
|
Forum posts: 0
File comments: 51
Uploads: 0
|
In the last update if I click the button "Rescan history of missing events" (Guild, aliance war, bank, sales)
it shows me this error all the time user:/AddOns/LibHistoire/PerformanceTracker.lua:81: operator < is not supported for number < nil stack traceback: user:/AddOns/LibHistoire/PerformanceTracker.lua:81: in function 'PerformanceTracker:GetProcessingSpeedAndEstimatedTimeLeft' |caaaaaa<Locals> self = [table:1]{lastEventCountSlot = -1, processingSpeed = -1}, speed = -1, time = 0 </Locals>|r user:/AddOns/LibHistoire/guildHistoryCache/GuildHistoryCacheCategory.lua:715: in function 'GuildHistoryCacheCategory:GetPendingEventMetrics' |caaaaaa<Locals> self = [table:2]{progress = 1, missingTime = 0, waitForMore = 4650, eventIndexLookupDirty = F, key = "EU Megaserver/31779/3", progressDirty = F, guildId = 31779, category = 3, lastIndex = 275} </Locals>|r user:/AddOns/LibHistoire/guildHistoryCache/GuildHistoryStatusTooltip.lua:47: in function 'GuildHistoryStatusTooltip:Show' |caaaaaa<Locals> self = [table:3]{}, target = ud, cache = [table:2], tooltip = ud, firstStoredEvent = [table:4]{}, lastStoredEvent = [table:5]{}, shouldUnregisterForUpdate = T </Locals>|r user:/AddOns/LibHistoire/guildHistoryCache/GuildHistoryStatusWindow.lua:152: in function '(anonymous)' |caaaaaa<Locals> entry = [table:6]{label = "Sales", value = 3, selected = F} </Locals>|r |
![]() |
![]() |
kevin36 |
View Public Profile |
Send a private message to kevin36 |
Send email to kevin36 |
Find More Posts by kevin36 |
Add kevin36 to Your Buddy List |
![]() |
|||
Re: New progress messages
![]() There are still more things I plan to add in that direction, but I wanted to get this one out the door first.
__________________
https://www.imperialtradingcompany.eu/ - My Addons - The Vault (Early updates and experimental projects) - My patreon - My blog
|
|||
![]() |
![]() |
sirinsidiator |
View Public Profile |
Send a private message to sirinsidiator |
Send email to sirinsidiator |
Find More Posts by sirinsidiator |
Add sirinsidiator to Your Buddy List |
![]() |
|
Forum posts: 7
File comments: 72
Uploads: 0
|
New progress messages
The new messages are SO much appreciated. Now we know that we've retrieved all the events and we can see what's happening in the background. Waiting for unknown delays, and hoping that the system isn't hung, is always frustrating. Good feedback makes any system easier and more pleasant to use. Thanks!
|
![]() |
![]() |
spinality |
View Public Profile |
Send a private message to spinality |
Send email to spinality |
Find More Posts by spinality |
Add spinality to Your Buddy List |
![]() |
|||
__________________
https://www.imperialtradingcompany.eu/ - My Addons - The Vault (Early updates and experimental projects) - My patreon - My blog
|
|||
![]() |
![]() |
sirinsidiator |
View Public Profile |
Send a private message to sirinsidiator |
Send email to sirinsidiator |
Find More Posts by sirinsidiator |
Add sirinsidiator to Your Buddy List |
![]() |
|
Forum posts: 0
File comments: 5
Uploads: 0
|
Which addons use this?
A buddy has it and was wondering what addon required it? Thanks! |
![]() |
![]() |
gamingneeds |
View Public Profile |
Send a private message to gamingneeds |
Send email to gamingneeds |
Find More Posts by gamingneeds |
Add gamingneeds to Your Buddy List |
![]() |
|||
i just do remember things like shissus guild mail had such a cool down as example, but sure, worked otherwise. i also wish i had a note-change-cooldown in the past to rush through guild rosters with my gm work as example instead of sitting there for an hour beeing artificially slowed down by zos or risking getting one kick after another (i got my acc 30min cooldown once after 3 or 4 kicks :]) i am sure there are also a lot of users for this type of activity, who would spam e without minding this might get them kicked from server. edit: hmmm maybe this would make a good standalone addon. a cooldown-compendium for multiple activities :O
__________________
resigned GM Just Traders (EU Belkarth) Tamriel Stock Exchange (EU Rawl'Kha) Bait Trading House (EU Wayrest)
Last edited by Verbalinkontinenz : 11/10/20 at 11:15 AM.
|
|||
![]() |
![]() |
Verbalinkontinenz |
View Public Profile |
Send a private message to Verbalinkontinenz |
Send email to Verbalinkontinenz |
Find More Posts by Verbalinkontinenz |
Add Verbalinkontinenz to Your Buddy List |
![]() |
||
Forum posts: 0
File comments: 58
Uploads: 0
|
![]() |
|
![]() |
![]() |
Kwoung |
View Public Profile |
Send a private message to Kwoung |
Send email to Kwoung |
Find More Posts by Kwoung |
Add Kwoung to Your Buddy List |
![]() |
||||
From the description of LibHistoire:
__________________
https://www.imperialtradingcompany.eu/ - My Addons - The Vault (Early updates and experimental projects) - My patreon - My blog
Last edited by sirinsidiator : 11/04/20 at 01:18 PM.
|
||||
![]() |
![]() |
sirinsidiator |
View Public Profile |
Send a private message to sirinsidiator |
Send email to sirinsidiator |
Find More Posts by sirinsidiator |
Add sirinsidiator to Your Buddy List |
![]() |
You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.