createRoomPoll function
Future<HeadlessActionResult>
createRoomPoll(
- MediasfuParameters parameters, {
- required String question,
- required List<
String> options, - String type = 'custom',
Implementation
Future<HeadlessActionResult> createRoomPoll(
MediasfuParameters parameters, {
required String question,
required List<String> options,
String type = 'custom',
}) async {
if (question.trim().isEmpty) {
return const HeadlessActionResult.failure('The poll needs a question.');
}
if (options.length < 2) {
return const HeadlessActionResult.failure(
'The poll needs at least two options.');
}
try {
final response = await _emitAck(parameters, 'createPoll', {
'roomName': parameters.roomName,
'poll': {'question': question, 'options': options, 'type': type},
});
return response['success'] == true
? const HeadlessActionResult.success()
: HeadlessActionResult.failure(
response['reason']?.toString() ?? 'The poll could not be created.');
} catch (error) {
return HeadlessActionResult.failure(
'The poll could not be created: $error');
}
}