Criação de token de conexão — Python

Para autenticar um usuário que se conecta a uma sessão do OpenTok, o cliente deve se conectar usando um token (consulte esta visão geral).

O exemplo de código em Python a seguir mostra como gerar um token usando a biblioteca do lado do servidor do OpenTok para Python:

import OpenTok

# Replace with your OpenTok API key:
api_key = "your_API_key"
# Replace with your OpenTok API secret:
api_secret = "your_API_secret"
# Replace with the representative URL of your session:
session_address = "192.0.43.10"

opentok_sdk = OpenTok.OpenTok(api_key, api_secret)
session = opentok_sdk.create_session(session_address)
token = opentok_sdk.generate_token(session.session_id)
print token

Chamando o generate_token() O método retorna uma string. Essa string é o token.

O exemplo de código Python a seguir mostra como obter um token com a função “publisher” e que contenha uma string de metadados de conexão:

import OpenTok

# Replace with your OpenTok API key:
api_key = "your_API_key"
# Replace with your OpenTok API secret:
api_secret = "your_API_secret"
# Replace with the representative URL of your session:
session_address = "192.0.43.10"

opentok_sdk = OpenTok.OpenTok(api_key, api_secret)
role_constants = OpenTok.RoleConstants

session = opentok_sdk.create_session(session_address)
connectionMetadata = "username=Bob,userLevel=4"
token = opentok_sdk.generate_token(session.session_id, role_constants.PUBLISHER, None, connectionMetadata)
print token

O método recebe os seguintes argumentos:

  • session_id (String) — O ID da sessão correspondente à sessão à qual o usuário se conectará.
  • role (String) — Opcional. Define a função que o usuário terá. Existem três funções: assinante, editor e moderador. Os assinantes só podem se inscrever em fluxos da sessão (eles não podem publicar). Os editores podem se inscrever e publicar fluxos na sessão, além de poderem usar a API de sinalização. Os moderadores têm os privilégios dos editores e, além disso, também podem forçar outros usuários a se desconectarem da sessão ou a interromperem a publicação. A função padrão (se nenhum valor for passado) é a de editor.
  • connection_data (String) — Opcional. Uma string contendo metadados que descrevem a conexão. Por exemplo, você pode passar o ID do usuário, o nome ou outros dados que descrevam a conexão. Você pode obter esses dados de um banco de dados do lado do servidor ou a partir de dados fornecidos pelo cliente, dependendo da sua aplicação.
  • expire_time (int) — Opcional. O momento em que o token expirará, definido como um valor inteiro correspondente a um timestamp do Unix (em segundos). Se você não especificar esse valor, os tokens expiram 24 horas após serem criados. O expire_time O valor, se especificado, deve estar dentro de um intervalo de 30 dias a partir da data de criação.