コード例 #1
0
ファイル: ChatSetup.js プロジェクト: jihdeh/raja
  connectChat() {
    this.isConnecting = true;
    const { user: { userExtended } } = this.props;

    const chatManager = new Chatkit.ChatManager({
      instanceLocator: CHATKIT_INSTANCE_LOCATOR,
      userId: userExtended.id,
      tokenProvider: this.tokenProvider
    });

    chatManager.connect()
    .then(currentUser => {
     this.isConnecting = false;
      this.props.setUser(currentUser);
      return Promise.all(
        currentUser.rooms.map(room => currentUser.subscribeToRoom({
          roomId: room.id,
          hooks: { onNewMessage: this.onReceive }
        }))
      )
    }).then(rooms => {this.isConnecting = false; console.log('all connected') })
    .catch(error => {
      this.isConnecting = false;
      console.log('chatroom connect error', error)
    })
  }
コード例 #2
0
export const setChatkitUser = (id) => (dispatch) => {
    const tokenProvider = new Chatkit.TokenProvider({
     url: CHATKIT_TOKEN_PROVIDER_ENDPOINT
   });

     const chatManager = new Chatkit.ChatManager({
       instanceLocator: CHATKIT_INSTANCE_LOCATOR,
       userId: id.toString(),
       tokenProvider
     });

     chatManager.connect().then(currentUser => {
       dispatch({ type: SET_CHATKIT_USER, payload: currentUser });
     }).catch.log(e => console.log(e));
};