我一直在寻找针对Eventbrite的Webhook Listeners示例。我的目标是将其实现到amazon api网关和lambda中。我已经看过许多配置网关的教程,但没有为eventbrite提供示例代码。
有没有人有这个呢?
答案 0 :(得分:0)
我也在寻找类似的东西,我在这篇文章中偶然发现了,我认为这可能是一个很好的起点:https://developers.exlibrisgroup.com/blog/Hosting-a-Webhook-Listener-in-AWS
它没有具体介绍如何创建Eventbrite webhook监听器,但它应该足以让您入门。
答案 1 :(得分:0)
去年我实际上创建了一个PHP监听器,它接受了参与者更新事件并执行了查找以获取更新的与会者信息。我使用了一个API框架,所以我只会给你一些你可以转置用于Lambda的最重要的部分:
//Assuming $body is the webhook payload
$url = $body['api_url'];
$arr = explode('/',rtrim(substr($url,strpos($url,'events/')),'/'));
for($i=0; $i<count($arr); $i+=2) {
$parts[$arr[$i]] = $arr[$i+1];
}
使用eventbrite/eventbrite-sdk-php我创建了一个包装类:
class Eventbrite {
const OAUTH_TOKEN = '(TOKEN)';
function __construct() {
$this->Client = new \HttpClient(self::OAUTH_TOKEN);
}
public function get_attendee($event = '(DEFAULT EVENT ID)',$id) {
$path = "/events/".$event."/attendees/".$id."/";
return $this->Client->get($path);
//return array($path);
}
public function get_order($order) {
$path = "/orders/".$order;
return $this->Client->get($path);
}
}
然后使用$parts
数组:
$Eventbrite = new Eventbrite();
$attendee = $Eventbrite->get_attendee($parts['events'],$parts['attendees']);
然后,您可以在$attendee
数组中获取所有与会者的注册信息,状态等,例如: $attendee['profile']['first_name']
。