Mit dem Open-Source-Projekt messenger4j erhalten Sie alles, was Sie brauchen.
Es ist eine einfach zu bedienende Java-Bibliothek zum Erstellen von Chatbots auf der Messenger-Plattform.
Es bietet eine umfangreiche Builder-API zum Erstellen der ausgehenden Nachrichten. Darüber hinaus analysiert es die eingehenden Nachrichten zu bestimmten Java-Objekten und erkennt automatisch ihren Typ. Für jeden Nachrichtentyp oder jedes Ereignis können entsprechende Ereignishandler registriert werden.
Empfangen:
String payload = ... // callback request body
String signature = ... // 'X-Hub-Signature' request header
// JDK 8 version
MessengerReceiveClient receiveClient = MessengerPlatform.newReceiveClientBuilder("APP_SECRET", "VERIFICATION_TOKEN")
.onTextMessageEvent(event -> System.out.printf("%s: %s", event.getSender().getId(), event.getText()))
.build();
// JDK 7 version
MessengerReceiveClient receiveClient = MessengerPlatform.newReceiveClientBuilder("APP_SECRET", "VERIFICATION_TOKEN")
.onTextMessageEvent(new TextMessageEventHandler() {
@Override
public void handle(TextMessageEvent event) {
System.out.printf("%s: %s", event.getSender().getId(), event.getText());
}
})
.build();
receiveClient.processCallbackPayload(payload, signature);
Senden (einfach):
MessengerSendClient sendClient = MessengerPlatform.newSendClientBuilder("PAGE_ACCESS_TOKEN").build();
sendClient.sendTextMessage("RECIPIENT_ID", "Hi there, how are you today?");
Senden (Komplex):
ReceiptTemplate receipt = ReceiptTemplate.newBuilder("Stephane Crozatier", "12345678902", "USD", "Visa 2345")
.orderUrl("http://petersapparel.parseapp.com/order?order_id=123456")
.timestamp(1428444852L)
.addElements()
.addElement("Classic White T-Shirt", 50F)
.subtitle("100% Soft and Luxurious Cotton")
.quantity(2)
.currency("USD")
.imageUrl("http://petersapparel.parseapp.com/img/whiteshirt.png")
.toList()
.addElement("Classic Gray T-Shirt", 25F)
.subtitle("100% Soft and Luxurious Cotton")
.quantity(1)
.currency("USD")
.imageUrl("http://petersapparel.parseapp.com/img/grayshirt.png")
.toList()
.done()
.addAddress("1 Hacker Way", "Menlo Park", "94025", "CA", "US").street2("").done()
.addSummary(56.14F).subtotal(75.00F).shippingCost(4.95F).totalTax(6.19F).done()
.addAdjustments()
.addAdjustment()
.name("New Customer Discount")
.amount(20.00F)
.toList()
.addAdjustment()
.name("$10 Off Coupon")
.amount(10.00F)
.toList()
.done()
.build();
sendClient.sendTemplate("RECIPIENT_ID", receipt);
BTW: Ich habe es gebaut.
Ich hatte das gleiche Problem wie mein Server Tomcat ist. Ich konnte keinen Link für die Pojos und Verträge für den fb messenger webhook finden. Also habe ich es selbst gemacht. [Hier ist] (https://github.com/thekosmix/Java-FbChatBot) der Link für den Vertrag zwischen Ihrem Java-Server-Webhook und FB Messenger. Es ist ein vollwertiges Arbeitsmaven-Projekt, das in einem Steg eingesetzt werden kann. – thekosmix
TheKosmix, vielen Dank. Ich werde das überprüfen. FB Messenger Bot-Integration erwies sich als viel einfacher als Kik oder Skype! Wer würde thunk? –