1. Go to this page and download the library: Download romanzipp/laravel-twitch library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
romanzipp / laravel-twitch example snippets
$twitch = new romanzipp\Twitch\Twitch;
$twitch->setClientId('abc123');
// Get User by Username
$result = $twitch->getUsers(['login' => 'herrausragend']);
// Check, if the query was successful
if ( ! $result->success()) {
return null;
}
// Shift result to get single user data
$user = $result->shift();
return $user->id;
use romanzipp\Twitch\Facades\Twitch;
Twitch::withClientId('abc123')->withToken('abcdef123456')->getUsers();
use romanzipp\Twitch\Twitch;
$twitch = new Twitch;
do {
$nextCursor = null;
// If this is not the first iteration, get the page cursor to the next set of results
if (isset($result)) {
$nextCursor = $result->next();
}
// Query the API with an optional cursor to the next results page
$result = $twitch->getTopGames(['first' => 100], $nextCursor);
foreach ($result->data() as $item) {
// Process the games result data
}
// Continue until there are no results left
} while ($result->hasMoreResults());
use romanzipp\Twitch\Twitch;
$twitch = new Twitch;
$result = $twitch->getUsersFollows(['to_id' => 654321]);
$result->insertUsers($twitch, 'from_id', 'from_user');
namespace App\Http\Controllers;
use romanzipp\Twitch\Http\Controllers\EventSubController as BaseController;
use Symfony\Component\HttpFoundation\Response;
class EventSubController extends BaseController
{
public function handleChannelFollowNotification(array $payload): Response
{
return $this->successMethod(); // handle the channel follow notification...
}
protected function handleNotification(array $payload): Response
{
return $this->successMethod(); // handle all other incoming notifications...
}
protected function handleRevocation(array $payload): Response
{
return $this->successMethod(); // handle the subscription revocation...
}
}
use App\Http\Controllers\EventSubController;
Route::post(
'twitch/eventsub/webhook',
[EventSubController::class, 'handleWebhook']
);
use romanzipp\Twitch\Twitch;
$twitch = new Twitch;
$result = $twitch->getEventSubs(['status' => 'notification_failures_exceeded']);
foreach ($result->data() as $item) {
// process the subscription
}
use romanzipp\Twitch\Twitch;
$twitch = new Twitch;
$twitch->unsubscribeEventSub([
'id' => '932b34ad-821a-490f-af43-b327187d0f5c'
]);
namespace App\Auth;
use App\User;
use romanzipp\Twitch\Auth\TwitchUserProvider;
use Illuminate\Contracts\Auth\Authenticatable;
class TwitchUserProvider extends TwitchUserProvider
{
public function retrieveById($identifier): ?Authenticatable
{
/** @var User $user */
$user = User::query()->whereKey($identifier)->first();
return $user;
}
// This method is optional, if you don't want automatic user creation on request.
public function createFromTwitchToken($decoded): ?Authenticatable
{
return User::createFromTwitchToken($decoded);
}
}
use App\Auth\TwitchUserProvider;
use romanzipp\Twitch\Auth\TwitchExtensionGuard;
use romanzipp\Twitch\Auth\TwitchUserProvider;
public function boot()
{
...
$this->app->bind(TwitchUserProvider::class, Auth\TwitchUserProvider::class);
TwitchExtensionGuard::register(config('twitch-api.ext_secret'));
}
public function startCommercial(array $parameters = [])
public function getExtensionAnalytics(array $parameters = [])
public function getGameAnalytics(array $parameters = [])
public function getCheermotes(array $parameters = [])
public function getBitsLeaderboard(array $parameters = [])
public function getExtensionTransactions(array $parameters = [])
public function createCustomRewards(array $parameters = [], array $body = [])
public function deleteCustomReward(array $parameters = [])
public function getCustomReward(array $parameters = [])
public function getCustomRewardRedemption(array $parameters = [], ?Paginator $paginator = NULL)
public function updateCustomReward(array $parameters = [], array $body = [])
public function updateRedemptionStatus(array $parameters = [], array $body = [])
public function getChannels(array $parameters = [])
public function updateChannels(array $parameters = [], array $body = [])
public function getChannelEditors(array $parameters = [])
public function getChannelFollowers(array $parameters = [], ?Paginator $paginator = NULL)
public function getChannelsFollowed(array $parameters = [], ?Paginator $paginator = NULL)
public function getCharityCampaign(array $parameters = [])
public function getChannelChatEmotes(array $parameters = [])
public function getGlobalChatEmotes()
public function getChatEmoteSets(array $parameters = [])
public function getChannelChatBadges(array $parameters = [])
public function getGlobalChatBadges()
public function getChatSettings(array $parameters = [])
public function updateChatSettings(array $parameters, array $body = [])
public function sendChatAnnouncement(array $parameters = [], array $body = [])
public function getUserChatColor(array $parameters = [])
public function updateUserChatColor(array $parameters = [])
public function getChatters(array $parameters = [], ?Paginator $paginator = NULL)
public function sendShoutout(array $parameters = [])
public function createClip(array $parameters = [])
public function getClips(array $parameters = [], ?Paginator $paginator = NULL)
public function createEntitlementUrl(array $parameters = []) // DEPRECATED
public function getEntitlementsCodeStatus(array $parameters = [])
public function getDropsEntitlements(array $parameters = [])
public function redeemEntitlementsCode(array $parameters = [])
public function updateDropsEntitlements(array $parameters = [], array $body = [])
public function subscribeEventSub(array $parameters = [], array $body = [])
public function unsubscribeEventSub(array $parameters = [])
public function getEventSubs(array $parameters = [], ?Paginator $paginator = NULL)
public function getAuthedUserExtensions()
public function getAuthedUserActiveExtensions()
public function disableAllExtensions()
public function disableUserExtensionById(?string $parameter = NULL)
public function disableUserExtensionByName(?string $parameter = NULL)
public function updateUserExtensions(?string $method = NULL, ?string $parameter = NULL, bool $disabled = false)
public function getExtensionConfigurationSegment(array $parameters = [])
public function setExtensionConfigurationSegment(array $body = [])
public function setExtensionRequiredConfiguration(array $parameters = [], array $body = [])
public function sendExtensionPubSubMessage(array $body = [])
public function getExtensionLiveChannels(array $parameters = [], ?Paginator $paginator = NULL)
public function getExtensionSecrets(array $parameters = [])
public function createExtensionSecret(array $parameters = [])
public function sendExtensionChatMessage(array $parameters = [], array $body = [])
public function getExtensions(array $parameters = [])
public function getReleasedExtensions(array $parameters = [])
public function getExtensionBitsProducts(array $parameters = [])
public function updateExtensionBitsProduct(array $parameters = [], array $body = [])
public function getTopGames(array $parameters = [], ?Paginator $paginator = NULL)
public function getGames(array $parameters = [])
public function getCreatorGoals(array $parameters = [])
public function getHypeTrainEvents(array $parameters = [])
public function checkAutoModStatus(array $parameters = [], array $body = [])
public function getBannedUsers(array $parameters = [], ?Paginator $paginator = NULL)
public function getBannedEvents(array $parameters = [], ?Paginator $paginator = NULL) // DEPRECATED
public function getModerators(array $parameters = [], ?Paginator $paginator = NULL)
public function getModeratorEvents(array $parameters = [], ?Paginator $paginator = NULL) // DEPRECATED
public function manageHeldAutoModMessages(array $parameters = [], array $body = [])
public function getAutoModSettings(array $parameters = [])
public function updateAutoModSettings(array $parameters = [], array $body = [])
public function banUser(array $parameters = [], array $body = [])
public function unbanUser(array $parameters = [])
public function getBlockedTerms(array $parameters = [], ?Paginator $paginator = NULL)
public function addBlockedTerm(array $parameters = [], array $body = [])
public function removeBlockedTerm(array $parameters = [])
public function deleteChatMessages(array $parameters = [])
public function addChannelModerator(array $parameters = [])
public function removeChannelModerator(array $parameters = [])
public function getVIPs(array $parameters = [], ?Paginator $paginator = NULL)
public function addChannelVIP(array $parameters = [])
public function removeChannelVIP(array $parameters = [])
public function getShieldModeStatus(array $parameters = [])
public function updateShieldModeStatus(array $parameters = [], array $body = [])
public function getSoundtrackCurrentTrack(array $parameters = [])
public function getSoundtrackPlaylist(array $parameters = [], ?Paginator $paginator = NULL)
public function getSoundtrackPlaylists(array $parameters = [])
public function getOAuthAuthorizeUrl(string $responseType = 'code', array $scopes = [], ?string $state = NULL, bool $forceVerify = false)
public function getOAuthToken(?string $code = NULL, string $grantType = 'authorization_code', array $scopes = [])
public function validateOAuthToken()
public function getPolls(array $parameters = [], ?Paginator $paginator = NULL)
public function createPoll(array $parameters = [], array $body = [])
public function endPoll(array $parameters = [], array $body = [])
public function getPredictions(array $parameters = [], ?Paginator $paginator = NULL)
public function createPrediction(array $parameters = [], array $body = [])
public function endPrediction(array $parameters = [], array $body = [])
public function startRaid(array $parameters = [])
public function cancelRaid(array $parameters = [])
public function getChannelStreamSchedule(array $parameters = [], ?Paginator $paginator = NULL)
public function getChanneliCalendar(array $parameters = [])
public function updateChannelStreamSchedule(array $parameters = [])
public function createChannelStreamScheduleSegment(array $parameters = [], array $body = [])
public function updateChannelStreamScheduleSegment(array $parameters = [], array $body = [])
public function deleteChannelStreamScheduleSegment(array $parameters = [], array $body = [])
public function searchCategories(array $parameters = [])
public function searchChannels(array $parameters = [])
public function getStreamKey(array $parameters = [])
public function getStreams(array $parameters = [], ?Paginator $paginator = NULL)
public function getFollowedStreams(array $parameters = [], ?Paginator $paginator = NULL)
public function createStreamMarker(array $parameters = [], array $body = [])
public function getStreamMarkers(array $parameters = [], ?Paginator $paginator = NULL)
public function getSubscriptions(array $parameters = [], ?Paginator $paginator = NULL)
public function getUserSubscription(array $parameters = [])
public function getStreamTags(array $parameters = [])
public function getAllStreamTags(array $parameters = [], ?Paginator $paginator = NULL)
public function replaceStreamTags(array $parameters = [], array $body = [])
public function getChannelTeams(array $parameters = [])
public function getTeams(array $parameters = [])
public function createUserFollows(array $parameters = [], array $body = [])
public function deleteUserFollows(array $parameters = [])
public function getUsers(array $parameters = [])
public function getUsersFollows(array $parameters = [], ?Paginator $paginator = NULL) // DEPRECATED
public function updateUser(array $parameters = [])
public function getUserExtensions(array $parameters = [])
public function getUserActiveExtensions(array $parameters = [])
public function updateUserExtension(array $parameters = [], array $body = [])
public function getUserBlockList(array $parameters = [], ?Paginator $paginator = NULL)
public function blockUser(array $parameters = [])
public function unblockUser(array $parameters = [])
public function getVideos(array $parameters = [], ?Paginator $paginator = NULL)
public function deleteVideos(array $parameters = [])
public function getWebhookSubscriptions(array $parameters = []) // DEPRECATED
public function subscribeWebhook(array $parameters = [], array $body = []) // DEPRECATED
public function unsubscribeWebhook(array $parameters = [], array $body = []) // DEPRECATED
public function buildWebhookTopic(string $path, array $parameters = []) // DEPRECATED
public function sendWhisper(array $parameters = [], array $body = [])