Class: ChatSDK::WhatsApp::EventParser
- Inherits:
-
Object
- Object
- ChatSDK::WhatsApp::EventParser
- Defined in:
- lib/chat_sdk/whatsapp/event_parser.rb
Class Method Summary collapse
Class Method Details
.parse(payload, phone_number_id) ⇒ Object
7 8 9 10 11 12 13 14 15 16 |
# File 'lib/chat_sdk/whatsapp/event_parser.rb', line 7 def parse(payload, phone_number_id) return [] unless payload.is_a?(Hash) return [] unless payload["object"] == "whatsapp_business_account" (payload["entry"] || []) .flat_map { |entry| entry["changes"] || [] } .select { |change| change["field"] == "messages" } .flat_map { |change| change.dig("value", "messages") || [] } .filter_map { |msg| (msg, phone_number_id) } end |