public function createMessage($deviceTokens = [])
    {
        $message = new Message();
        if (is_string($deviceTokens)) {
            $deviceTokens = [$deviceTokens];
        }
        if (!is_array($deviceTokens)) {
            throw new InvalidParamException("\$deviceTokens must be string or array");
        }
        foreach ($deviceTokens as $token) {
            $message->addRecipient($this->createDevice($token));
        }
        return $message;
    }