Imports System.Net
Public Class Form1
Dim wc As WebClient = New WebClient()
'再生ボタン押下時
Private Sub PlayBtn_Click(sender As System.Object, e As System.EventArgs) Handles PlayBtn.Click
'状態確認
Dim status As Byte() = wc.DownloadData("http://192.168.1.126/status")
'停止中の場合
If status(0) = &H32 Then
'お知らせ設定1を再生
wc.DownloadData("http://192.168.1.126/play?notice=1")
Else
MessageBox.Show("再生中です")
End If
End Sub
'停止ボタン押下時
Private Sub StopBtn_Click(sender As System.Object, e As System.EventArgs) Handles StopBtn.Click
'停止
wc.DownloadData("http://192.168.1.126/stop")
End Sub
End Class
|
<?php
//php.iniファイルでextension=php_curl.dllがコメントアウトされていないこと
//libeay32.dll および ssleay32.dll にPATHが通っていること
$msg = "";
//再生ボタン押下時
if(isset($_POST["play"])){
//状態確認
$status = cURL("http://192.168.1.126/status");
//停止中の場合
if($status == 2) {
//お知らせ1を再生
cURL("http://192.168.1.126/play?notice=1");
} else {
$msg = "再生中です";
}
}
//停止ボタン押下時
if(isset($_POST["stop"])){
//停止
cURL("http://192.168.1.126/stop");
}
function cURL($url) {
//cURLセッションを初期化
$conn = curl_init();
//取得するURLを指定
curl_setopt($conn, CURLOPT_URL, $url);
//curl_exec()の戻り値をブラウザ出力しない
curl_setopt($conn, CURLOPT_RETURNTRANSFER, TRUE);
//cURLセッションを実行
$response = curl_exec($conn);
//cURLセッションを終了
curl_close($conn);
return $response;
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<style type="text/css"><!--
body{margin:20px; color:#1f1f1f; font-family:meiryo,sans-serif;}
h1{margin:0; font-size:1.5em; padding:10px; font-weight: normal;}
.btn{background:#428bca; border:1px solid #DDD; color:#FFF; width:130px; height:60px; padding:10px 0; font-size:1.3em;}
--></style>
<title>PHPサンプルプログラム</title>
</head>
<body>
<center>
<h1>PHPサンプルプログラム</h1>
<?php echo $msg;?>
<form action="" method="post">
<table cellspacing="10" cellpadding="10" border="0">
<tr><td>
<button class="btn" type="submit" name="play" value="1">再生</button>
<button class="btn" type="submit" name="stop" value="1">停止</button>
</td></tr>
</table>
</form>
</center>
</body>
</html>
|
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <netdb.h>
#include <netinet/in.h>
#define BUF_LEN 32
int main(int argc, char **argv) {
int s;
struct addrinfo hints, *res;
int err;
char send_buf[BUF_LEN];
char recv_buf[BUF_LEN];
memset(&hints, 0, sizeof(hints));
hints.ai_socktype = SOCK_STREAM;
hints.ai_family = AF_INET;
if ((err = getaddrinfo("192.168.1.126", "http", &hints, &res)) != 0) {
printf("error %d\n", err);
return 1;
}
// ソケット生成
if ((s = socket(res->ai_family, res->ai_socktype, res->ai_protocol)) < 0) {
printf("ソケットの生成に失敗しました。\n");
return 1;
}
// WSD001Aに接続
if (connect(s, res->ai_addr, res->ai_addrlen) != 0) {
printf("connectに失敗しました。\n");
return 1;
}
// HTTPリクエスト送信
strcpy(send_buf, "GET /play?notice=1 HTTP/1.1\r\nHost: 192.168.1.126:80\r\n\r\n");
write(s, send_buf, strlen(send_buf));
// 受信が終わるまでループ
while(1) {
if(read(s, recv_buf, BUF_LEN) <= 0) {
break;
}
}
// ソケット閉じる
close(s);
return 0;
}
|