I am seeing the following issue with the connected Twitch streams on my site:

Streams appear to be working normally, though the lack of a preview image seems unappealing. Will I have to manually add a preview image or are Twitch streams supposed to have a preview image auto-generated?
This is happening on the "Streams" page as well as the "Streams" sidebar.
Will I have to manually add a preview image or are Twitch streams supposed to have a preview image auto-generated?
Yes, they are supposed to have some sort of "auto-generated" preview image.
Did you read the notes here https://github.com/Contentify/Contentify/wiki/Built-In-Modules#streams in the "Streams" section?
Ah, I see that the framework doesn't include the necessary cronjob by default. Just out of curiosity, is there a particular reason for this? I'm not too familiar with setting up cronjobs so if you can point me in the right direction for how I would go about doing this, I'd greatly appreciate it!
After doing some digging, I've got it set up so that cron-job.org is firing every minute (is this overkill?) targeting http://107.170.242.209/jobs.
When I access that page, I get the response "1" - but I'm still not seeing the thumbnail or view count updates. I have a "test stream" that's one of Twitch's marathons, and it's streaming 24/7 so it should be working, right?

Here's a screenshot of the database results when I look up the streams. Seems like they aren't getting renewed by the cronjob :-/
Ah, I see that the framework doesn't include the necessary cronjob by default. Just out of curiosity, is there a particular reason for this?
Well... basically a cronjob is just an entry in the cronjob table of your OS (Linux). Adding such an entry is not a task of the CMS. That's kinda like asking "I bought a new car but now I see that it is not shipped with a garage. Is there a particular reason for this?" ;)
I'm not too familiar with setting up cronjobs so if you can point me in the right direction for how I would go about doing this, I'd greatly appreciate it!
From the readme file of the Jobs package:
If your application is built on top of Laravel, you will have access to an Artisan command: php artisan jobs This command will call Jobs::run() to execute the jobs. Therefore you can add a Cron job to start the command, for example 10 * * * * php /var/www/laravel/artisan jobs. This will execute the Artisan command every ten minutes. Laravel recommends to run the Cron job every minute.
The console command to add a cron job (if your OS is Linux) is: crontab -e
After doing some digging, I've got it set up so that cron-job.org is firing every minute (is this overkill?)
I think this is perfect. I would choose the same interval.
Seems like they aren't getting renewed by the cronjob
Did you read this hint? https://github.com/Contentify/Contentify/wiki/FAQ#how-can-i-embed-twitch-streams
I have the API key in, that's not the issue (as far as I can tell).
-SOMETHING- is preventing the streams from being updated. Do I need to make any edits to the jobs.php?
`
namespace AppJobs;
use Illuminate\Bus\Queueable;
abstract class Job
{
/*
|--------------------------------------------------------------------------
| Queueable Jobs
|--------------------------------------------------------------------------
|
| This job base class provides a central location to place any logic that
| is shared across all of your jobs. The trait included with the class
| provides access to the "queueOn" and "delay" queue helper methods.
|
*/
use Queueable;
}`
On cron-job.org, does the request method matter? Currently it's set to GET (the default)... Should it be something else.
Sorry for the hand-holding, but I've dug through all the previous support on this topic and I feel like there's some important piece I'm missing.
-SOMETHING- is preventing the streams from being updated. Do I need to make any edits to the jobs.php?
Did you took a look at the error log(s)?
CMS log: backend -> website -> "Configuration" -> "Log File" (you can click on the entries of the log to expand them)
Apache log (in case the website runs on Apache) - position of the apache error log differs so you have to find it on your own
-SOMETHING- is preventing the streams from being updated. Do I need to make any edits to the jobs.php?
No, that's perfect.
Sorry for the delayed response,
I cleared the log and accessed the /jobs page, and got this in the log as a result:
[2017-03-16 10:16:56] production.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Call to undefined function App\Modules\Streams\curl_init()' in /var/www/html/app/Modules/Streams/StreamApi.php:13
Stack trace:0 {main}
Update! It seems cURL was missing? Or rather, an extension of it?
Using SSH and "sudo apt-get install curl libcurl3 libcurl3-dev;" followed by a server restart _seemed_ to fix the issue. I want to make sure all the streams are updating though before I consider it fixed, but I'm pretty sure I'll be good.
@matt-marek Did it help? :)
Yes! I needed to give thorough testing before I could say for certain, but our test stream (Twitch's 24/7 Power Ranger Marathon) has been updating regularly, and when my team was streaming last night everything was loading in fine so I think this can be considered closed.
To recap, the order of things I did to fix the issue:
Hope this helps someone who might run into a similar issue!
I reponed this issue (as a reminder for me), because I believe some of the problems you faced should be handled in a better way by the CMS. For example it might be a good idea if the CMS checks if cURL is installed and if it is not it should notify the owner.
Would it be possible to have an overall dependency checker implemented? I thought there was one during setup (it did miss cURL) but for non-devs, it might be useful.
Yes, there is a "pre-installer" before the actual setup that does some checking but it does not check for cURL: https://github.com/Contentify/Contentify/blob/2.0/public/install.php#L69
What would be the difference between the current checker and a checker that implements your idea? I did not get it yet...
Created a pull request for the cURL-check. https://github.com/Contentify/Contentify/pull/150
(I cannot test it right now.)
I would think something along the lines of what is currently there during the install, but accessible from the CMS back-end under configuration - maybe alongside PHP info/optimize database.
It could provided a simple output of the installed dependencies, if they're outdated, missing, etc.
can u add default image background? for at least see a default twitch image instead a blank space.
There already is a default image that shows. See the screenshot, for streams that have gone online at least once, the purple Twitch picture shows. For streams that aren't properly linked up or haven't been online once yet, you get a blank icon.
