heungsub / me2pheungp

A forked Me2PHP, the Me2DAY API client library. It supports recent Me2PHP specifications.

Clone this repository (size: 270.6 KB): HTTPS / SSH
$ hg clone http://bitbucket.org/heungsub/me2pheungp/

me2PHeungP만의 기능

포스팅 당시의 닉네임

me2PHP에서는 Me2Post->authorMe2Person 객체이기때문에 포스팅할 당시의 닉네임을 구할 수가 없었습니다.

<?
$nicks = array();
foreach ($posts as $post) {
  $author = $post->author;
  assert $author instanceof Me2Person;
  $nicks[] = $author->nick;
}

$unique_nicks = array_unique($nicks);
assert count($unique_nicks) == 1;

me2PHeungP에는 Me2Post->authorNick이 추가되어 해당 포스트의 작성 당시의 닉네임을 구할 수 있습니다.

1
2
3
4
5
<?
$nicks = array();
foreach ($posts as $post) {
  $nicks[] = $post->authorNick;
}

이미지 첨부

<?
$user->post(
  '이미지를 첨부합니다.', # body
  array('Image', 'me2PHeungP'), # tags
  1, # icon
  Me2Image::fromFile('/images/kimjaeseok.jpg') # attachment
);

new Me2Post(
  $user, # author
  '이런 식으로 작성해도 동일합니다.', # body
  array('Image', 'me2PHeungP'), # tags
  1, # icon
  Me2Image::fromFile('/images/darkages/kimjaeseok.jpg') # attachment
);

Me2Post 생성자의 네 번째인자로 Me2Image의 인스턴스를 지정하면 포스팅에 이미지가 첨부 됩니다. Me2Image를 쉽게 생성할 수 있도록 몇 가지 정적 메소드도 지원합니다.

1
2
3
4
5
6
7
8
9
<?
Me2Image::fromFile('/images/darkages/hongminhee.jpg'); # 파일 주소로 이미지를 불러옵니다.
Me2Image::fromFile('/images/title.png'); # JPEG, PNG, GIF 포맷을 지원합니다.

Me2Image::fromFilePointer(fopen('/images/title.png', 'r')); # 파일 포인터를 참조합니다.

Me2Image::fromGD(imagecreatetruecolor(640, 480)); # GD 리소스를 참조합니다.

new Me2Image('<binary of JPEG image>'); # JPEG 이미지 파일의 바이너리 값으로 인스턴스를 생성합니다.

콜백 URL

<?
assert('document' == Me2Callback::Document);
assert('photo' == Me2Callback::Photo);
assert('video' == Me2Callback::Video);
assert('audio' == Me2Callback::Audio);
assert('friend' == Me2Callback::Friend);

$callback = new Me2Callback(
  'http://heungsub.net', # callback url
  'http://heungsub.net/images/me2day_callback_icon.png', # icon url
  Me2Callback::Document
);

$user->post(
  '사이트를 끼워넣습니다.', # body
  array('document', 'link', 'me2PHeungP'), # tags
  1, # icon (will be ignored)
  $callback # attachment
);

Me2Post 생성자의 네 번째인자로 Me2Callback의 인스턴스를 지정하면 포스팅에 콜백이 붙습니다. 생성자는 인자로 콜백 URL과 아이콘 이미지 URL, 콜백 타입을 입력받습니다. 콜백타입을 입력하지 않을 경우 Me2Callback::Document로 간주합니다. Me2Callback::Document, Me2Callback::Photo 등은 단순한 문자열입니다. 임의의 문자열을 지정해도 괜찮습니다.

이미 올렸던 Flickr 사진 첨부

Me2FlickrPhoto를 이용해 이미 Flickr에 올린 사진을 첨부할 수 있습니다. 우선 API키를 등록해야합니다.

1
<? Me2FlickrPhoto::$apiKey = '<Your own flickr apikey>' ?>

그리고 Me2FlickrPhoto 객체를 생성합니다. Me2FlickrPhoto 생성자는 사진 ID를 인자로 받습니다. 사진 주소가 http://www.flickr.com/photos/heungsub/3132606284일 때 사진 ID는 3132606284가 됩니다.

1
2
3
4
5
6
7
8
9
<?
$photo = new Me2FlickrPhoto('3132606284');

$user->post(
  '마치 me2photo 하듯이 올라갑니다.', # body
  array('me2PHeungP', 'me2photo'), # tags
  1, # icon (will be ignored)
  $photo # attachment
);

콜백타입 문자열은 기본적으로 'me2photo'이지만, 다음과 같이 생성자의 두 번째 인자를 지정해 다른 문자열로 대체할 수 있습니다.

1
<? new Me2FlickrPhoto('3132606284', 'flickr') ?>

사진의 퍼머링크 주소나 이미지 주소로부터 Me2FlickrPhoto를 만드는 것도 가능합니다.

1
2
3
<?
$photo1 = Me2FlickrPhoto::fromPermerlink('http://www.flickr.com/photos/heungsub/3132606284');
$photo2 = Me2FlickrPhoto::fromPhotoUrl('http://farm4.static.flickr.com/3252/3132606284_b910eea57d.jpg?v=0');

This revision is from 2009-06-18 11:19