breezy-alarm-70231
02/27/2025, 7:25 PMIN_hvX4cXjdHrSx
and IN_B7c3CGkx7aGk
if that helps.
cc @full-iron-41629proud-spring-42526
03/06/2025, 8:36 PMbrash-optician-30337
03/12/2025, 5:49 PMingress stream: Error: Request failed with status 429: Too Many Requests
The same code was working a couple of days ago, do you know if there is something going on or if our account could had been rate limited or something like that?agreeable-market-83452
03/13/2025, 1:04 PMproud-shoe-41010
03/14/2025, 1:50 PMstocky-megabyte-74523
03/25/2025, 10:47 AMboundless-fish-41368
03/27/2025, 5:24 PMa=candidate:
lines, so LiveKit can't establish a connection.
My stream fails with repeated ICE errors like:
2025-03-27T08:03:30.667Z DEBUG ingress.pion.ice agent.go:465 Pinging all candidates
2025-03-27T08:03:30.667Z WARN ingress.pion.ice agent.go:468 Failed to ping without candidate pairs. Connection is not possible yet.
Has anyone run into this before or found a workaround? Would appreciate any help or direction 🙏
Note: it works fine with https://vdo.ninja/whipwooden-application-80841
04/10/2025, 9:27 AMcurl --location '<http://localhost:8086/rooms/create-session-rooms-and-ingress>' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJ0e....M' \
--data '{
"session_id": "A1234-5678-9012",
"required_languages": [
"es-ES",
"en-US"
],
"listeners": [],
"empty_timeout": 300,
"max_participants": 100
}
'
An I created successfully these rooms and ingress:
{
"message": "Salas e ingress procesados exitosamente (creados o reutilizados)",
"rooms": [
{
"name": "A1234-5678-9012_es-ES",
"sid": "RM_MhoW5fRXGkjm",
"empty_timeout": 300,
"max_participants": 100,
"status": "created",
"ingress": {
"ingress_id": "IN_UUfd2dSimgBV",
"name": "Session A1234-5678-9012 es-ES audio",
"stream_key": "6**********X",
"url": "<rtmps://stage>*******-asin0h4m.rtmp.livekit.cloud/x",
"audio": {},
"video": {},
"room_name": "A1234-5678-9012_es-ES",
"participant_identity": "A1234-5678-9012_es-ES_source",
"participant_name": "English Audio",
"reusable": true,
"state": {
"audio": {
"mime_type": "audio/aac",
"channels": 1,
"sample_rate": 48000
},
"room_id": "RM_NGLiRWLtMTud",
"started_at": "1744220991955220119",
"ended_at": "1744221000502521709",
"resource_id": "RT_YcNAgvieMmdn",
"updated_at": "1744221000502536121"
},
"enable_transcoding": true,
"status": "existing"
}
},
{
"name": "A1234-5678-9012_en-US",
"sid": "RM_8yQm552qbgwe",
"empty_timeout": 300,
"max_participants": 100,
"status": "existing",
"ingress": {
"ingress_id": "IN_E2ShA6Jip9ou",
"name": "Session A1234-5678-9012 en-US audio",
"stream_key": "X*********p",
"url": "<rtmps://stage>*******-asin0h4m.rtmp.livekit.cloud/x",
"audio": {},
"video": {},
"room_name": "A1234-5678-9012_en-US",
"participant_identity": "A1234-5678-9012_en-US_source",
"participant_name": "en-US Audio",
"reusable": true,
"state": {
"audio": {
"mime_type": "audio/aac",
"channels": 1,
"sample_rate": 48000
},
"room_id": "RM_4AY9U66LPgey",
"started_at": "1744148207194990979",
"ended_at": "1744148215781279180",
"resource_id": "RT_BChAKvsvhxo9",
"updated_at": "1744148215781287162"
},
"enable_transcoding": true,
"status": "existing"
}
}
]
}
Ingress were created as "reusable"=true, and I can not delete them, nor update to "reusable"=false.wooden-application-80841
04/10/2025, 9:42 AM...
try:
# Standard approach
print(f"Deleting Ingress {ingress_id}")
await lkapi.ingress.delete_ingress(ingress_id)
print(f"Ingress {ingress_id} deleted successfully") #Never printed
except (AttributeError, TypeError):
...
Response:
{
"detail": "Error al eliminar el ingress: 401: invalid authorization token"
}
Using direct function (below) I get a
@ingressRoutes.delete("/delete-ingress-direct/{ingress_id}")
async def delete_ingress_direct(
ingress_id: str,
lkapi: LiveKitAPI = Depends(get_livekit_api)
):
try:
# Obtener configuraciĂłn de LiveKit
url = lkapi.url
api_key = lkapi.api_key
api_secret = lkapi.api_secret
# Generar token JWT manualmente para mayor control
now = int(time.time())
exp = now + 60 # 1 minuto de expiraciĂłn es suficiente
# Crear payload con los permisos correctos para ingress
payload = {
"iss": api_key,
"nbf": now,
"exp": exp,
"video": {
"room": "*",
"roomAdmin": True,
"roomCreate": True,
"roomList": True,
"ingressAdmin": True # Asegúrate de que este permiso esté incluido
}
}
# Codificar el token
token = jwt.encode(payload, api_secret, algorithm="HS256")
# Hacer la solicitud HTTP directamente
headers = {
"Authorization": f"Bearer {token}"
}
delete_url = f"{url}/ingress/{ingress_id}"
...
#Response
{
"message": "Ingress IN_UUfd2dSimgBV deleted successfully",
"status": 200
}
I got a "Ingress IN_UUfd2dSimgBV deleted successfully", but if I try to list my Ingress again, no Ingress were deleted (and also I can not create new ones as 'resource_exhausted', 'concurrent ingress sessions limit exceeded'wooden-application-80841
04/10/2025, 9:48 AMcurl --location '<http://localhost:8086/ingress/update-ingress>' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ey...LpM' \
--data '{
"ingress_id":"IN_UUfd2dSimgBV",
"input_type": 0,
"name": "Session A1234-5678-9012 es-ES audio",
"room_name": "A1234-5678-9012_es-ES",
"participant_identity": "A1234-5678-9012_es-ES_source",
"participant_name": "English Audio",
"enable_transcoding": true,
"reusable": false
}'
I got a 200 OK response but the body JSON indicates "reusable": true again
{
"message": "Ingress IN_UUfd2dSimgBV actualizado exitosamente",
"ingress": {
"ingress_id": "IN_UUfd2dSimgBV",
"name": "Session A1234-5678-9012 es-ES audio",
"stream_key": "6**********X",
"url": "<rtmps://stage>*******-asin0h4m.rtmp.livekit.cloud/x",
"audio": {},
"video": {},
"room_name": "A1234-5678-9012_es-ES",
"participant_identity": "A1234-5678-9012_es-ES_source",
"participant_name": "English Audio",
"reusable": true,
"state": {
"audio": {
"mime_type": "audio/aac",
"channels": 1,
"sample_rate": 48000
},
"room_id": "RM_NGLiRWLtMTud",
"started_at": "1744220991955220119",
"ended_at": "1744221000502521709",
"resource_id": "RT_YcNAgvieMmdn",
"updated_at": "1744221000502536121"
},
"enable_transcoding": true
}
}
Some help about how to delete these ingress ?some-hydrogen-97536
04/20/2025, 11:26 PMsome-hydrogen-97536
04/28/2025, 11:14 AMquaint-garden-91907
04/30/2025, 3:09 PMstale-apple-21922
05/07/2025, 2:58 AMbrainy-printer-76616
05/09/2025, 9:01 PMsource encoder not ready
. More info in đź§µsome-london-88496
05/16/2025, 2:33 PMgentle-truck-12665
05/19/2025, 9:38 AM#createIngress()
(it's a demo project only, I don't want to share our production project publicly):
"ingressConfig": {
"ingressId": "IN_2uz5QdaMc7Zi",
"streamKey": "53tJCTWpek2c",
"url": "<rtmps://egress-test-fi6ps28f.rtmp.livekit.cloud/x>"
}
When I paste url and stream key to OBS, the OBS alert connection failed, error log:
15:55:46.259: [x264 encoder: 'simple_video_stream'] preset: veryfast
15:55:46.259: [x264 encoder: 'simple_video_stream'] settings:
15:55:46.259: rate_control: CBR
15:55:46.259: bitrate: 2500
15:55:46.259: buffer size: 2500
15:55:46.259: crf: 23
15:55:46.259: fps_num: 30
15:55:46.259: fps_den: 1
15:55:46.259: width: 1280
15:55:46.259: height: 720
15:55:46.259: keyint: 250
15:55:46.259:
15:55:46.266: libfdk_aac encoder created
15:55:46.266: libfdk_aac bitrate: 160, channels: 2
15:55:46.266: [rtmp stream: 'simple_stream'] Connecting to RTMP URL <rtmp://egress-test-fi6ps28f.rtmp.livekit.cloud/x>...
15:55:46.471: HandShake: client signature does not match!
15:55:47.713: Unhandled: <rtmp://egress-test-fi6ps28f.rtmp.livekit.cloud/x>:
15:55:47.713: NetStream.Publish.Failed
15:55:47.713: RTMPSockBuf_Fill, remote host closed connection
15:55:47.713: Output 'simple_stream': Reconnecting in 3.04 seconds..
15:55:47.714: [rtmp stream: 'simple_stream'] Connection to <rtmp://egress-test-fi6ps28f.rtmp.livekit.cloud/x> failed: -3
15:55:49.353: ==== Streaming Stop ================================================
16:08:48.362: org.freedesktop.portal.Settings version 1 does not support ReadOne
16:08:48.363: org.freedesktop.portal.Settings version 1 does not support ReadOne
16:09:12.777: libfdk_aac encoder destroyed
16:09:12.779: Settings changed (stream 1, outputs)
When I tried to change the url to <rtmp://egress-test-fi6ps28f.rtmp.livekit.cloud/x>
(rtmps -> rtmp), OBS and ingress works.
I'm looking forward to here from you.
Thank you.bland-jewelry-92773
05/20/2025, 3:53 PMwide-breakfast-11789
05/21/2025, 7:53 PMconcurrent ingress sessions limit exceeded
I keep running into this issue when trying to generate a token.
Is there a way to get around this?limited-plumber-57970
06/13/2025, 6:21 PMingress.json
+ then use it to spin up a simple gst-launch-1.0
pipeline that pulls MJPEG/RTSP, transcodes it, and then sends to ingress.freezing-wolf-7180
06/17/2025, 11:26 AMawait session.start(...)
await session.generate_reply(user_input="Hello")
Question: What’s the best way to guarantee the full greeting plays? Should we:
• Delay generate_reply()
,
• Wait for a LiveKit/Twilio event (like audio bridge or subscription ready),
Thanks!echoing-glass-72062
06/23/2025, 5:28 PMminiature-spring-29693
06/23/2025, 6:28 PMbumpy-leather-73255
06/28/2025, 7:23 PMgentle-truck-12665
07/02/2025, 3:09 AMcold-angle-82013
07/04/2025, 6:24 AMripe-psychiatrist-10917
07/10/2025, 6:45 PM<https://test-camera-stream-gd7ljdv1.whip.livekit.cloud/w/SPzb9xihZATE>
project url: <wss://test-camera-stream-gd7ljdv1.livekit.cloud>
hallowed-breakfast-84608
07/14/2025, 2:58 PMechoing-glass-72062
07/16/2025, 6:35 PMhundreds-battery-20727
07/17/2025, 1:01 AM