✌️
This commit is contained in:
		
							parent
							
								
									8e9d5e8e2a
								
							
						
					
					
						commit
						56a1deb9d5
					
				
					 2 changed files with 20 additions and 0 deletions
				
			
		| 
						 | 
					@ -22,6 +22,7 @@ export default class Connection extends EventEmitter {
 | 
				
			||||||
		data: string
 | 
							data: string
 | 
				
			||||||
	}> = [];
 | 
						}> = [];
 | 
				
			||||||
	public id: string;
 | 
						public id: string;
 | 
				
			||||||
 | 
						public isSuspended = false;
 | 
				
			||||||
	private os: MiOS;
 | 
						private os: MiOS;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	constructor(os: MiOS, endpoint, params?) {
 | 
						constructor(os: MiOS, endpoint, params?) {
 | 
				
			||||||
| 
						 | 
					@ -91,6 +92,8 @@ export default class Connection extends EventEmitter {
 | 
				
			||||||
	 * Callback of when received a message from connection
 | 
						 * Callback of when received a message from connection
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
	private onMessage(message) {
 | 
						private onMessage(message) {
 | 
				
			||||||
 | 
							if (this.isSuspended) return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (this.os.debug) {
 | 
							if (this.os.debug) {
 | 
				
			||||||
			this.in++;
 | 
								this.in++;
 | 
				
			||||||
			this.inout.push({ type: 'in', at: new Date(), data: message.data });
 | 
								this.inout.push({ type: 'in', at: new Date(), data: message.data });
 | 
				
			||||||
| 
						 | 
					@ -108,6 +111,8 @@ export default class Connection extends EventEmitter {
 | 
				
			||||||
	 * Send a message to connection
 | 
						 * Send a message to connection
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
	public send(data) {
 | 
						public send(data) {
 | 
				
			||||||
 | 
							if (this.isSuspended) return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// まだ接続が確立されていなかったらバッファリングして次に接続した時に送信する
 | 
							// まだ接続が確立されていなかったらバッファリングして次に接続した時に送信する
 | 
				
			||||||
		if (this.state != 'connected') {
 | 
							if (this.state != 'connected') {
 | 
				
			||||||
			this.buffer.push(data);
 | 
								this.buffer.push(data);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -94,6 +94,13 @@
 | 
				
			||||||
		<el-tab-pane label="Streams (Inspect)">
 | 
							<el-tab-pane label="Streams (Inspect)">
 | 
				
			||||||
			<el-tabs type="card" style="height:50%">
 | 
								<el-tabs type="card" style="height:50%">
 | 
				
			||||||
				<el-tab-pane v-for="c in os.connections" :label="c.name == '' ? '[Home]' : c.name" :key="c.id" :name="c.id" ref="connectionsTab">
 | 
									<el-tab-pane v-for="c in os.connections" :label="c.name == '' ? '[Home]' : c.name" :key="c.id" :name="c.id" ref="connectionsTab">
 | 
				
			||||||
 | 
										<div style="padding: 12px 0 0 12px">
 | 
				
			||||||
 | 
										<el-button size="mini" @click="send(c)">Send</el-button>
 | 
				
			||||||
 | 
										<el-button size="mini" type="warning" @click="c.isSuspended = true" v-if="!c.isSuspended">Suspend</el-button>
 | 
				
			||||||
 | 
										<el-button size="mini" type="success" @click="c.isSuspended = false" v-else>Resume</el-button>
 | 
				
			||||||
 | 
										<el-button size="mini" type="danger" @click="c.close">Disconnect</el-button>
 | 
				
			||||||
 | 
									</div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
					<el-table
 | 
										<el-table
 | 
				
			||||||
						:data="c.inout"
 | 
											:data="c.inout"
 | 
				
			||||||
						style="width: 100%"
 | 
											style="width: 100%"
 | 
				
			||||||
| 
						 | 
					@ -177,6 +184,14 @@ export default Vue.extend({
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		onWindowsChanged() {
 | 
							onWindowsChanged() {
 | 
				
			||||||
			this.$forceUpdate();
 | 
								this.$forceUpdate();
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							send(c) {
 | 
				
			||||||
 | 
								(this as any).apis.input({
 | 
				
			||||||
 | 
									title: 'Send a JSON message',
 | 
				
			||||||
 | 
									allowEmpty: false
 | 
				
			||||||
 | 
								}).then(json => {
 | 
				
			||||||
 | 
									c.send(JSON.parse(json));
 | 
				
			||||||
 | 
								});
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue