docs: def xmlrpc_notify(self, app_id, token_or_token_list, aps_dict_or_list):
      """ Sends push notifications to the Apple APNS server. Multiple 
      notifications can be sent by sending pairing the token/notification
      arguments in lists [token1, token2], [notification1, notification2].
      
        Arguments:
            app_id                provisioned app_id to send to
            token_or_token_list   token to send the notification or a list of tokens
            aps_dict_or_list      notification dicts or a list of notifications
        Returns:
            None
      """
      d = self.apns_service(app_id).write(
        encode_notifications(
          [t.replace(' ', '') for t in token_or_token_list] 
            if (type(token_or_token_list) is list)
            else token_or_token_list.replace(' ', ''),
          aps_dict_or_list))
      if d:
        def _finish_err(r):
          # so far, the only error that could really become of this
          # request is a timeout, since APNS simply terminates connectons
          # that are made unsuccessfully, which twisted will try endlessly
          # to reconnect to, we timeout and notifify the client
          raise xmlrpc.Fault(500, 'Connection to the APNS server could not be made.')
        return d.addCallbacks(lambda r: None, _finish_err)