Facebook을 통해 사용자 정보를 연결하고 모든 친구에게 비공개 메시지를 보내야합니다. 가능합니까?
답변:
이제 API를 통해 개인 메시지를 보낼 수 있습니다.
메시지 전송을 위해이 이벤트를 발생시킵니다 (페이스 북 객체의 초기화는 이전에 완료되어야합니다).
to:user
페이스 북 아이디
function facebook_send_message(to) {
FB.ui({
app_id:'xxxxxxxx',
method: 'send',
name: "sdfds jj jjjsdj j j ",
link: 'https://apps.facebook.com/xxxxxxxaxsa',
to:to,
description:'sdf sdf sfddsfdd s d fsf s '
});
}
속성
app_id
애플리케이션의 식별자입니다. 필수이지만 대부분의 SDK에서 자동으로 지정합니다.
redirect_uri
사용자가 대화 상자에서 보내기 또는 취소 단추를 클릭 한 후 리디렉션 할 URL입니다. 필수이지만 대부분의 SDK에서 자동으로 지정합니다.
display
대화 상자를 렌더링 할 표시 모드입니다. 이는 대부분의 SDK에서 자동으로 지정됩니다.
to
메시지를 보낼 사용자 ID 또는 사용자 이름입니다. 대화 상자가 나타나면 사용자는 메시지를 보낼 추가 사용자, Facebook 그룹 및 이메일 주소를 지정할 수 있습니다. Facebook 그룹에 콘텐츠를 보내면 그룹의 담벼락에 게시됩니다.
링크
(필수) 메시지에서 보낼 링크입니다.
picture
기본적으로 지정된 링크에서 사진을 가져옵니다. 메시지에 포함 할 사진의 URL입니다. 링크 옆에 사진이 표시됩니다.
이름 기본적으로 지정된 링크에서 제목을 가져옵니다. 링크의 이름, 즉 사용자가 클릭 할 텍스트를 표시합니다.
설명
기본적으로 설명은 지정된 링크에서 가져옵니다. 링크 아래에 표시 할 설명 텍스트입니다.
여기에서 더보기
@VishwaKumar :
맞춤 텍스트로 메시지를 보내려면에 'message'매개 변수를 추가해야 FB.ui
하지만이 기능은 더 이상 사용되지 않는 것 같습니다. 더 이상 메시지를 미리 채울 수 없습니다. 한 번 시도하지만.
FB.ui({
method: 'send',
to: '1234',
message: 'A request especially for one person.',
data: 'tracking information for the user'
});
이 링크를 참조하십시오 : http://fbdevwiki.com/wiki/FB.ui
아니요, 불가능합니다. Facebook 사용자에게 모든 종류의 메시지를 보내려면 해당 사용자의 권한이 필요합니다.
누군가 Facebook Connect를 사용하여 귀하의 사이트에 로그인하면 Facebook 데이터를 귀하의 사이트와 공유하는 데 명시 적으로 동의하는 것이며, 그러면 해당 사용자에게 일반 채널을 통해 메시지 를 보낼 수 있습니다 . 친구 목록을 가져올 수도 있습니다. 그러나 친구에게 메시지를 보낼 수는 없습니다.
지금은 불가능하지만 해결 방법이 있습니다. 공개 영역에서 사용자와 소통하고 비공개 메시지를 보내달라고 요청할 수 있지만 비공개 메시지는 다시 보낼 수 없으며 공개 메시지 만 보낼 수 있습니다. 물론 이것은 사용자가 올바른 권한을 제공하는지 여부에 달려 있습니다.
한 사람의 친구에 액세스 할 수있는 권한을 부여한 경우 이론적으로 각 친구에 대한 참조와 함께 해당 사용자 담벼락에 게시하여 공개적으로 상호 작용 한 다음 잠재적으로 비공개로 메시지를 보낼 수 있습니다.
친구 사귀기
#if authenticated
https://graph.facebook.com/me/friends
http://developers.facebook.com/docs/reference/api/user/
공개 도메인에 게시
http://developers.facebook.com/docs/reference/api/status/
해당 사용자에게 보낸 메시지 가져 오기 (권한이있는 경우)
http://developers.facebook.com/docs/reference/api/message/
Facebook Chat API를 사용하여 비공개 메시지를 보낼 수 있습니다. 다음은 xmpp4r_facebook
gem을 사용하는 Ruby의 예입니다 .
sender_chat_id = "-#{sender_uid}@chat.facebook.com"
receiver_chat_id = "-#{receiver_uid}@chat.facebook.com"
message_body = "message body"
message_subject = "message subject"
jabber_message = Jabber::Message.new(receiver_chat_id, message_body)
jabber_message.subject = message_subject
client = Jabber::Client.new(Jabber::JID.new(sender_chat_id))
client.connect
client.auth_sasl(Jabber::SASL::XFacebookPlatform.new(client,
ENV.fetch('FACEBOOK_APP_ID'), facebook_auth.token,
ENV.fetch('FACEBOOK_APP_SECRET')), nil)
client.send(jabber_message)
client.close
모바일 응용 프로그램의 경우 대화 상자보기에 자바 스크립트를 삽입하여 해결책을 찾았습니다. 내 iOS 앱에 숨겨진 웹보기가 있습니다. fb 메시지를로드하여 대화 상자 api ..를 보낸 다음 "to"및 "message"필드를 설정하고 양식을 제출하기 위해 자바 스크립트를 삽입합니다. 따라서 최종 사용자는 아무것도 할 필요가 없습니다. Facebook받은 편지함으로 메시지를 자동으로 전송 ...
이에 대한 그래프 API가 없습니다. facebook xmpp 채팅 API를 사용하여 메시지를 보내야합니다. 좋은 소식은 다음과 같습니다. 사용하기 너무 쉬운 php 클래스를 만들었습니다. 함수를 호출하면 메시지가 전송됩니다. 오픈 소스, 그것을 확인하십시오 : facebook message api php 설명은 닫힌 소스라고 말하지만 나중에 오픈 소스로 만들어졌습니다. 첫 번째 주석을 참조하십시오 .github에서 복제 할 수 있습니다. 이제 오픈 소스입니다.
이 스레드는 페이스 북의 친구 그룹에게 비공개 메시지를 보낼 수 없다고 말했지만 https://developers.facebook.com/docs/sharing/reference/send-dialog를 찾았습니다.