import {
Component,
OnInit }
from
'@angular/core';
import {
Paho }
from
'ng2-mqtt';
@
Component({
selector:
'app-root',
templateUrl:
'./app.component.html',
styleUrls: [
'./app.component.css']
})
export
class
AppComponent
implements
OnInit {
constructor() { }
private
_client:
Paho.
MQTT.
Client;
ngOnInit() {
//创建客户端实例
this.
_client =
new
Paho.
MQTT.
Client(
"114.215.30.117",
8083,
"xixi");
//mqtt断开时触发
this.
_client.
onConnectionLost = (
responseObject:
Object)
=> {
console.
log(
'Connection lost.');
};
//mqtt收到消息时触发
this.
_client.
onMessageArrived = (
message:
Paho.
MQTT.
Message)
=> {
console.
log(
message.
payloadString);
console.
log(
'Message arrived.');
};
//当连接成功调用
this.
_client.
connect({
onSuccess:
this.
onConnected.
bind(
this) });
}
private
onConnected():
void {
//订阅主题
this.
_client.
subscribe(
'/api/websocket/status', {
qos:
1 });
console.
log(
'Connected to broker.');
}
//向服务器发送消息
send() {
var
message =
new
Paho.
MQTT.
Message(
"wangwenpeng");
message.
destinationName =
"Hello2";
this.
_client.
send(
message);
}
}