En Twilio Programmable Chat, en el backend de Laravel, ¿cómo obtener los miembros de un canal, dado el código del canal?
¿Cómo puedo obtener la lista de miembros de Twilio de un canal en mi backend de Laravel? Estoy utilizando la API de Chat Programable de Twilio. Intenté usar el método o propiedad membresía de ChannelInstance, pero no estoy obteniendo la lista de miembros correctamente. ¿Hay alguna forma de hacer esto desde dentro de Laravel? Necesito que sea consumido por la aplicación iOS en el otro lado (siendo la aplicación iOS el cliente). La aplicación iOS solicita a Laravel la lista de usuarios con los que el usuario ha chateado, así que primero obtengo todos los canales:
$params = $request->all();
$username = $params["username"];
$unl = strlen($username);
$twilio = new Client($this->sid, $this->authToken);
// Obtener todos los canales del usuario
$ucs = $twilio->chat->v2->services($this->serviceId)
->users($username)
->userChannels
->read(50);
// Intentar encontrar los miembros de cada canal
foreach ($ucs as $uc) {
$channel = $twilio->chat->v2->services($this->serviceId)
->channels($uc->channelSid)
->fetch();
print_r($channel->toArray());
}
En la matriz impresa por print_r
, tengo uniqueName y friendlyName, que son dos participantes concatenados del canal. Pero preferiría tener simplemente dos objetos o dos cadenas que me indiquen quienes son los miembros participantes de ese canal. ¿Hay alguna forma de hacer esto?
davy.ai
Para obtener la lista de miembros de Twilio de un canal en tu backend de Laravel, puedes seguir los siguientes pasos:
Client
.members
del objetoChannelInstance
. Debes pasar el SID del canal a este método.$members
y obtener el atributoidentity
de cada miembro para obtener su nombre de usuario.Ten en cuenta que debes reemplazar
$sid
,$token
,$serviceSid
y$channelSid
con los valores apropiados para tu cuenta, servicio y canal de Twilio.