protected function sendOneSignal(): ?array 	{ 		if (!setting('onesignal_app_id')) { 			return null; 		}  		$filters = [];  		$data = [ 			'headings' => [ 				'en' => $this->notification->title, 			], 			'contents' => [ 				'en' => $this->notification->body, 			], 			'data' => $this->notification->resourceArray(), 		];  		if ($this->notification->shouldIncludeUrlParam()) { 			$data['url'] = $this->notification->url; 		}  		if ($this->notification->scheduled_at > now()) { 			$data['send_after'] = $this->notification->scheduled_at; 		}  		if ($this->notification->collapse_id) { 			$data['collapse_id'] = $this->notification->collapse_id; 		}  		foreach (($this->notification->countries ?? []) as $country) { 			$filters[] = ['field' => 'country', 'relation' => '=', 'value' => $country]; 			$filters[] = ['operator' => 'OR']; 		}  		if ($this->notification->radius) { 			$filters[] = ['field' => 'location', 'radius' => $this->notification->radius, 'lat' => $this->notification->location_lat, 'long' => $this->notification->location_lng]; 		}  		if (empty($filters)) { 			$data['include_player_ids'] = $this->notification->getTargets(); 		} else { 			$data['filters'] = $filters; 		}  		$onesignal = new OneSignalHandler; 		$onesignal = $onesignal->addNotification($data);  		if (!isset($onesignal['id'])) { 			return null; 		}  		$this->notification->update([ 			'external_id' => $onesignal['id'], 		]);  		return $onesignal; 	}