Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

connectOpenAi fails with `server_error code 42` on 0.4.2

Aberta
#321 3 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
45/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Pouca atividade
Stack de tecnologia
node.js, typescript

Direção de pesquisa

Comece pela chamada TypeScript connectOpenAi e rastreie sua solicitação até o endpoint /video/connect_agent do Stream usando as versões do SDK listadas. Reproduza com o fluxo de webhook fornecido e compare o erro code 42 propagado com uma conexão direta do OpenAI Realtime. Está concluído quando a mesma chave válida consegue conectar um agent a uma chamada do Stream Video sem o erro opaco do servidor.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Summary

stream.video.connectOpenAi(...) consistently fails with server_error code 42 when connecting an OpenAI Realtime agent to a call. I have isolated the cause: the same OpenAI API key connects directly to OpenAI's GA Realtime API without error, so the key/account/access are fine. I guess the failure is still inside Stream's /video/connect_agent → OpenAI path.

Bumping to 0.4.2 (as advised on my previous, now-closed ticket) did not change the result.

What I'm trying to do

Connect an OpenAI Realtime (speech-to-speech) agent to a Stream Video call so it joins as a participant and talks. It's triggered server-side from the call.session_started webhook: look up the meeting/agent, then call connectOpenAi.

const call = stream.video.call("default", meetingId);
const client = await stream.video.connectOpenAi({
  call,
  openAiApiKey: process.env.OPENAI_API_KEY, // sk-proj-36XU_...
  agentUserId: agent.id,
});
client.updateSession({ instructions });

No model is passed, so it defaults to gpt-realtime (GA).

Environment

  • @stream-io/node-sdk: 0.7.62
  • @stream-io/openai-realtime-api: 0.4.2
  • @stream-io/video-react-sdk: 1.39.1 (client)
  • Next.js: 16.2.10

What's failing

connectOpenAi rejects. The client only surfaces the opaque code 42:

Error: Stream connect_agent failed (code 42): Error:  code
{
  type: 'error',
  error: { type: 'server_error', code: '42', message: 'Error:  code ', param: null, event_id: '' }
}

The webhook itself is fine, signature verification passes (HTTP 200 via verifyAndParseWebhook on the raw gzipped body); the 500 comes solely from connectOpenAi.

Timeline

  1. On @stream-io/[email protected] → code 42.
  2. Support (previous ticket) said bump to 0.4.2; the ticket was closed.
  3. Bumped to 0.4.2 → still code 42, model set or unset.

Checks performed (ruling out my side)

  • API key is loaded in the route: confirmed sk-proj-36XU_..., not undefined.
  • Account: paid tier with credit.
  • Model: default gpt-realtime (GA).
  • Agent user: upserted via stream.upsertUsers([...]) at meeting creation, so the agentUserId exists as a Stream user on the call.

Decisive test: same key connects to OpenAI directly

I connected to OpenAI's GA Realtime API directly with the exact same OPENAI_API_KEY:

new WebSocket("wss://api.openai.com/v1/realtime?model=gpt-realtime", {
  headers: { Authorization: `Bearer ${OPENAI_API_KEY}` }
});

Result: WebSocket opens cleanly, no error. So the key, its Realtime access, org verification, and tier are all confirmed working outside Stream.

Conclusion

This concluded that my OpenAI credentials/access were not the problem. Should probably be coming from Stream's connect_agent backend.

Error

⨯ Error: Stream connect_agent failed (code 42): Error:  code
    at ignore-listed frames {
  type: 'error',
  error: {
    type: 'server_error',
    code: '42',
    message: 'Error:  code ',
    param: null,
    event_id: ''
  }
}
 POST /api/webhook/stream 500 in 2.0s (next.js: 121ms, proxy.ts: 11ms, application-code: 1886ms)
 POST /api/webhook/stream 200 in 514ms (next.js: 4ms, proxy.ts: 9ms, application-code: 501ms)
 ......
⨯ Error: Stream connect_agent failed (code 42): Error:  code
    at ignore-listed frames {
  type: 'error',
  error: {
    type: 'server_error',
    code: '42',
    message: 'Error:  code ',
    param: null,
    event_id: ''
  }
}
Linguagem predominante
TypeScript
Estrelas
19
Forks
4
Merge médio
22h 29min
PRs com merge (30d)
15

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de GetStream/stream-node

Todas as issues de GetStream/stream-node

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.