Live Stream
Live Stream reminder — mobil
Yayın hatırlatması mobil entegrasyonu
Live Stream Reminder - React Native (RTK Query)
Migration rehberi
Yapılandırma sırası için Migration şablonu. Yeni düzenlemelerde Amaç → Önkoşullar → Endpoint → Request/Response → Hata kodları → Client adımları → İlgili sayfalar bölümlerini tercih edin.
Endpointler
POST /api/v1/live-stream/:id/reminderDELETE /api/v1/live-stream/:id/reminder- Auth:
Authorization: Bearer <JWT>
Kisa Sozlesme
POST body:
{ "minute": 15 }minute:
nullveya0-> yayin basladiginda1+-> yayin oncesi dakika
Set response data:
{
"streamId": "...",
"minute": 15,
"mode": "BEFORE_START",
"scheduledFor": "2026-03-05T18:45:00.000Z",
"status": "SCHEDULED"
}Cancel response data:
{ "streamId": "...", "cancelled": true }Not: Backend BaseResponseDto<T> dondurur, asil payload data içindedir.
RTK Query (minimal)
import { baseApi } from './baseApi';
type BaseResponseDto<T> = { data: T };
type SetReminderData = {
streamId: string;
minute: number;
mode: 'ON_START' | 'BEFORE_START';
scheduledFor: string | null;
status: 'ARMED_ON_START' | 'SCHEDULED' | 'QUEUED_IMMEDIATELY';
};
type CancelReminderData = { streamId: string; cancelled: boolean };
const unwrap = <T>(r: BaseResponseDto<T> | T) =>
(r && typeof r === 'object' && 'data' in (r as any) ? (r as BaseResponseDto<T>).data : (r as T));
export const liveStreamReminderApi = baseApi.injectEndpoints({
endpoints: (builder) => ({
setLiveStreamReminder: builder.mutation<
SetReminderData,
{ streamId: string; minute?: number | null }
>({
query: ({ streamId, minute }) => ({
url: `/v1/live-stream/${streamId}/reminder`,
method: 'POST',
body: { minute },
}),
transformResponse: (r: BaseResponseDto<SetReminderData> | SetReminderData) => unwrap(r),
}),
cancelLiveStreamReminder: builder.mutation<
CancelReminderData,
{ streamId: string }
>({
query: ({ streamId }) => ({
url: `/v1/live-stream/${streamId}/reminder`,
method: 'DELETE',
}),
transformResponse: (r: BaseResponseDto<CancelReminderData> | CancelReminderData) => unwrap(r),
}),
}),
});
export const {
useSetLiveStreamReminderMutation,
useCancelLiveStreamReminderMutation,
} = liveStreamReminderApi;Ekran Kullanim Notu
save:useSetLiveStreamReminderMutationcancel:useCancelLiveStreamReminderMutationstatusmesaji:ARMED_ON_STARTSCHEDULEDQUEUED_IMMEDIATELY