подписчик opentok-реагирует на приложение Android - PullRequest
0 голосов
/ 25 февраля 2019

Я пытаюсь реализовать OpenTok Lib для реагирующего на натив, но я сталкиваюсь с некоторыми проблемами, которые пока не могу понять.Во-первых, и я думаю, что наиболее важным является то, что я не могу подключиться в качестве подписчика к сеансу без сбоя приложения, которое происходит только на устройствах Android, и из-за этого я не могу увидеть, работает ли соединение между двумятелефоны.

Что я делаю не так?


Назначение

import React, { Component } from 'react';
import { OTSession } from 'opentok-react-native';

import { TokBox } from '../../../helpers/constants';
import PublisherStream from './PublisherStream';
import SubscriberStream from './SubscriberStream';

class Appointment extends Component {
  static navigationOptions = {
    header: null
  };

  render() {
    const { navigation: { navigate, state: { params } } } = this.props;
    return (
      <OTSession style={{ flex: 1 }}
        apiKey={TokBox.API_KEY}
        sessionId={params.sessionId}
        token={params.token}
        eventHandlers={this.sessionEventHandlers}>
        <PublisherStream style={{ borderColor: 'red', borderWidth: 3, height: '50%' }} />
        <SubscriberStream style={{ borderColor: 'blue', borderWidth: 3, height: '50%' }} />
      </OTSession>
    );
  }
}

export default Appointment;

PublisherStream

import React, { Component } from 'react';
import { OTPublisher } from 'opentok-react-native';

class PublisherStream extends Component {
  publisherEventHandlers = {
    streamCreated: (event) => {
      console.log('Publisher stream created!', event);
    },
    streamDestroyed: (event) => {
      console.log('Publisher stream destroyed!', event);
    }
  };


  render() {
    return (
      <OTPublisher style={this.props.style} eventHandlers={this.publisherEventHandlers} />
    );
  }
}

export default PublisherStream;

SubscriberStream

import React, { Component } from 'react';
import { OTSubscriber } from 'opentok-react-native';

class SubscriberStream extends Component {
  subscriberProperties = {
    subscribeToAudio: true,
    subscribeToVideo: true,
  };

  subscriberEventHandler = {
    connected(event) {
      console.log('connected', event);
    },
    disconnected(event) {
      console.log('disconnected', event);
    },
    videoDataReceived(event) {
      console.log('videoDataReceived', event);
    },
    videoEnabled(event) {
      console.log('videoEnabled', event);
    },
    videoNetworkStats(event) {
      console.log('videoNetworkStats', event);
    }
  };

  render() {
    return (
      <OTSubscriber
        properties={this.subscriberProperties}
        eventHandlers={this.subscriberEventHandler}
        style={this.props.style}
      />
    );
  }
}

export default SubscriberStream;

Package.json

{
  {...omitted}
  "dependencies": {
    "opentok-react-native": "^0.9.5",
    "react": "^16.8.1",
    "react-native": "0.58.4",
  },
  {...omitted}
}

1 Ответ

0 голосов
/ 09 апреля 2019

На самом деле, проблема заключалась в том, что я пытался передавать потоковое видео от подписчика, что невозможно сделать таким образом ...

Ответ находится здесь: https://github.com/opentok/opentok-react-native/issues/239

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...