Я хочу интегрировать RocketChat в свое приложение. Изучив Inte rnet, я нашел замечательный плагин для RealtimeAPI RocketChatRealtimeAPI . Я интегрировал этот плагин в свой собственный код, и некоторые методы работают нормально, например, login, rooms / get '. Если я правильно понял, существует "стандартный" вызов (называемый callMethod ), который вы можете использовать для вызова любого из методов из Rocket Chat Docs. Однако, когда я вызываю, например, loadHistory, sendMessage или createChannel, он всегда дает Meteor.Error 400 ( Meteor.Error RocketChat Admin ViewLog ).
Вопрос:
- возможно ли с помощью callMethod вызывать какие-либо методы из RocketChat API?
Вот мой код .. Может быть вы можете узнать, что я делаю неправильно ... Поскольку это мой первый опыт работы с Sockets, возможно, мой вопрос не совсем верный ... извините за это ... Любая помощь будет очень признательна.
вот пример моего вызова метода:
sendMessage(roomId){
let send = this.chatService.callMethod('sendMessage',
[{"_id": this.chatService.generateHash(17), rid: roomId, msg: this.message}]);
send.subscribe(
(data) => {
return console.log("Send Message ", data);
},
(err) => console.log(err),
() => {console.log('completed')
},);
}
Метод вызова из RealTiemAPI RX JS плагин из Github.
public callMethod(method: string, ...params: Array<{}>) {
let id = String(this.generateHash(17))
this.sendMessage({
msg: "method",
method,
id,
params
});
console.log("method ", method , " params ", params, "id ", id )
return this.getObservableFilteredByID(id);
}