A good method is to generate white noise apply an exponential envelope with the reverb time. In general you will need lots of samples. Typically 10s of thousands. If you want to get fancier you can window out the front part and put in a direct sound spike and a few discrete reflections. Below an example of how to create a simulated room impulse response with a given reverb time and sample rate
%% create an room impulse response with a given t60
fs = 44100; % sample rate in Hz
t60 = 0.35; % reverb time in seconds
% 1. Detemine the length of the impulse response. It's an infinite response
% so some truncation is neccessary. A good starting point 1.5 times the
% t60 which will result in 90 dB of dynamic range
n = round(fs*1.5*t60);
t = (0:n-1)'/fs; % time vector
% 2. initialize to white noise, gaussian distributed
h = randn(n,1);
% 3. Calculate the decay. During the reverb time the envelope decays by 60
% dB, so we have exp(decay*t60) = 1e-3; We can solve to
decay = log(1e-3)/t60;
% 4. Apply the envelope
h = h.*exp(decay.*t);
figure(1); clf
plot(t,h);
xlabel('Time in s');
%% we can calcuale the energy decay curve through reverse integration
decayCurveInDB = 10*log10(flipud(cumsum(flipud(h.^2))));
% normalize to 0 dB
decayCurveInDB = decayCurveInDB-decayCurveInDB(1);
% and plot it
figure(2);clf;
h = plot(t,decayCurveInDB);
set(h,'Linewidth',2);
xlabel('Time in s');
ylabel('Decay in dB');
% mark the t60 spot
hold on
set(gca,'ylim',[-100,0]);
y = get(gca,'ylim');
h = plot(t60*[1 1],y,'r');
set(h,'Linewidth',2);
grid('on');