▼説明
日記(動画)を投稿します。
投稿に成功した場合は日記ID(diaryid)に1以上の値が返ります。
失敗した場合はdiaryidは0となり、errorにエラーメッセージが格納されます。
▼引数
| 型 |
項目名 |
必須 |
デフォルト |
説明 |
| string |
session |
○ |
|
セッション(zoome.loginの返り値) |
| string |
title |
|
無題 |
タイトル |
| string |
body |
○ |
|
本文 |
| i4 |
themeid |
|
1 |
テーマID |
| array |
tagname |
○ |
|
タグ名(1〜6個) |
| string |
publictype |
|
all |
公開設定 [all]:全体に公開 [friend]:メイトに公開 [private]:非公開 |
| boolean |
iscomment |
|
1 |
コメントの許可 [1]:許可する [0]:許可しない |
| boolean |
isvote |
|
1 |
投票の許可 [1]:許可する [0]:許可しない |
| boolean |
istagpaste |
|
1 |
プレイヤー貼り付けの許可 [1]:許可する [0]:許可しない |
| struct |
movie |
|
|
▽動画アップ時に指定(500Mまで) |
| base64 |
bin |
|
|
動画データ(base64符号化) |
| string |
suffix |
|
|
動画ファイルの拡張子またはファイル名 |
| struct |
image1 |
|
|
▽画像1アップ時に指定(10Mまで) |
| base64 |
bin |
|
|
画像1データ(base64符号化) |
| string |
suffix |
|
|
画像1ファイルの拡張子またはファイル名 |
| struct |
image2 |
|
|
▽画像2アップ時に指定(10Mまで) |
| base64 |
bin |
|
|
画像2データ(base64符号化) |
| string |
suffix |
|
|
画像2ファイルの拡張子またはファイル名 |
| struct |
image3 |
|
|
▽画像3アップ時に指定(10Mまで) |
| base64 |
bin |
|
|
画像3データ(base64符号化) |
| string |
suffix |
|
|
画像3ファイルの拡張子またはファイル名 |
▼返り値
| 型 |
項目名 |
説明 |
| i4 |
diaryid |
日記ID |
| string |
error |
エラー理由(diaryidがゼロの時のみ) |
use MIME::Base64 qw(encode_base64);
my $method = 'zoome.login';
my $apiarg = ({
mailaddr => 'account@host.com',
password => 'foo',
});
my $result = $server->call($method, $apiarg);
if (!$result->{session}) {
exit;
}
my $session = $result->{session};
$method = 'zoome.newPost';
my $title = 'うちのワンコ';
my $body = '今日も元気です!';
my $themeid = 3;
my @tagname = ('日記', 'ペット', 'ワンコ');
my $publictype = 'all';
my $iscomment = 1;
my $isvote = 1;
my $istagpaste = 1;
my $movie_bin = undef;
my $movie_file = 'sample.avi'; # 動画ファイルを指定
my $movie_size = (-s $movie_file);
open(IN, $movie_file);
binmode(IN);
sysread(IN, $movie_bin, $movie_size);
close(IN);
my $movie = ({
bin => $server->base64(encode_base64($movie_bin)),
suffix => $movie_file,
});
my $image1_bin = undef;
my $image1_file = 'sample.jpg'; # 画像ファイルを指定
my $image1_size = (-s $image1_file);
open(IN, $image1_file);
binmode(IN);
sysread(IN, $image1_bin, $image1_size);
close(IN);
my $image1 = ({
bin => $server->base64(encode_base64($image1_bin)),
suffix => $image1_file,
});
$apiarg = ({
session => $session,
title => $title,
body => $body,
themeid => $themeid,
tagname => \@tagname,
publictype => $publictype,
iscomment => $server->boolean($iscomment),
isvote => $server->boolean($isvote),
istagpaste => $server->boolean($istagpaste),
movie => $movie,
image1 => $image1,
# image2 => $image2,
# image3 => $image3,
});
$result = $server->call($method, $apiarg);
if ($result->{diaryid}) {
## 投稿成功
printf("diaryid: %d\n", $result->{diaryid});
}
else {
## 投稿失敗
printf("error: %s\n", $result->{error});
}
<?xml version="1.0"?>
<methodCall>
<methodName>zoome.newPost</methodName>
<params>
<param><value><struct>
<member><name>iscomment</name><value><boolean>1</boolean></value>
</member>
<member><name>publictype</name><value><string>all</string></value></member>
<member><name>body</name><value><string>今日も元気です!</string></value></member>
<member><name>istagpaste</name><value><boolean>1</boolean></value>
</member>
<member><name>image1</name><value><struct>
<member><name>bin</name><value><base64>/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3
kAAQAEAAAAZAAA/+IMVElDQ19QUk9GSUxFAAEB
AAAMRFVDQ00CQAAAbW50clJHQiBYWVogB9MABAAEAAAAAAAAYWNzcE1TRlQAAAAAQ0FOT
1owMDkA
...画像1ファイルです。省略します。
</base64></value>
</member>
<member><name>suffix</name><value><string>sample.jpg</string></value></member>
</struct></value>
</member>
<member><name>movie</name><value><struct>
<member><name>bin</name><value><base64>AAAAHGZ0eXBtbXA0AAAAAW1tcDQzZ3A1M2dwN
AAAHXxtb292AAAAbG12aGQAAAAAwnLs7sJy7O4A
AAJYAAA/5gABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAA
AAAAAAAAAEAA
...動画ファイルです。省略します。
</base64></value>
</member>
<member><name>suffix</name><value><string>sample.avi</string></value></member>
</struct></value>
</member>
<member><name>isvote</name><value><boolean>1</boolean></value>
</member>
<member><name>session</name><value><string>xxxxxxxxxxxxx</string></value></member>
<member><name>themeid</name><value><i4>3</i4></value></member>
<member><name>title</name><value><string>うちのワンコ</string></value></member>
<member><name>tagname</name><value><array><data>
<value><string>日記</string></value><value><string>ペット</string></value><value><string>ワンコ</string></value></data></array></value>
</member>
</struct></value>
</param>
</params>
</methodCall>
<?xml version="1.0"?>
<methodResponse>
<params>
<param><value><struct>
<member><name>diaryid</name><value><i4>5</i4></value></member>
<member><name>error</name><value><string></string></value></member>
</struct></value>
</param>
</params>
</methodResponse>