Xibo text/rss/dataset region is flickering

I am trying to create a digital menu board that has a capability to edit items. I am successful with that using text/rss/dataset region however I need to set the duration atleast 5 or 10 seconds to update it instantly. My update is set to 0 for checking. The content updates, the only problem is the “text” content is flickering or blinking. Sorry for bad english. May I ask if there is a workaround for this one?

I assume you are talking about designer/preview, do you really need it updated so often? Keep in mind that when client comes to play, there will also be collection interval of the client.

Normally you would see a quick blink when whole layout is reloaded (in the client) - that would happen when the region with the longest duration will end. Depending on that duration and collection interval player will be able to download new/updated content.

The thing that you see now, is probably due to update set to 0, which means it’s constantly updating(reloading) the region.

Hi Peter,

We only need to update the price of our digital menu board instantly. The quick blink only happens on the text file, when we try to use image, it does not blink. I set the update to zero so that when someone tries to edit the region that has text, it will reflect instantly. Is there other way we can do?

When you say ‘update is set to 0’ do you mean this field? We would not recommend it to be so low (besides as I said player will get updated version depending on it’s collection interval anyway)

When you edit text in the region in designer it will be updated instantly in the CMS (same when you edit row/column of dataset in library - dataset).

But I would imagine that you will want to send this layout to the player (Windows/Android client), right?
When the layout is playing in the client, and you make changes to this layout in CMS, player will show updated version depending on the region with the longest duration that you have on your layout and collection interval of the player - which is set in the display profile.

You may want to have a look here too:

Thanks for the reply. I understand that my dataset/ text region will be updated based on the region with longest duration. I try to set text region to 2 seconds so that it will be updated instantly. The only problem with this one is that the text is blinking. It is like this:

https://mdn.mozillademos.org/files/490/HTMLBlinkElement.gif

Is there any workaround to stop this?

deathscythe,

As Peter has posted for you…

The system is doing exactly what you are telling it to do. Each time the region is played for the set amount of time, the system then reloads the data. It can only do this by refreshing. Just like when you hit the reload button on your web browser, you will see the system rebuild the region, which you perceive as the text blinking. There really is no way around this but to extend the duration.

Are the prices really changing that quickly that they need to be updated instantly? Or are you just wanting to see the changes more quickly? If you just want to see the changes more quickly, you could stop and restart the client. This would cause the client to refresh the data when it loads the first time.

Thanks cslaughter,

I see restarting the client is the best option. I have tried this work around. I created a webpage with ajax to refresh contents automatically. It only contains the text region and voila no blinking of text. But this is only effective if we have good internet connection. Once we restart our device and there is no internet connection, the layout goes away, is there anyway that xibo can save the html contents of a webpage for offline use?

Deathscythe,

:smile: I was going to suggest using Java but I didn’t know how versed you are with it.

I do not believe that currently there is a way to cache offline webpages:

Why isn’t your internet connection automatically coming back after a reboot? I think if you solve that and use the AJAX work around, that would be your best solution.

Internet is a problem here in our country. I’m only prepping for a worse case scenario. I don’t want my menu board display nothing just because internet is down. What I’m planning is send a generic text file to my device then use an embbeded html then parse the text. That way the only thing I need to update is the text file then again with AJAX it can refresh the page automatically. Is it possible to send a text file in a specific location?

What I really don’t understand here is it only happens only in text but if I try to use image, the blinking effect does not happen.

deathscythe,

You are just one step ahead of me.

You can assign media manually to displays. It would then be in the client’s local library. Unfortunately I have never done this besides for fonts, so I am unsure how you would reference the file from a layout. Pete, Alex, or Dan will know much more about that than I. You might also be able to FTP a file to a location on the client.

Alex or Dan, I think, would have the answer on that.

Thanks for this one cslaughter

Your welcome.

When you do get it figured out, I think your solution may help a few other people who have similar needs based on content refresh and bandwidth / internet connection problems. So, If you wouldn’t mind, I think it would help others if you share how you get it all working in the end.

Will share it as long I found a work around for this. But for now the best option (if there is a good internet connect) is a webpage with AJAX. May check this implementation:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
 <script type='text/javascript'>
     $(document).ready(function(){
         refreshData();
     });
     var delay = 1000; //delay of refresh in milliseconds
     function refreshData(){
      $('#myID').load('some_info.php', function(){
            setTimeout(refreshData, delay);
            });
      }    
</script>

And then I created a region with webpage content that has duration of 86400 secs then repeat daily. So as long as I updated my data on my php file, it will be automatically updated.

Seems reasonable to me once combined with figuring out how to get a file uploaded and accessible to the local client.

Embedded HTML and Files associated to displays/display groups are stored in the same local library location, so you can reference them using relative paths (i.e. just the file name).

blink explanation

Basically this comes down to the fact you are using the duration in a manner it wasn’t intended for. Admittedly as a workaround for not being able to have a live updating text/dataset/ticker/etc.

When an item in a region ends it is torn down and rebuilt. It is quicker to do that with an image than it is to do that with a web browser, hence the blink.

Ultimately the solution is for live updating - i.e. updating the items being shown without expiring their region. There is provision for this, but its not implemented at present.

1 Like

Thank you Dan for the explanation. I always like knowing more about the internal workings of the software. I am looking forward to:

1 Like

Thanks Dan for the explanation. Live update pretty works well, as of now we are using AJAX and web page to have live update.

I’m pleased you have a workaround while the built in implementation is still pending.