2009-11-24 2 views
3

나는 내 응용 프로그램에서 다음과 같은 몇 가지 코드를 가지고 :pyfacebook으로 게시 된 Facebook 상태 업데이트에 @mention을 삽입하는 방법이 있습니까?

message = "Hi, @John Doe!" 
postID = fb.stream.publish(
    message = loader.render_to_string('wall_post.phtml', {'message':message}), 
    action_links = simplejson.dumps([{'text': "Check out blah", 'href': "http://blah.dev"}]), 
    target_id = 'nf' 
) 

페이스 북이 언급 한 사용자에 대한 프로필 링크로 변환되도록 메시지 문자열의 페이스 북 @ 멘션을 표현하기 위해 어떤 방법이 있나요?

+0

사람이 작업을 수행하는 방법을 발견했다 API를 통해 고전 피드 게시물에 @ 멘션 태그를 사용하는 것이 여전히 불가능 보인다 https://developers.facebook.com/docs/opengraph/mention_tagging/

? – Jayrox

답변

1

오픈 그래프로 부분적으로 사용 가능하다는 언급이 있습니다. 오픈 그래프 액션을 게시하는 경우에만 사용할 수 있습니다

확인 : 그것은

4

나는 또한 이것에 대한 해답을 찾고있다. @

: 페이스 북의 웹 사이트가 형식을 사용합니다 [139,730,900,025 : PhotoGrabber은]

이 링크를 나타낼 굉장하지만 난 그 일을 할 수 없었다. 게시물이 어떤 관심을받지 이후 나는 "스트림"범주에 페이스 북의 포럼에서 스레드를-게시 재 :

http://forum.developers.facebook.com/viewtopic.php?id=47885

+0

안녕하세요. 당신이 포기했다고 말하는 페이스 북 포럼에서 당신의 응답과 당신의 메시지를 보았습니다. 그냥 머리를 위로,하지만 결국 같은 않았다. 트위터 쪽 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@! 시도해 줘서 고마워, 고마워. – Thomas

+0

누구든지이 작업을 수행하는 방법을 알고 있습니까? – Jayrox

0

나는이 순간에 불가능 확신 해요. 그것이 작동해야한다고 제안한 형식을 사용하여 가능하다면 ... 가장 좋은 방법은 API 스트림 파서에 추가하는 것입니다.

0

현재로서는 불가능합니다. 죄송합니다.

0

AFAIK facebook의 API는 이것을 허용하지 않습니다. 내가 알고있는 유일한 접근법은 tam7t의 대답에 설명 된 형식을 사용하여 이러한 게시물을 작성하는 화면 스크래퍼를 작성하는 것입니다. 페이 스북 사이트 (m.facebook.com)의 모바일 버전을 사용하면 훨씬 쉽게 사용할 수 있습니다.

참고 : 이것은 Facebook의 응용 프로그램 서비스 약관 위반 일 수 있습니다. 편집

: 여기 는 Mechanize Gem

require 'mechanize' 

agent = Mechanize.new 
agent.user_agent_alias = 'Mac Safari' 

page = agent.get('http://m.facebook.com') 
form = page.forms.first 
# enter credentials 
form.pass = 'user password' 
form.email = '[email protected]' 
page = agent.submit form 

# go straight to page to post on 
page = agent.get("http://m.facebook.com/wall.php?id=PAGE_ID_NUM") 
form = page.forms.first 
form.message = "@[139730900025:PhotoGrabber] is awesome" 
page = agent.submit form 

참고를 사용하여 트릭을 할 것입니다 일부 루비 코드입니다 : 분명히 (tiagoboldt 친절하게 지적)이/저장 다른 자격 증명을 활용하는 것은 잘못입니다 귀하의 신청서에있는 사람들. 이 방법은 귀하가 관리하는 페이스 북 계정에서 게시물을 작성하는 경우에만 적합합니다.

다시 말해 벽 게시물에 @mention을 넣는 원래 질문으로 돌아가서 게시물과 @mention이 벽면에 잘 오르는 동안이 메서드는 게시물을 언급 된 사용자에게 전파하지 않습니다/페이지 벽. 그것이 당신에게 중요한지 확실하지 않습니다.

+0

이 접근 방식은 사용자의 암호 저장, API없이 다른 사이트와의 상호 작용 등과 같은 여러 단계를 망 쳤습니다. 그것을 고려하지 않아야하는 여러 가지 방법으로 실패 할 수도 있습니다. – tiagoboldt

+1

무례 할 필요가 없습니다. 원래 포스터가 요청한 것은 (AFAIK) 페이스 북 API로는 불가능합니다. 나는 단지 "할 수 없다"고 말할 수 있다고 생각합니다. 또한, 분명히하기 위해 - 나는 그들이 다른 사용자의 계정의 암호를 저장해야한다고 제안하는 것이 아니라 자신의 벽에 게시 할 수있는 단일 계정 (자신이 소유 한 계정)을 저장해야한다고 제안합니다. –